يعتمد هذا العرض التوضيحي على موقع Learn Microsoft الإلكتروني
ستتوفر بعض دفاتر ملاحظات jupyter الأخرى في المستودع لإظهار كيفية استخدام المساعدين بطريقة أكثر تعقيدًا.
سيستخدم هذا العرض التوضيحي لغة python ومكتبة openAi وazure لإنشاء مساعد لاستخدامه في دفتر ملاحظات jupyter.
إذا كنت ترغب في الاختبار مباشرة في Azure Ai studio، فمن هنا Azure OpenAi studio
توثيق لاستوديو Azure Ai
يمكن للمساعد (أو العديد ممن يمكنهم العمل معًا!) تنفيذ مجموعة واسعة من المهام، مثل الإجابة على الأسئلة وتقديم التوصيات وتنفيذ الأوامر بمساعدة الأدوات.
يمكن أن يكون لدى المساعد بعض الأدوات:
يمكنك استخدام المساعدين لإنشاء مجموعة واسعة من التطبيقات، مثل برامج الدردشة الآلية والوكلاء الظاهريين والمزيد.
من الواضح أنه يمكنك إنشاء بعض المساعدين في بضعة أسطر من التعليمات البرمجية باستخدام أداة (أدوات) لإنشاء سلسلة من سلاسل الرسائل من أجل معالجة سؤال أو طلب من المستخدم. سيأخذ المساعد الأداة الصحيحة للطلب حسب طلب المستخدم.
في نفس الفكرة، يمكنك استخدام نموذج مختلف حسب المساعد للحصول على استجابة أفضل أو للحد من تكلفة المساعد
يمكنك إنشاء عدة مساعدين بأدوات مختلفة في مؤشر ترابط واحد (غير متزامن أو غير متزامن) لحل مشكلة أو لإعطاء استجابة لمستخدم، كما يمكن أن يكون لديك سلاسل رسائل مختلفة مع مساعدين مختلفين
يعمل مؤشر الترابط متعدد المساعد مع استدعاءات الوظائف المتوازية
في النهاية، باستخدام هذه المكتبة، ستسترد الاستجابة بتنسيق json، وهو تنسيق سهل الاستخدام في لغة python وإجراء بعض العمليات عليه.
لإنشاء تنسيق للمساعد، سيتعين عليك إدارة ما يلي:
العرض التوضيحي الأول في جذر المستودع هو مساعد بسيط يعتمد على وثائق Microsoft.
AoaiAssistant.ipynb
سيناريو الاسم | دفتر الوصف | وصلة |
---|---|---|
مساعد حل الرياضيات | مساعد واحد مع مترجم الكود فقط كأداة | AoaiAssistant.ipynb |
ستحتاج إذا كنت تريد اختبار الكمبيوتر المحمول باللغة المحلية:
بيثون 3.8 أو الأحدث
كود الاستوديو المرئي والمكونات الإضافية:
اشتراك Azure - 200 دولار للاشتراك الأول
الوصول إلى خدمة Azure OpenAi اطلب الوصول إلى AOAI
الوصول إلى أحدث طراز gpt4 0125 (متوفر فعليًا في وسط السويد وغرب الولايات المتحدة وشرق اليابان)
نماذج أخرى متوافقة مع ميزة الوكلاء
انشر الخدمة في Portal azure لخدمة Azure open Ai في المنطقة وفقًا لذلك
قم بنشر النموذج في استوديو Ai لخدمة azure openAi، وقم بإعطاء اسم للنشر
أو
Codespace لاستخدام دفتر الملاحظات في السحابة مع Github
بالنسبة لاسم نشر النموذج (لقد أعطيت اسمًا بشكل طبيعي والذي قد يكون مختلفًا عن اسم النموذج عندما قمت بنشره) في Azure Ai studio، يمكنك العثور عليه في قسم النشر الخاص بالنموذج إذا لم تقم بذلك لا أذكر ذلك
يجب عليك تعديل المعلومات الموجودة في Secrets_env المعاد تسميتها في Secrets.env بشكل صحيح
يمكن العثور على نقطة النهاية azure والمفتاح azure لخدمة Open Ai في بوابة/اشتراك azure الخاص بك أو مباشرة في فئة المحادثة في Ai studio، مع تحديد النموذج والنقر على رمز الزر في الخطوة الأولى وبعد ذلك سيكون عليك الضغط على زر "إظهار السر" للحصول على المفتاح ويتم عرض نقطة النهاية في رمز المثال
سيتعين عليك النقر فوق كل خطوة من خطوات التعليمات البرمجية عن طريق زر التشغيل الموجود على يسار كل خلية
لا توجد أخطاء ستحصل عليها في الخلية الأخيرة لتفريغ json هذا مع النتيجة وجميع المعلومات التي تم جمعها
عندما تكون جاهزًا، يمكنك اتباع الخطوات الموجودة في دفتر AzureAOAI.ipynb
في حالتي، تم تسمية النموذج الخاص بي لـ gpt4-1106 باسم gpt-4turbo
يمكنك الآن استخدام Python Notebook في كود الاستوديو المرئي (أو داخل متصفح به مساحة كود) إذا كنت تريد إجراء بعض العمليات على النتيجة أو بعض التنسيق مع نتيجة المساعد:
هل قمت بإنشاء مساعد؟ هل تريد أن تفهم كيفية إدارة المواضيع والرسائل؟
أولاً، قم بإلقاء نظرة على الوثائق لفهمها وابدأ بالمساعدين
إنه يحترم تدفقًا محددًا لإنشاء سلسلة رسائل وإدارة الرسالة في سلسلة رسائل.
مخطط تسلسل
المشارك أ كمساعد الإنشاء
المشارك ب كإنشاء موضوع
المشارك C كإنشاء رسالة المستخدم
المشارك D كتنفيذ الموضوع
المشارك E كاسترداد حالة التشغيل
المشارك F كحلقة التحقق من الحالة
المشارك G لاسترجاع الرسائل
أ->>ب: إنشاء مساعد باستخدام النموذج
ب->>ج: إنشاء موضوع
C->>D: إضافة رسالة مستخدم إلى الموضوع
D->>E: تنفيذ الموضوع
E->>F: استرداد حالة التشغيل
F->>F: قم بالتكرار حتى تصبح الحالة نهائية
F-->>G: الحالة: مكتمل
لاحظ يمين G: جلب الرسائل وعرضها
F-->>أ: الحالة: تم الإلغاء
F-->>أ: الحالة: منتهية الصلاحية
F-->>أ: الحالة: فشل
{
"data" : [
{
"id" : " msg_5Oc2nmN7boHKfYuJaOnxkYrQ " ,
"assistant_id" : " asst_vid43QSBUFAVr7f7nraAwfkS " , // the id of the assistant
"content" : [
{
"text" : {
"annotations" : [],
"value" : " The solution to the equation \ (3x + 11 = 14 \ ) is \ (x = 1 \ ). " // the result of the assistant
},
"type" : " text "
}
],
"created_at" : 1706827368 ,
"file_ids" : [],
"metadata" : {},
"object" : " thread.message " ,
"role" : " assistant " ,
"run_id" : " run_VlCTYceNmV8HlQyOLQUe7Xj6 " ,
"thread_id" : " thread_KM402gTevvYxlfxYA1ONQPHP "
},
{
"id" : " msg_ZHWVk1gJT292L4YJzlbLjmFq " ,
"assistant_id" : null ,
"content" : [
{
"text" : {
"annotations" : [],
"value" : " I need to solve the equation `3x + 11 = 14`. Can you help me? " // the rquest of the user
},
"type" : " text "
}
],
"created_at" : 1706827327 ,
"file_ids" : [],
"metadata" : {},
"object" : " thread.message " ,
"role" : " user " ,
"run_id" : null ,
"thread_id" : " thread_KM402gTevvYxlfxYA1ONQPHP " // id of the thread
}
],
"object" : " list " ,
"first_id" : " msg_5Oc2nmN7boHKfYuJaOnxkYrQ " , // the id of the first message - request user
"last_id" : " msg_ZHWVk1gJT292L4YJzlbLjmFq " , // Last message of the thread
"has_more" : false
}
تقوم أدوات مترجم الكود بالتحويل إلى كود بايثون. في حالة الاستخدام هذه، إذا كنت تريد التحقق من حل المساعد لمشكلة الرياضيات باستخدام مكتبة مخصصة مثل Sympy أو numpy
يتم استخراج معلومات الأطروحات من مكتبة openAi في مكتبة python python openai
code_interpreter
أو retrieval
أو function
.