البرنامج التعليمي: إنشاء ونشر سؤال وإجابة copilot مع تدفق موجه في Azure الذكاء الاصطناعي Studio

هام

قد تتوفر بعض الميزات الموضحة في هذه المقالة فقط في المعاينة. يتم توفير هذه المعاينة دون اتفاقية على مستوى الخدمة، ولا نوصي بها لأحمال عمل الإنتاج. بعض الميزات ربما لا تكون مدعمة أو بها بعض القدرات المقيدة. لمزيد من المعلومات، راجع ⁧⁩شروط الاستخدام التكميلية لمعاينات Microsoft Azure⁧⁩.

في هذا البرنامج التعليمي Azure الذكاء الاصطناعي Studio ، يمكنك استخدام الذكاء الاصطناعي التوليدية والتدفق السريع لإنشاء وتكوين ونشر copilot لشركة البيع بالتجزئة الخاصة بك تسمى Contoso. شركة البيع بالتجزئة الخاصة بك متخصصة في معدات التخييم في الهواء الطلق والملابس.

يجب أن يجيب copilot على أسئلة حول منتجاتك وخدماتك. يجب أن يجيب أيضا على الأسئلة حول عملائك. على سبيل المثال، يمكن أن يجيب copilot عن أسئلة مثل "كم تكلفة أحذية تريل ووكر للمشي لمسافات طويلة؟" و"كم عدد أحذية المشي لمسافات طويلة التي اشتراها دانيال ويلسون؟".

الخطوات الواردة في هذا البرنامج التعليمي هي:

  1. أضف بياناتك إلى ملعب الدردشة.
  2. إنشاء تدفق موجه من الملعب.
  3. تخصيص تدفق المطالبة باستخدام مصادر بيانات متعددة.
  4. تقييم التدفق باستخدام مجموعة بيانات تقييم الأسئلة والأجوبة.
  5. انشر التدفق للاستهلاك.

المتطلبات الأساسية

إضافة بياناتك وتجربة نموذج الدردشة مرة أخرى

في التشغيل السريع لملعب الذكاء الاصطناعي Studio (هذا شرط أساسي لهذا البرنامج التعليمي)، يمكنك مراقبة كيفية استجابة النموذج الخاص بك دون بياناتك. الآن يمكنك إضافة بياناتك إلى النموذج لمساعدته على الإجابة عن الأسئلة حول منتجاتك.

لإكمال هذا القسم، تحتاج إلى نسخة محلية من بيانات المنتج. يحتوي مستودع Azure-Samples/aistudio-python-quickstart-sample على GitHub على نموذج عميل البيع بالتجزئة ومعلومات المنتج ذات الصلة بسيناريو البرنامج التعليمي هذا. انسخ المستودع أو انسخ الملفات من 3-product-info.

هام

لا تدعم ميزة إضافة البيانات في ملعب Azure الذكاء الاصطناعي Studio استخدام شبكة ظاهرية أو نقطة نهاية خاصة على الموارد التالية:

  • خدمة الذكاء الاصطناعي Azure AI Search
  • Azure OpenAI
  • مورد التخزين

اتبع هذه الخطوات لإضافة بياناتك في ملعب الدردشة لمساعدة المساعد على الإجابة على الأسئلة حول منتجاتك. أنت لا تغير النموذج المنشور نفسه. يتم تخزين بياناتك بشكل منفصل وآمن في اشتراك Azure الخاص بك.

  1. انتقل إلى مشروعك في Azure الذكاء الاصطناعي Studio.

  2. حدد Playgrounds>Chat من الجزء الأيمن.

  3. حدد نموذج الدردشة المنشورة من القائمة المنسدلة Deployment .

    لقطة شاشة لملعب الدردشة مع تحديد وضع الدردشة والنموذج.

  4. على الجانب الأيسر من ملعب الدردشة، حدد إضافة بياناتك>+ إضافة مصدر بيانات جديد.

    لقطة شاشة لملعب الدردشة مع خيار إضافة مصدر بيانات مرئي.

  5. في القائمة المنسدلة Data source ، حدد Upload files.

    لقطة شاشة لخيارات تحديد مصدر البيانات.

  6. حدد تحميل>ملفات التحميل لاستعراض الملفات المحلية.

  7. حدد الملفات التي تريد تحميلها. حدد ملفات معلومات المنتج (3-product-info) التي قمت بتنزيلها أو إنشاؤها مسبقا. أضف جميع الملفات الآن. لن تتمكن من إضافة المزيد من الملفات لاحقا في نفس جلسة الملعب.

  8. حدد تحميل لتحميل الملف إلى حساب تخزين Azure Blob. بعد ذلك حدد التالي.

    لقطة شاشة لمربع الحوار لتحديد الملفات وتحميلها.

  9. حدد azure الذكاء الاصطناعي خدمة البحث. في هذا المثال، نحدد الاتصال مورد Azure الذكاء الاصطناعي Search آخر من القائمة المنسدلة Select Azure الذكاء الاصطناعي خدمة البحث. إذا لم يكن لديك مورد بحث، يمكنك إنشاء مورد عن طريق تحديد Create a new Azure الذكاء الاصطناعي Search resource. ثم ارجع إلى هذه الخطوة للاتصال وتحديدها.

    لقطة شاشة لخيارات تحديد مورد البحث.

  10. استعرض بحثا عن الذكاء الاصطناعي خدمة البحث Azure، وحدد إضافة اتصال.

    لقطة شاشة للصفحة لإضافة اتصال خدمة بحث.

  11. بالنسبة إلى اسم الفهرس، أدخل معلومات المنتج وحدد التالي.

  12. في صفحة إعدادات البحث ضمن إعدادات المتجه، قم بإلغاء تحديد خانة الاختيار إضافة بحث متجه إلى مورد البحث هذا. يساعد هذا الإعداد في تحديد كيفية استجابة النموذج للطلبات. بعد ذلك حدد التالي.

    إشعار

    إذا قمت بإضافة بحث متجه، فستتوفر المزيد من الخيارات هنا لتكلفة إضافية.

  13. راجع إعدادتك وحدد إنشاء.

  14. في الملعب، يمكنك أن ترى أن استيعاب البيانات قيد التقدم. قد تستغرق هذه العملية عدة دقائق. قبل المتابعة، انتظر حتى ترى مصدر البيانات واسم الفهرس بدلا من الحالة.

    لقطة شاشة لملعب الدردشة مع حالة استيعاب البيانات في العرض.

  15. أدخل اسما لتكوين الملعب وحدد حفظ>تكوين الحفظ. يتم حفظ جميع عناصر التكوين بشكل افتراضي. تتضمن العناصر التوزيع ورسالة النظام والمعلمات والبيانات المضافة والأمثلة والمتغيرات. حفظ تكوين بنفس الاسم سيحفظ على الإصدار السابق.

    لقطة شاشة لاسم تكوين الملعب وزر الحفظ.

  16. يمكنك الآن الدردشة مع النموذج الذي يطرح نفس السؤال كما كان من قبل ("كم هي أحذية المشي لمسافات طويلة ل TrailWalker")، وهذه المرة يستخدم معلومات من بياناتك لإنشاء الاستجابة. يمكنك توسيع زر المراجع لمشاهدة البيانات التي تم استخدامها.

إنشاء تدفق موجه من الملعب

الآن قد تسأل "كيف يمكنني تخصيص هذا copilot أكثر؟" قد تحتاج إلى إضافة مصادر بيانات متعددة، أو مقارنة مطالبات مختلفة أو أداء نماذج متعددة. يعمل تدفق المطالبة كسير عمل قابل للتنفيذ يبسط تطوير تطبيق الذكاء الاصطناعي المستند إلى LLM. يوفر إطار عمل شاملا لإدارة تدفق البيانات ومعالجتها داخل التطبيق الخاص بك.

في هذا القسم، ستتعلم كيفية الانتقال إلى التدفق السريع من الملعب. يمكنك تصدير بيئة دردشة الملعب بما في ذلك الاتصالات بالبيانات التي أضفتها. لاحقا في هذا البرنامج التعليمي، يمكنك تقييم التدفق ثم نشر التدفق للاستهلاك.

إشعار

لا يتم تطبيق التغييرات التي تم إجراؤها في تدفق المطالبة للخلف لتحديث بيئة الملعب.

يمكنك إنشاء تدفق موجه من الملعب باتباع الخطوات التالية:

  1. إذا لم تكن بالفعل في ملعب Azure الذكاء الاصطناعي Studio ، فحدد Build من القائمة العلوية ثم حدد Playground من القائمة اليمنى القابلة للطي.

  2. حدد فتح في تدفق المطالبة من القائمة أعلى جزء جلسة الدردشة .

  3. أدخل اسم مجلد لتدفق المطالبة. ثم حدد فتح. يقوم Azure الذكاء الاصطناعي Studio بتصدير بيئة دردشة الملعب بما في ذلك الاتصالات ببياناتك لمطالبة التدفق.

    لقطة شاشة لمربع حوار فتح في تدفق المطالبة.

ضمن التدفق، تأخذ العقد مركز الصدارة، تمثل أدوات محددة ذات قدرات فريدة. تعالج هذه العقد معالجة البيانات وتنفيذ المهام والعمليات الخوارزمية، مع المدخلات والمخرجات. من خلال ربط العقد، يمكنك إنشاء سلسلة سلسة من العمليات التي توجه تدفق البيانات من خلال التطبيق الخاص بك. لمزيد من المعلومات، راجع أدوات تدفق المطالبة.

لتسهيل تكوين العقدة وضبطها، يتم توفير تمثيل مرئي لبنية سير العمل من خلال رسم بياني DAG (Directed Acyclic Graph). يعرض هذا الرسم البياني الاتصال والتبعيات بين العقد، ما يوفر نظرة عامة واضحة على سير العمل بأكمله. العقد في الرسم البياني الموضحة هنا تمثل تجربة دردشة الملعب التي قمت بتصديرها إلى تدفق المطالبة.

لقطة شاشة للرسم البياني الافتراضي الذي تم تصديره من الملعب لتدفق المطالبة.

تحذير

Azure الذكاء الاصطناعي Studio قيد المعاينة ويخضع للتغيير. قد لا تتطابق لقطات الشاشة والإرشادات الواردة في هذا البرنامج التعليمي مع التجربة الحالية.

يمكن إضافة العقد أو تحديثها أو إعادة ترتيبها أو إزالتها. تتضمن العقد في تدفقك في هذه المرحلة ما يلي:

  • DetermineIntent: تحدد هذه العقدة هدف استعلام المستخدم. يستخدم مطالبة النظام لتحديد الهدف. يمكنك تحرير مطالبة النظام لتوفير أمثلة قليلة محددة للسيناريو.
  • ExtractIntent: تقوم هذه العقدة بتنسيق إخراج عقدة DetermineIntent وإرسالها إلى عقدة RetrieveDocuments .
  • استرداد المستندات: تبحث هذه العقدة عن أهم المستندات المتعلقة بالاستعلام. تستخدم هذه العقدة نوع البحث وأي معلمات قمت بتكوينها مسبقا في الملعب.
  • FormatRetrievedDocuments: تنسق هذه العقدة إخراج عقدة RetrieveDocuments وترسلها إلى عقدة DetermineReply .
  • DetermineReply: تحتوي هذه العقدة على مطالبة نظام شاملة، والتي تطلب من LLM الاستجابة باستخدام المستندات المستردة فقط. هناك إدخالان:
    • توفر عقدة RetrievDocuments أهم المستندات التي تم استردادها.
    • توفر عقدة FormatConversation محفوظات المحادثات المنسقة بما في ذلك أحدث استعلام.

تنسق عقدة FormatReply إخراج عقدة DetermineReply .

في تدفق المطالبة، يجب أن ترى أيضا:

  • حفظ: يمكنك حفظ تدفق المطالبة في أي وقت عن طريق تحديد حفظ من القائمة العلوية. تأكد من حفظ تدفق المطالبة بشكل دوري أثناء إجراء التغييرات في هذا البرنامج التعليمي.

  • جلسة الحساب.: جلسة الحساب التي قمت بإنشائها [سابقا في هذا البرنامج التعليمي](#create-compute-and-compute session-that-are-needed-for-prompt-flow). يمكنك بدء جلسات الحساب وإيقافها واحوسبة المثيلات عبر إعدادات Project في القائمة اليمنى. للعمل في تدفق المطالبة، تأكد من أن جلسة الحساب في حالة قيد التشغيل .

    لقطة شاشة لمحرر تدفق المطالبة والقوائم المحيطة.

  • الأدوات: يمكنك العودة إلى تدفق المطالبة في أي وقت عن طريق تحديد تدفق المطالبة من الأدوات في القائمة اليمنى. ثم حدد مجلد تدفق المطالبة الذي قمت بإنشائه سابقا (وليس نموذج التدفق).

    لقطة شاشة لقائمة تدفقات المطالبة.

تخصيص تدفق المطالبة باستخدام مصادر بيانات متعددة

في وقت سابق في ملعب Azure الذكاء الاصطناعي Studio ، أضفت بياناتك لإنشاء فهرس بحث واحد يحتوي على بيانات المنتج ل Contoso copilot. حتى الآن، يمكن للمستخدمين الاستعلام فقط عن المنتجات مع أسئلة مثل "كم تكلفة الأحذية المشي لمسافات طويلة تريل ووكر؟". لكنهم لا يستطيعون الحصول على إجابات لأسئلة مثل "كم حذاء تريل ووكر المشي لمسافات طويلة اشترى دانيال ويلسون؟" لتمكين هذا السيناريو، نضيف فهرسا آخر مع معلومات العميل إلى التدفق.

إنشاء فهرس معلومات العميل

تحتاج إلى نسخة محلية من مثال معلومات العميل. لمزيد من المعلومات والارتباطات إلى بيانات المثال، راجع المتطلبات الأساسية.

اتبع هذه الإرشادات حول كيفية إنشاء فهرس جديد:

  1. حدد Index من القائمة اليسرى. ثم حدد + فهرس جديد.

    لقطة شاشة لصفحة الفهارس مع الزر لإنشاء فهرس جديد.

    يتم نقلك إلى معالج إنشاء فهرس .

  2. في صفحة Source data ، حدد Upload files من القائمة المنسدلة Data source . ثم حدد تحميل>مجلد التحميل لاستعراض ملفاتك المحلية.

  3. حدد ملفات معلومات العميل التي قمت بتنزيلها أو إنشاؤها مسبقا. راجع المتطلبات الأساسية. بعد ذلك حدد التالي.

    لقطة شاشة لخيارات تحديد مصدر بيانات العميل.

  4. حدد نفس اتصال Azure الذكاء الاصطناعي خدمة البحث (contosooutdooraisearch) الذي استخدمته لفهرس معلومات المنتج. بعد ذلك حدد التالي.

  5. أدخل customer-info لاسم الفهرس.

    لقطة شاشة الذكاء الاصطناعي خدمة البحث Azure واسم الفهرس.

  6. حدد جهازا ظاهريا لتشغيل مهام الفهرسة. الخيار الافتراضي هو تحديد تلقائي. بعد ذلك حدد التالي.

  7. في صفحة إعدادات البحث ضمن إعدادات المتجه، قم بإلغاء تحديد خانة الاختيار إضافة بحث متجه إلى مورد البحث هذا. يساعد هذا الإعداد في تحديد كيفية استجابة النموذج للطلبات. بعد ذلك حدد التالي.

    إشعار

    إذا قمت بإضافة بحث متجه، فستتوفر المزيد من الخيارات هنا لتكلفة إضافية.

  8. راجع التفاصيل التي أدخلتها، وحدد إنشاء.

    لقطة شاشة لصفحة إنشاء الفهرس للمراجعة والانتهاء.

    إشعار

    يمكنك استخدام فهرس معلومات العميل واتصال contosooutdooraisearch ب Azure الذكاء الاصطناعي خدمة البحث في تدفق المطالبة لاحقا في هذا البرنامج التعليمي. إذا كانت الأسماء التي تدخلها تختلف عما هو محدد هنا، فتأكد من استخدام الأسماء التي أدخلتها في بقية البرنامج التعليمي.

  9. يتم نقلك إلى صفحة تفاصيل الفهرس حيث يمكنك رؤية حالة إنشاء الفهرس.

    لقطة شاشة توضح تفاصيل فهرس معلومات العميل.

لمزيد من المعلومات حول كيفية إنشاء فهرس، راجع إنشاء فهرس.

إنشاء جلسات حساب مطلوبة لتدفق المطالبة

يمكنك استخدام تدفق المطالبة لتحسين الرسائل التي يتم إرسالها إلى نموذج دردشة copilot. يتطلب تدفق المطالبة مثيل حساب وجلسة حساب. لإنشاء مثيل حساب وجلسة حساب، اتبع الخطوات في كيفية إنشاء جلسة حساب.

لإكمال بقية البرنامج التعليمي، تأكد من أن جلسة الحساب الخاصة بك في حالة التشغيل . قد تحتاج إلى تحديد Refresh لمشاهدة الحالة المحدثة.

هام

تتم محاسبتك على مثيلات الحوسبة أثناء تشغيلها. لتجنب تكبد تكاليف Azure غير الضرورية، أوقف مثيل الحساب مؤقتا عندما لا تعمل بنشاط في تدفق المطالبة. لمزيد من المعلومات، راجع كيفية بدء الحساب وإيقافه.

إضافة معلومات العميل إلى التدفق

تحذير

Azure الذكاء الاصطناعي Studio قيد المعاينة ويخضع للتغيير. قد لا تتطابق لقطات الشاشة والإرشادات الواردة في هذا البرنامج التعليمي مع التجربة الحالية.

بعد الانتهاء من إنشاء الفهرس، ارجع إلى تدفق المطالبة واتبع هذه الخطوات لإضافة معلومات العميل إلى التدفق:

  1. حدد عقدة RetrieveDocuments من الرسم البياني وأعد تسميتها RetrieveProductInfo. الآن يمكن تمييز عقدة استرداد معلومات المنتج عن عقدة استرداد معلومات العميل التي تضيفها إلى التدفق.

    لقطة شاشة لعقدة تدفق المطالبة لاسترداد معلومات المنتج.

  2. حدد + Python من القائمة العلوية لإنشاء عقدة Python جديدة تستخدم لاسترداد معلومات العميل.

    لقطة شاشة لعقدة تدفق المطالبة لاسترداد معلومات العميل.

  3. قم بتسمية العقدة RetrieveCustomerInfo وحدد Add.

  4. انسخ والصق تعليمة Python البرمجية من عقدة RetrieveProductInfo في عقدة RetrieveCustomerInfo لاستبدال جميع التعليمات البرمجية الافتراضية.

  5. حدد الزر Validate and parse input للتحقق من صحة المدخلات لعقدة RetrieveCustomerInfo. إذا كانت المدخلات صالحة، فإن تدفق المطالبة يوزع المدخلات وينشئ المتغيرات الضرورية لاستخدامها في التعليمات البرمجية الخاصة بك.

    لقطة شاشة لزر الإدخال التحقق من الصحة وتحليله.

  6. قم بتحرير مدخلات RetrieveCustomerInfo التي تطالبك بالتدفق الذي تم تحليله لك حتى تتمكن من الاتصال بفهرس معلومات العميل.

    لقطة شاشة للمدخلات لتحريرها في عقدة استرداد معلومات العميل.

    إشعار

    يتم تحديث الرسم البياني مباشرة بعد تعيين قيمة إدخال الاستعلامات إلى ExtractIntent.output.search_intents. في الرسم البياني يمكنك أن ترى أن استردادCustomerInfo يحصل على مدخلات من ExtractIntent.

    المدخلات حساسة لحالة الأحرف، لذا تأكد من تطابقها مع هذه القيم بالضبط:

    Name نوع القيمة‬
    تضمينModel الاتصال Azure OpenAI Default_AzureOpenAI
    تضمينModelName سلسلة بلا
    اسم الفهرس سلسلة معلومات العميل
    الاستعلامات سلسلة ${ExtractIntent.output.search_intents}
    نوع الاستعلام سلسلة بسيطة
    البحث الاتصال خدمة الذكاء الاصطناعي Azure AI Search البحث عن contosooutdooraisearch
    التكوين الدلالي سلسلة بلا
    أعلى K العدد الصحيح 5
  7. حدد حفظ من القائمة العلوية لحفظ التغييرات.

تنسيق المستندات المستردة للإخراج

تحذير

Azure الذكاء الاصطناعي Studio قيد المعاينة ويخضع للتغيير. قد لا تتطابق لقطات الشاشة والإرشادات الواردة في هذا البرنامج التعليمي مع التجربة الحالية.

الآن بعد أن أصبح لديك كل من معلومات المنتج والعميل في تدفق المطالبة، يمكنك تنسيق المستندات التي تم استردادها بحيث يمكن لنموذج اللغة الكبيرة استخدامها.

  1. حدد عقدة FormatRetrievedDocuments من الرسم البياني.

  2. انسخ والصق التعليمات البرمجية ل Python التالية لاستبدال كافة المحتويات في كتلة التعليمات البرمجية FormatRetrievedDocuments .

    from promptflow import tool
    
    @tool
    def format_retrieved_documents(docs1: object, docs2: object, maxTokens: int) -> str:
      formattedDocs = []
      strResult = ""
      docs = [val for pair in zip(docs1, docs2) for val in pair]
      for index, doc in enumerate(docs):
        formattedDocs.append({
          f"[doc{index}]": {
            "title": doc['title'],
            "content": doc['content']
          }
        })
        formattedResult = { "retrieved_documents": formattedDocs }
        nextStrResult = str(formattedResult)
        if (estimate_tokens(nextStrResult) > maxTokens):
          break
        strResult = nextStrResult
    
      return {
              "combined_docs": docs,
              "strResult": strResult
          }
    
    def estimate_tokens(text: str) -> int:
      return (len(text) + 2) / 3
    
  3. حدد الزر Validate and parse input للتحقق من صحة المدخلات لعقدة FormatRetrievedDocuments. إذا كانت المدخلات صالحة، فإن تدفق المطالبة يوزع المدخلات وينشئ المتغيرات الضرورية لاستخدامها في التعليمات البرمجية الخاصة بك.

  4. قم بتحرير إدخالات FormatRetrievedDocuments التي تطالب بتحليل التدفق لك بحيث يمكن استخراج معلومات المنتج والعميل من العقدتين RetrieveProductInfo وRestputCustomerInfo.

    لقطة شاشة للمدخلات لتحريرها بتنسيق عقدة المستندات التي تم استردادها.

    المدخلات حساسة لحالة الأحرف، لذا تأكد من تطابقها مع هذه القيم بالضبط:

    Name نوع القيمة‬
    docs1 كائن ${استردادProductInfo.output}
    docs2 كائن ${استردادCustomerInfo.output}
    الرموز المميزة القصوى العدد الصحيح 5000
  5. حدد عقدة DetermineReply من الرسم البياني.

  6. قم بتعيين إدخال الوثائق إلى ${FormatRetrievedDocuments.output.strResult}.

    لقطة شاشة لتحرير قيمة إدخال الوثائق في عقدة تحديد الرد.

  7. حدد عقدة المخرجات من الرسم البياني.

  8. قم بتعيين الإدخال fetched_docs إلى ${FormatRetrievedDocuments.output.combined_docs}.

    لقطة شاشة لتحرير قيمة إدخال fetched_docs في عقدة المخرجات.

  9. حدد حفظ من القائمة العلوية لحفظ التغييرات.

الدردشة في تدفق المطالبة مع معلومات المنتج والعملاء

الآن لديك كل من معلومات المنتج والعميل في تدفق المطالبة. يمكنك الدردشة مع النموذج في تدفق سريع والحصول على إجابات لأسئلة مثل "كم من أحذية المشي لمسافات طويلة التي اشتراها دانيال ويلسون؟" قبل المتابعة إلى تقييم أكثر رسمية، يمكنك اختياريا الدردشة مع النموذج لمعرفة كيفية استجابته لأسئلتك.

  1. حدد الدردشة من القائمة العلوية في تدفق المطالبة لتجربة الدردشة.

  2. أدخل "كم عدد أحذية تريل ووكر المشي لمسافات طويلة التي اشتراها دانيال ويلسون؟" ثم حدد أيقونة السهم الأيمن لإرسالها.

  3. الاستجابة هي ما تتوقعه. يستخدم النموذج معلومات العميل للإجابة على السؤال.

    لقطة شاشة لرد المساعد مع بيانات أساس المنتج والعميل.

تقييم التدفق باستخدام مجموعة بيانات تقييم الأسئلة والأجوبة

في Azure الذكاء الاصطناعي Studio، تريد تقييم التدفق قبل نشر التدفق للاستهلاك.

في هذا القسم، يمكنك استخدام التقييم المضمن لتقييم تدفقك باستخدام مجموعة بيانات تقييم الأسئلة والأجوبة. يستخدم التقييم المضمن مقاييس بمساعدة الذكاء الاصطناعي لتقييم تدفقك: الأساس والصلة ودرجة الاسترداد. لمزيد من المعلومات، راجع مقاييس التقييم المضمنة.

إنشاء تقييم

تحتاج إلى مجموعة بيانات تقييم الأسئلة والأجوبة التي تحتوي على أسئلة وإجابات ذات صلة بالسيناريو الخاص بك. إنشاء ملف جديد محليا باسم qa-evaluation.jsonl. انسخ وألصق الأسئلة والأجوبة التالية ("truth") في الملف.

{"question": "What color is the CozyNights Sleeping Bag?", "truth": "Red", "chat_history": [], }
{"question": "When did Daniel Wilson order the BaseCamp Folding Table?", "truth": "May 7th, 2023", "chat_history": [] }
{"question": "How much does TrailWalker Hiking Shoes cost? ", "truth": "$110", "chat_history": [] }
{"question": "What kind of tent did Sarah Lee buy?", "truth": "SkyView 2 person tent", "chat_history": [] }
{"question": "What is Melissa Davis's phone number?", "truth": "555-333-4444", "chat_history": [] }
{"question": "What is the proper care for trailwalker hiking shoes?", "truth": "After each use, remove any dirt or debris by brushing or wiping the shoes with a damp cloth.", "chat_history": [] }
{"question": "Does TrailMaster Tent come with a warranty?", "truth": "2 years", "chat_history": [] }
{"question": "How much did David Kim spend on the TrailLite Daypack?", "truth": "$240", "chat_history": [] }
{"question": "What items did Amanda Perez purchase?", "truth": "TrailMaster X4 Tent, TrekReady Hiking Boots (quantity 3), CozyNights Sleeping Bag, TrailBlaze Hiking Pants, RainGuard Hiking Jacket, and CompactCook Camping Stove", "chat_history": [] }
{"question": "What is the Brand for TrekReady Hiking Boots", "truth": "TrekReady", "chat_history": [] }
{"question": "How many items did Karen Williams buy?", "truth": "three items of the Summit Breeze Jacket", "chat_history": [] }
{"question": "France is in Europe", "truth": "Sorry, I can only truth questions related to outdoor/camping gear and equipment", "chat_history": [] }

الآن بعد أن أصبحت لديك مجموعة بيانات التقييم الخاصة بك، يمكنك تقييم تدفقك باتباع الخطوات التالية:

  1. حدد تقييم>التقييم المضمن من القائمة العلوية في تدفق المطالبة.

    لقطة شاشة لخيار إنشاء تقييم مضمن من تدفق المطالبة.

    يتم نقلك إلى معالج إنشاء تقييم جديد.

  2. أدخل اسما للتقييم وحدد جلسة حساب.

  3. حدد أزواج الأسئلة والأجوبة مع الجيل المعزز باسترداد من خيارات السيناريو.

    لقطة شاشة لتحديد سيناريو تقييم.

  4. حدد التدفق لتقييمه. في هذا المثال، حدد تدفق Contoso في الهواء الطلق أو أي شيء قمت بتسمية التدفق الخاص بك. بعد ذلك حدد التالي.

  5. حدد المقاييس التي تريد استخدامها لتقييم تدفقك. في هذا المثال، حدد Groundedness و Relevance و Retrieval score.

    لقطة شاشة لتحديد مقاييس التقييم.

  6. حدد نموذجا لاستخدامه للتقييم. في هذا المثال، حدد gpt-35-turbo-16k. بعد ذلك حدد التالي.

    إشعار

    يحتاج التقييم باستخدام المقاييس بمساعدة الذكاء الاصطناعي إلى استدعاء نموذج GPT آخر لإجراء الحساب. للحصول على أفضل أداء، استخدم نموذجا يدعم ما لا يقل عن 16 ألف رمز مميز مثل نموذج gpt-4-32k أو gpt-35-turbo-16k. إذا لم تقم مسبقا بنشر مثل هذا النموذج، يمكنك نشر نموذج آخر باتباع الخطوات الواردة في التشغيل السريع لملعب الدردشة الذكاء الاصطناعي Studio. ثم ارجع إلى هذه الخطوة وحدد النموذج الذي قمت بنشره.

  7. حدد إضافة مجموعة بيانات جديدة. بعد ذلك حدد التالي.

    لقطة شاشة لخيار استخدام مجموعة بيانات جديدة أو موجودة.

  8. حدد تحميل الملفات، واستعرض الملفات، وحدد ملف qa-evaluation.jsonl الذي قمت بإنشائه سابقا.

    لقطة شاشة لزر ملفات تحميل مجموعة البيانات.

  9. بعد تحميل الملف، تحتاج إلى تعيين الخصائص من الملف (مصدر البيانات) إلى خصائص التقييم. أدخل القيم التالية لكل خاصية مصدر بيانات:

    لقطة شاشة لتعيين مجموعة بيانات التقييم.

    Name ‏‏الوصف النوع Data source
    chat_history محفوظات الدردشة قائمة ${data.chat_history}
    الاستعلام الاستعلام سلسلة ${data.question}
    السؤال استعلام يبحث عن معلومات محددة سلسلة ${data.question}
    الاجابه الاستجابة للسؤال الذي أنشأه النموذج كإجابة سلسلة ${run.outputs.reply}
    الوثائق سلسلة ذات سياق من المستندات المستردة سلسلة ${run.outputs.fetched_docs}
  10. حدد التالي.

  11. راجع تفاصيل التقييم ثم حدد إرسال.

    لقطة شاشة لصفحة المراجعة والانتهاء ضمن مربع حوار إنشاء التقييم.

    يتم نقلك إلى صفحة Metric evaluations .

عرض حالة التقييم ونتائجه

يمكنك الآن عرض حالة التقييم ونتائجه باتباع الخطوات التالية:

  1. بعد إنشاء تقييم، إذا لم تكن موجودا بالفعل، فانتقل إلى Build>Evaluation. في صفحة Metric evaluations ، يمكنك مشاهدة حالة التقييم والمقاييس التي حددتها. قد تحتاج إلى تحديد Refresh بعد بضع دقائق لمشاهدة الحالة Completed .

    لقطة شاشة لصفحة التقييمات القياسية.

    تلميح

    بمجرد أن يكون التقييم في حالة مكتملة ، لا تحتاج إلى جلسة حساب أو حساب لإكمال بقية هذا البرنامج التعليمي. يمكنك إيقاف مثيل الحساب لتجنب تكبد تكاليف Azure غير الضرورية. لمزيد من المعلومات، راجع كيفية بدء الحساب وإيقافه.

  2. حدد اسم التقييم الذي اكتمل أولا (contoso-evaluate-from-flow_variant_0) للاطلاع على تفاصيل التقييم مع الأعمدة التي قمت بتعيينها مسبقا.

    لقطة شاشة لصفحة نتائج المقاييس التفصيلية.

  3. حدد اسم التقييم الذي أكمل الثاني (evaluation_contoso-evaluate-from-flow_variant_0) لمشاهدة مقاييس التقييم: الأساس والصلة ودرجة الاسترداد.

    لقطة شاشة لمتوسط درجات المقاييس.

لمزيد من المعلومات، راجع عرض نتائج التقييم.

توزيع التدفق

الآن بعد أن أنشأت تدفقا وأكملت تقييما يستند إلى المقاييس، فقد حان الوقت لإنشاء نقطة النهاية عبر الإنترنت للاستدلال في الوقت الفعلي. وهذا يعني أنه يمكنك استخدام التدفق المنشور للإجابة عن الأسئلة في الوقت الفعلي.

اتبع هذه الخطوات لنشر تدفق مطالبة كنقطة نهاية عبر الإنترنت من Azure الذكاء الاصطناعي Studio.

  1. لديك تدفق موجه جاهز للتوزيع. إذا لم يكن لديك واحد، فشاهد كيفية إنشاء تدفق موجه.

  2. اختياري: حدد دردشة لاختبار ما إذا كان التدفق يعمل بشكل صحيح. يوصى باختبار التدفق قبل النشر بأفضل الممارسات.

  3. حدد Deploy على محرر التدفق.

    لقطة شاشة لزر التوزيع من محرر تدفق المطالبة.

  4. قم بتوفير المعلومات المطلوبة في صفحة الإعدادات الأساسية في معالج التوزيع.

    لقطة شاشة لصفحة الإعدادات الأساسية في معالج التوزيع.

  5. حدد التالي للمتابعة إلى صفحات الإعدادات المتقدمة.

  6. في صفحة Advanced settings - Endpoint ، اترك الإعدادات الافتراضية وحدد Next.

  7. في صفحة Advanced settings - Deployment ، اترك الإعدادات الافتراضية وحدد Next.

  8. في صفحة الإعدادات المتقدمة - المخرجات والاتصالات ، تأكد من تحديد جميع المخرجات ضمن تضمين في استجابة نقطة النهاية.

    لقطة شاشة لصفحة الإعدادات المتقدمة في معالج التوزيع.

  9. حدد Review + Create لمراجعة الإعدادات وإنشاء النشر.

  10. حدد Create لنشر تدفق المطالبة.

    لقطة شاشة لصفحة إعدادات نشر تدفق المطالبة للمراجعة.

لمزيد من المعلومات، راجع كيفية نشر تدفق.

استخدام التدفق المنشور

يمكن لتطبيق copilot الخاص بك استخدام تدفق المطالبة المنشور للإجابة عن الأسئلة في الوقت الفعلي. يمكنك استخدام نقطة نهاية REST أو SDK لاستخدام التدفق المنشور.

  1. لعرض حالة النشر في Azure الذكاء الاصطناعي Studio، حدد Deployments من التنقل الأيسر. بمجرد إنشاء النشر بنجاح، يمكنك تحديد التوزيع لعرض التفاصيل.

    لقطة شاشة لحالة نشر تدفق المطالبة قيد التقدم.

    إشعار

    إذا رأيت رسالة تقول "لا تحتوي نقطة النهاية هذه حاليا على عمليات نشر" أو لا تزال الحالة قيد التحديث، فقد تحتاج إلى تحديد تحديث بعد بضع دقائق لمشاهدة النشر.

  2. اختياريا، صفحة التفاصيل هي المكان الذي يمكنك فيه تغيير نوع المصادقة أو تمكين المراقبة.

    لقطة شاشة لصفحة تفاصيل نشر تدفق المطالبة.

  3. حدد علامة التبويب Consume. يمكنك مشاهدة نماذج التعليمات البرمجية ونقطة نهاية REST لتطبيق copilot الخاص بك لاستخدام التدفق المنشور.

    لقطة شاشة لنقطة نهاية نشر تدفق المطالبة وعينات التعليمات البرمجية.

تنظيف الموارد

لتجنب تكبد تكاليف Azure غير الضرورية، يجب حذف الموارد التي أنشأتها في هذا البرنامج التعليمي إذا لم تعد هناك حاجة إليها. لإدارة الموارد، يمكنك استخدام مدخل Azure.

يمكنك أيضا إيقاف أو حذف مثيل الحساب الخاص بك في Azure الذكاء الاصطناعي Studio حسب الحاجة.

عرض توضيحي لحل دردشة المؤسسة في Azure الذكاء الاصطناعي Studio

تعرف على كيفية إنشاء مخطط برمجي للبيع بالتجزئة باستخدام بياناتك مع Azure الذكاء الاصطناعي Studio في هذا الفيديو التفصيلي الشامل.

الخطوات التالية