البرنامج التعليمي: إنشاء ونشر سؤال وإجابة 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
  • 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 الذكاء الاصطناعي خدمة البحث. في هذا المثال، نحدد Connect other Azure الذكاء الاصطناعي Search resource من القائمة المنسدلة Select Azure الذكاء الاصطناعي خدمة البحث. إذا لم يكن لديك مورد بحث، يمكنك إنشاء مورد عن طريق تحديد Create a new Azure الذكاء الاصطناعي Search resource. ثم ارجع إلى هذه الخطوة للاتصال وتحديدها.

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

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

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

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

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

    إشعار

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

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

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

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

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

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

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

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

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

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

إشعار

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

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

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

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

  3. نظرا لأننا نستخدم بياناتنا الخاصة، تحتاج إلى تحديد إضافة بياناتك. يجب أن يكون لديك فهرس يسمى product-info الذي قمت بإنشائه مسبقا في ملعب الدردشة. حدده من القائمة المنسدلة تحديد فهرس المشروع المتوفر. بخلاف ذلك، قم أولا بإنشاء فهرس ببيانات المنتج الخاص بك ثم ارجع إلى هذه الخطوة.

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

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

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

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

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

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

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

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

لقطة شاشة لأزرار الحفظ وبدء جلسة العمل في التدفق الخاص بك.

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

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

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

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

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

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

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

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

  2. حدد Index من القائمة اليسرى. لاحظ أن لديك بالفعل فهرسا باسم product-info قمت بإنشائه مسبقا في ملعب الدردشة.

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

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

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

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

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

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

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

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

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

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

    إشعار

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

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

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

    إشعار

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

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

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

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

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

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

  1. انتقل إلى المشروع.
  2. حدد تدفق المطالبة من الأدوات في القائمة اليسرى. ثم حدد مجلد تدفق المطالبة الذي قمت بإنشائه مسبقا.
  3. حدد Start compute session من القائمة العلوية.

لإنشاء مثيل حساب وجلسة حساب، يمكنك أيضا اتباع الخطوات في كيفية إنشاء جلسة حساب.

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

هام

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

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

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

  1. تأكد من أن لديك جلسة حساب قيد التشغيل. إذا لم يكن لديك جلسة عمل، فشاهد إنشاء جلسة حساب في القسم السابق.

  2. حدد + المزيد من الأدوات من القائمة العلوية ثم حدد بحث الفهرس من قائمة الأدوات.

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

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

  4. حدد مربع نص mlindex_content في عقدة queryCustomerIndex.

    لقطة شاشة لم علبة نص mlindex_content في عقدة البحث عن الفهرس.

    يتم فتح مربع الحوار إنشاء . يمكنك استخدام مربع الحوار هذا لتكوين عقدة queryCustomerIndex للاتصال بفهرس معلومات العميل.

  5. للحصول على قيمة index_type ، حدد Azure الذكاء الاصطناعي Search.

  6. حدد القيم التالية أو إدخالها:

    الاسم القيمة‬
    acs_index_connection اسم اتصال Azure الذكاء الاصطناعي خدمة البحث (مثل contosooutdooraisearch)
    acs_index_name معلومات العميل
    acs_content_field المحتوى
    acs_metadata_field meta_json_string
    semantic_configuration azuremldefault
    embedding_type بلا
  7. حدد حفظ لحفظ إعداداتك.

  8. حدد القيم التالية أو أدخلها لعقدة queryCustomerIndex :

    الاسم القيمة‬
    الاستعلامات ${extractSearchIntent.output}
    query_type الكلمه الاساسيه
    أعلى K 5

    يمكنك مشاهدة الاستعلامالعقدةCustomerIndex متصلة بعقدة extractSearchIntent في الرسم البياني.

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

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

توصيل معلومات العميل بالتدفق

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

  1. حدد أيقونة علامات الحذف بجوار + المزيد من الأدوات ثم حدد وضع ملف Raw للتبديل إلى وضع الملف الخام. يسمح لك هذا الوضع بنسخ العقد ولصقها في الرسم البياني.

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

  2. استبدل جميع مثيلات querySearchResource ب queryProductIndex في الرسم البياني. نحن نقوم بإعادة تسمية العقدة لتعكس بشكل أفضل أنها تسترد معلومات المنتج وتتباين مع عقدة queryCustomerIndex التي أضفتها إلى التدفق.

  3. أعد تسمية جميع مثيلات chunkDocuments واستبدلها ب chunkProductDocuments في الرسم البياني.

  4. أعد تسمية جميع مثيلات selectChunks واستبدلها ب selectProductChunks في الرسم البياني.

  5. انسخ والصق العقد chunkProductDocuments وحددProductChunks لإنشاء عقد مشابهة لمعلومات العميل. أعد تسمية العقد الجديدة chunkCustomerDocuments وحددCustomerChunks على التوالي.

  6. ضمن عقدة chunkCustomerDocuments ، استبدل ${queryProductIndex.output} الإدخال ب ${queryCustomerIndex.output}.

  7. ضمن عقدة selectCustomerChunks ، استبدل ${chunkProductDocuments.output} الإدخال ب ${chunkCustomerDocuments.output}.

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

    لقطة شاشة لخيار حفظ ملف yaml في وضع الملف الخام.

    الآن، flow.dag.yaml يجب أن يتضمن الملف العقد (من بين أمور أخرى) التي تبدو مشابهة للمثال التالي:

    - name: chunkProductDocuments
      type: python
      source:
        type: code
        path: chunkProductDocuments.py
      inputs:
        data_source: Azure AI Search
        max_tokens: 1050
        queries: ${extractSearchIntent.output}
        query_type: Keyword
        results: ${queryProductIndex.output}
        top_k: 5
      use_variants: false
    - name: selectProductChunks
      type: python
      source:
        type: code
        path: filterChunks.py
      inputs:
        min_score: 0.3
        results: ${chunkProductDocuments.output}
        top_k: 5
      use_variants: false
    - name: chunkCustomerDocuments
      type: python
      source:
        type: code
        path: chunkCustomerDocuments.py
      inputs:
        data_source: Azure AI Search
        max_tokens: 1050
        queries: ${extractSearchIntent.output}
        query_type: Keyword
        results: ${queryCustomerIndex.output}
        top_k: 5
      use_variants: false
    - name: selectCustomerChunks
      type: python
      source:
        type: code
        path: filterChunks.py
      inputs:
        min_score: 0.3
        results: ${chunkCustomerDocuments.output}
        top_k: 5
      use_variants: false
    

تجميع معلومات المنتج والعملاء

عند هذه النقطة، يستخدم تدفق المطالبة معلومات المنتج فقط.

  • استخراجSearchIntent يستخرج هدف البحث من سؤال المستخدم.
  • يسترد queryProductIndex معلومات المنتج من فهرس معلومات المنتج.
  • تتلقى أداة LLM (لنماذج اللغات الكبيرة) ردا منسقا عبر عقد chunkProductDocuments>selectProductChunks>formatGeneratedReplyInputs.

تحتاج إلى توصيل معلومات المنتج والعميل وتجميعها لإخراجها بتنسيق يمكن أن تستخدمه أداة LLM . اتبع هذه الخطوات لتجميع معلومات المنتج والعملاء:

  1. حدد Python من قائمة الأدوات.

  2. قم بتسمية المجموعات التجميعية للأداة وحدد إضافة.

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

    from promptflow import tool
    from typing import List
    
    @tool
    def aggregate_chunks(input1: List, input2: List) -> str:
        interleaved_list = []
        for i in range(max(len(input1), len(input2))):
            if i < len(input1):
                interleaved_list.append(input1[i])
            if i < len(input2):
                interleaved_list.append(input2[i])
        return interleaved_list
    
  4. حدد الزر Validate and parse input للتحقق من صحة المدخلات لعقدة aggregateChunks. إذا كانت المدخلات صالحة، فإن تدفق المطالبة يوزع المدخلات وينشئ المتغيرات الضرورية لاستخدامها في التعليمات البرمجية الخاصة بك.

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

  5. قم بتحرير عقدة aggregateChunks لتوصيل معلومات المنتج والعميل. تعيين الإدخالات إلى القيم التالية:

    Name نوع القيمة‬
    input1 قائمة ${selectProductChunks.output}
    input2 قائمة ${selectCustomerChunks.output}

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

  6. حدد عقدة shouldGenerateReply من الرسم البياني. حدد إدخال المجموعات أو أدخله ${aggregateChunks.output} .

  7. حدد تنسيق عقدةGenerateReplyInputs من الرسم البياني. حدد إدخال المجموعات أو أدخله ${aggregateChunks.output} .

  8. حدد عقدة المخرجات من الرسم البياني. حدد إدخال المجموعات أو أدخله ${aggregateChunks.output} .

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

الآن يمكنك مشاهدة عقدة المجموعات التجميعية في الرسم البياني. تقوم العقدة بتوصيل معلومات المنتج والعميل لإخراجها بتنسيق يمكن أن تستخدمه أداة LLM .

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

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

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

  1. تابع من القسم السابق مع تحديد عقدة المخرجات . تأكد من أن إخراج الرد يحتوي على الزر التبادلي لإخراج الدردشة محدد. وإلا، يتم إرجاع المجموعة الكاملة من المستندات ردا على السؤال في الدردشة.

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

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

    إشعار

    قد يستغرق النموذج بضع ثوان للاستجابة. يمكنك توقع أن يكون وقت الاستجابة أسرع عند استخدام تدفق منشور.

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

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

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

في الذكاء الاصطناعي 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. حدد Add your dataset في صفحة Configure test data .

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

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

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

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

    Name ‏‏الوصف النوع Data source
    chat_history محفوظات الدردشة قائمة ${data.chat_history}
    الاستعلام الاستعلام سلسلة ${data.question}
  8. حدد التالي.

  9. حدد المقاييس التي تريد استخدامها لتقييم تدفقك. في هذا المثال، حدد الاتساق، وطلاقة، وتشابه GPT، ودرجة F1.

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

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

    إشعار

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

  11. تحتاج إلى تكوين أعمدة البيانات الخاصة بك لمطابقة المدخلات المطلوبة لإنشاء مقاييس التقييم. أدخل القيم التالية لتعيين مجموعة البيانات إلى خصائص التقييم:

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

  13. راجع تفاصيل التقييم ثم حدد إرسال. يتم نقلك إلى صفحة Metric evaluations .

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

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

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

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

  2. أوقف جلسة الحساب في تدفق المطالبة. انتقل إلى تدفق المطالبة وحدد جلسة حساب تشغيل>إيقاف جلسة الحساب من القائمة العلوية.

    لقطة شاشة للزر لإيقاف جلسة حساب في تدفق المطالبة.

    تلميح

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

  3. حدد اسم التقييم (مثل evaluation_evaluate_from_flow_variant_0) لمشاهدة مقاييس التقييم.

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

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

توزيع التدفق

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  1. لعرض حالة النشر في الذكاء الاصطناعي Studio، حدد Deployments من شريط التنقل الأيمن.

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

    بمجرد إنشاء النشر بنجاح، يمكنك تحديد التوزيع لعرض التفاصيل.

    إشعار

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

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

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

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

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

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

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

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

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