أداة Python
تتيح لك أداة Python تقديم قصاصات برمجية مخصصة كعقد قابلة للتنفيذ قائمة بذاتها في تدفق المطالبة. يمكنك بسهولة إنشاء أدوات Python وتحرير التعليمات البرمجية والتحقق من النتائج.
الإدخالات
Name | كتابة | الوصف | مطلوب |
---|---|---|---|
الرمز | سلسلة | قصاصة برمجية Python | نعم |
الإدخالات | - | قائمة معلمات دالة الأداة وتعييناتها | - |
الأنواع
نوع | مثال Python | الوصف |
---|---|---|
العدد الصحيح | param: int | نوع العدد الصحيح |
منطقي | param: bool | النوع المنطقي |
سلسلة | param: str | نوع السلسلة |
مزدوج | param: float | نوع مزدوج |
قائمة | param: list or param: List[T] | نوع القائمة |
كائن | param: dict أو param: Dict[K, V] | نوع الكائن |
Connection | param: Custom الاتصال ion | تتم معالجة نوع الاتصال بشكل خاص |
يتم التعامل مع المعلمات ذات Connection
التعليق التوضيحي للنوع على أنها مدخلات اتصال، ما يعني:
- يعرض ملحق تدفق المطالبة محددا لتحديد الاتصال.
- أثناء وقت التنفيذ، يحاول تدفق المطالبة العثور على الاتصال بنفس الاسم من قيمة المعلمة التي تم تمريرها.
إشعار
يتم اعتماد التعليق التوضيحي للنوع فقط لنوع الاتصال، على سبيل المثال، param: Union[CustomConnection, OpenAIConnection]
.Union[...]
الإخراجات
المخرجات هي إرجاع دالة أداة Python.
الكتابة باستخدام أداة Python
استخدم الإرشادات التالية للكتابة باستخدام أداة Python.
المبادئ التوجيهيه
يجب أن تتكون التعليمات البرمجية لأداة Python من تعليمة Python البرمجية الكاملة، بما في ذلك أي استيراد للوحدة النمطية الضرورية.
يجب أن تحتوي التعليمة البرمجية لأداة Python على دالة مزينة ب
@tool
(دالة الأداة)، والتي تعمل كنقطة إدخال للتنفيذ.@tool
تطبيق مصمم الديكور مرة واحدة فقط داخل القصاصة البرمجية.تحدد العينة في القسم التالي أداة
my_python_tool
Python ، التي تم تزيينها ب@tool
.يجب تعيين معلمات دالة أداة Python في
Inputs
القسم .يحدد النموذج في القسم التالي الإدخال
message
ويعينهworld
.دالة أداة Python لها إرجاع.
ترجع العينة الموجودة في القسم التالي سلسلة مسلسلة.
الرمز
تعرض القصاصة البرمجية التالية البنية الأساسية لدالة أداة. يقرأ تدفق المطالبة الدالة ويستخرج المدخلات من معلمات الدالة ويكتب التعليقات التوضيحية.
from promptflow import tool
from promptflow.connections import CustomConnection
# The inputs section will change based on the arguments of the tool function, after you save the code
# Adding type to arguments and return value will help the system show the types properly
# Please update the function name/signature per need
@tool
def my_python_tool(message: str, my_conn: CustomConnection) -> str:
my_conn_dict = dict(my_conn)
# Do some function call with my_conn_dict...
return 'hello ' + message
الإدخالات
Name | نوع | نموذج القيمة في تدفق YAML | القيمة التي تم تمريرها إلى الدالة |
---|---|---|---|
رسالة | سلسلة | world |
world |
my_conn | CustomConnection |
my_conn |
CustomConnection العنصر |
يحاول تدفق المطالبة العثور على الاتصال المسمى my_conn
أثناء وقت التنفيذ.
الإخراجات
"hello world"
اتصال مخصص في أداة Python
إذا كنت تقوم بتطوير أداة Python تتطلب استدعاء الخدمات الخارجية مع المصادقة، فاستخدم الاتصال المخصص في تدفق المطالبة. يمكنك استخدامه لتخزين مفتاح الوصول بأمان ثم استرداده في التعليمات البرمجية ل Python.
إنشاء اتصال مخصص
إنشاء اتصال مخصص يخزن كل مفتاح API لنموذج اللغة الكبيرة أو بيانات الاعتماد المطلوبة الأخرى.
انتقل إلى تدفق المطالبة في مساحة العمل، ثم انتقل إلى علامة التبويب الاتصال.
حدد إنشاء>مخصص.
في الجزء الأيسر، يمكنك تعريف اسم الاتصال الخاص بك. يمكنك إضافة أزواج متعددة من قيم المفاتيح لتخزين بيانات الاعتماد والمفاتيح عن طريق تحديد Add key-value pairs.
إشعار
لتعيين زوج واحد من قيم المفاتيح كبيانات سرية، حدد خانة الاختيار is secret . يقوم هذا الخيار بتشفير وتخزين قيمة المفتاح. تأكد من تعيين زوج واحد على الأقل من قيم المفاتيح كبيانات سرية. وإلا، فلن يتم إنشاء الاتصال بنجاح.
استخدام اتصال مخصص في Python
لاستخدام اتصال مخصص في التعليمات البرمجية ل Python:
في قسم التعليمات البرمجية في عقدة Python، قم باستيراد مكتبة
from promptflow.connections import CustomConnection
الاتصال المخصصة . تعريف معلمة إدخال من النوعCustomConnection
في دالة الأداة.قم بتحليل الإدخال إلى قسم الإدخال، ثم حدد الاتصال المخصص المستهدف في القائمة المنسدلة Value .
على سبيل المثال:
from promptflow import tool
from promptflow.connections import CustomConnection
@tool
def my_python_tool(message: str, myconn: CustomConnection) -> str:
# Get authentication key-values from the custom connection
connection_key1_value = myconn.key1
connection_key2_value = myconn.key2
الملاحظات
https://aka.ms/ContentUserFeedback.
قريبًا: خلال عام 2024، سنتخلص تدريجيًا من GitHub Issues بوصفها آلية إرسال ملاحظات للمحتوى ونستبدلها بنظام ملاحظات جديد. لمزيد من المعلومات، راجعإرسال الملاحظات وعرضها المتعلقة بـ