البرنامج التعليمي: إصلاح مجموعة المهارات باستخدام جلسات تصحيح الأخطاء

Note

البحث باستخدام الذكاء الاصطناعي في Azure متوفر من خلال بوابة Azure، وواجهات برمجة التطبيقات REST، وAzure SDKs. كما يدعم طبقة المعرفة المدارة Foundry IQ، وهي طبقة المعرفة المدارة التي تحول محتوى المؤسسات إلى قواعد معرفية قابلة لإعادة الاستخدام وواثقة للأذونات للوكلاء في بوابة Microsoft Foundry.

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

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

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

Prerequisites

  • حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.

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

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

  • تعليمة Visual Studio برمجية مع عميل REST.

  • عينات من ملفات PDF (التجارب السريرية).

  • نموذج ملف debug-sessions.rest المستخدم لإنشاء مسار الإثراء.

Note

يستخدم هذا الدرس أيضا أدوات Foundry للكشف عن اللغة، والتعرف على الكيانات، واستخراج الكلمات المفتاحية. نظرا لحجم العمل الصغير، يتم الاستفادة من Foundry Tools خلف الكواليس لمعالجة مجانية تصل إلى 20 معاملة. وهذا يعني أنه يمكنك إكمال هذا التمرين دون الحاجة لإنشاء مورد قابل للفوترة في Microsoft Foundry.

إعداد نموذج البيانات

يقوم هذا القسم بإنشاء مجموعة بيانات نموذجية في مساحة تخزين Azure Blob بحيث يكون للمفهرس ومجموعة المهارات محتوى للعمل به.

  1. تنزيل بيانات العينة (clinical-trials-pdf-19)، التي تتكون من 19 ملفًا.

  2. أنشئ حساب Azure storage أو ابحث عن حساب موجود.

    • اختر نفس المنطقة مثل Azure الذكاء الاصطناعي Search لتجنب رسوم النطاق الترددي.

    • اختر نوع الحساب StorageV2 (للأغراض العامة V2).

  3. انتقل إلى صفحات خدمات تخزين Azure في مدخل Microsoft Azure وأنشئ حاوية Blob. تتمثل أفضل الممارسات في تحديد مستوى الوصول "خاص". قم بتسمية حاويتك clinicaltrialdataset.

  4. في الحاوية، حدد تحميل لتحميل ملفات العينة التي قمت بتنزيلها وفك ضغطها في الخطوة الأولى.

  5. في مدخل Microsoft Azure، حدد Settings>Access Keys وانسخ سلسلة الاتصال ل تخزين Azure.

نسخ مفتاح وعنوان URL

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

  1. انتقل إلى خدمة البحث في مدخل Microsoft Azure.

  2. في صفحة النظرة العامة ، انسخ رابط نقطة النهاية. قد يبدو مثال نقطة النهاية بالشكل https://mydemo.search.windows.net.

  3. علىمفاتيح>، انسخ مفتاح المسؤول. يتم استخدام مفاتيح المسؤول لإضافة الكائنات وتعديلها وحذفها. هناك مفتاحان للمسؤول قابلان للتبديل. انسخ أي منهما.

    لقطة شاشة لمفاتيح URL وواجهة برمجة التطبيقات في مدخل Microsoft Azure.

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

إنشاء مصدر البيانات ومجموعة المهارات والفهرس والمفهرس

في هذا القسم، أنشئ سير عمل "buggy" يمكنك إصلاحه في هذا البرنامج التعليمي.

  1. ابدأ تشغيل تعليمة Visual Studio برمجية وافتح debug-sessions.rest الملف.

  2. قم بتوفير المتغيرات التالية: عنوان URL لخدمة البحث، ومفتاح API لمسؤول خدمات البحث، سلسلة الاتصال التخزين، واسم حاوية الكائن الثنائي كبير الحجم التي تخزن ملفات PDF.

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

  4. إغلاق الملف.

التحقق من النتائج في مدخل Microsoft Azure

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

  1. في مدخل Microsoft Azure، في صفحة نظرة عامة على خدمة البحث، حدد علامة التبويب Indexes.

  2. حدد التجارب السريرية.

  3. أدخل سلسلة استعلام JSON هذه في طريقة عرض JSON لمستكشف البحث. يقوم بإرجاع حقول لمستندات معينة (تم تعريفها بواسطة الحقل الفريد metadata_storage_path ).

    "search": "*",
    "select": "metadata_storage_path, organizations, locations",
    "count": true
    
  4. تشغيل الاستعلام. يجب أن تشاهد قيما فارغة ل organizations و locations.

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

هناك طريقة أخرى للتحقيق في الأخطاء والتحذيرات من خلال مدخل Microsoft Azure.

  1. في علامة التبويب Indexers ، حدد clinical-trials-idxr.

    لاحظ أنه بينما نجحت مهمة المفهرس بشكل عام، كانت هناك تحذيرات.

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

    لقطة شاشة لتحذيرات العرض.

بدء جلسة تتبع الأخطاء

  1. من جزء التنقل الأيسر لخدمة البحث، ضمن إدارة البحث، حدد تصحيح الجلسات.

  2. حدد + إضافة جلسة تتبع الأخطاء.

  3. أعطِ اسمًا للجلسة.

  4. في قالب المفهرس، قم بتوفير اسم المفهرس. يحتوي المفهرس على مراجع إلى مصدر البيانات ومجموعة المهارات والفهرس.

  5. حدد حساب التخزين.

  6. احفظ الجلسة.

    لقطة شاشة لصفحة تعريف جلسة تتبع الأخطاء.

  7. يتم فتح جلسة تصحيح الأخطاء في صفحة الإعدادات. يمكنك إجراء تعديلات على التكوين الأولي وتجاوز أي إعدادات افتراضية. تعمل جلسة تتبع الأخطاء مع مستند واحد فقط. الإعداد الافتراضي هو قبول المستند الأول في المجموعة كأساس لجلسات تصحيح الأخطاء. يمكنك اختيار مستند معين لتصحيح الأخطاء من خلال توفير URI الخاص به في تخزين Azure.

  8. عند انتهاء تهيئة جلسة تتبع الأخطاء، يجب أن تشاهد سير عمل المهارات مع التعيينات وفهرس البحث. تظهر بنية بيانات المستند المحسنة في جزء التفاصيل على الجانب. استبعدناه من لقطة الشاشة التالية بحيث يمكنك رؤية المزيد من سير العمل.

    لقطة شاشة للمحرر المرئي لجلسة تتبع الأخطاء.

البحث عن المشكلات المتعلقة بمجموعة المهارات

تتم الإشارة إلى أي مشكلات تم الإبلاغ عنها بواسطة المفهرس كأخطاء وتحذيرات.

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

حدد تحذيرات لمراجعة الإعلامات. يجب أن ترى أربعة:

  • "تعذر تنفيذ المهارة لأن إدخال مهارة واحد أو أكثر غير صالح. إدخال المهارة المطلوب مفقود. الاسم: 'نص'، المصدر: '/document/content'."

  • "تعذر تعيين "مواقع" حقل الإخراج لفهرس البحث. تحقق من خاصية 'outputFieldMappings' للمفهرس لديك. القيمة المفقودة '/document/merged_content/locations'."

  • "تعذر تعيين "المؤسسات" حقل الإخراج لفهرس البحث. تحقق من خاصية 'outputFieldMappings' للمفهرس لديك. القيمة المفقودة '/document/merged_content/organizations'."

  • "تم تنفيذ المهارة ولكن قد يكون لها نتائج غير متوقعة لأن إدخال مهارة واحد أو أكثر غير صالح. إدخال المهارات الاختيارية مفقودة. الاسم: 'languageCode'، المصدر: '/document/languageCode'. مشكلات تحليل لغة التعبير: القيمة المفقودة '/document/languageCode'."

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

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

إصلاح قيم إدخال المهارات المفقودة

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

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

    لقطة شاشة لجزء تفاصيل المهارة.

  3. مرر مؤشر الماوس فوق كل إدخال (أو حدد إدخالا) لإظهار القيم في مقيم التعبير. لاحظ أن النتيجة المعروضة لهذا الإدخال لا تبدو وكأنها إدخال نص. يبدو وكأنه سلسلة من أحرف \n \n\n\n\n السطر الجديدة بدلا من النص. يعني عدم وجود نص أنه لا يمكن تحديد أي كيانات. إما أن هذا المستند لا يفي بالمتطلبات الأساسية للمهارة، أو أن هناك إدخالا آخر يجب استخدامه بدلا من ذلك.

    لقطة شاشة لإدخال المهارة تظهر القيم الخالية.

  4. قم بالتبديل مرة أخرى إلى بنية البيانات المثرية ومراجعة عقد الإثراء لهذا المستند. لاحظ أن \n \n\n\n\n ل "المحتوى" ليس له مصدر منشئ، ولكن قيمة أخرى ل "merged_content" لها إخراج OCR. على الرغم من عدم وجود إشارة، يبدو أن محتوى ملف PDF هذا ملف JPEG، كما يتضح من النص المستخرج والمعالج في "merged_content".

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

  5. قم بالتبديل مرة أخرى إلى المهارة وحدد Skillset settings لفتح تعريف JSON.

  6. غير التعبير من /document/content إلى /document/merged_content، ثم حدد حفظ. لاحظ أن التحذير لم يعد مدرجا.

    لقطة شاشة لمقيم التعبير لإدخال merged_content الثابت.

  7. حدد Run في قائمة نافذة الجلسة. يؤدي هذا إلى بدء تنفيذ آخر لمجموعة المهارات باستخدام المستند.

  8. بمجرد اكتمال تنفيذ جلسة تصحيح الأخطاء، لاحظ أن عدد التحذيرات قد انخفض بمقدار واحد. تظهر التحذيرات أن خطأ إدخال النص قد اختفى، ولكن تبقى التحذيرات الأخرى. الخطوة التالية هي معالجة التحذير حول القيمة /document/languageCodeالمفقودة أو الفارغة .

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

  9. حدد المهارة ثم مرر مؤشر الماوس فوق /document/languageCode. قيمة هذا الإدخال فارغة، وهي ليست إدخالا صالحا.

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

  11. انسخ التعبير /document/language.

  12. في جزء تفاصيل المهارة، حدد إعدادات المهارة للمهارة #1 والصق القيمة الجديدة، /document/language.

  13. حدد حفظ.

  14. حدد تشغيل.

  15. بعد اكتمال تنفيذ جلسة تصحيح الأخطاء، يمكنك التحقق من النتائج في جزء تفاصيل المهارات. عند المرور فوق /document/language، يجب أن ترى en كقيمة في مقيم التعبير.

لاحظ أن تحذيرات الإدخال قد اختفت. لا يزال هناك الآن فقط التحذيران حول حقول الإخراج للمؤسسات والمواقع.

إصلاح قيم إخراج المهارات المفقودة

تقول الرسائل للتحقق من الخاصية "outputFieldMappings" للمفهرس الخاص بك، لذلك دعونا نبدأ من هناك.

  1. حدد Output Field Mappings على سطح العمل. لاحظ أن تعيينات حقل الإخراج مفقودة.

    لقطة شاشة لتعيينات حقل الإخراج.

  2. كخطوة أولى، تأكد من أن فهرس البحث يحتوي على الحقول المتوقعة. في هذه الحالة، يحتوي الفهرس على حقول ل "المواقع" و"المؤسسات".

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

  4. قم بالتبديل مرة أخرى إلى جزء تفاصيل المهارات لمهارة التعرف على الكيان.

  5. في Skill Settings، قم بالتغيير context إلى document/merged_content. عند هذه النقطة، يجب أن يكون لديك ثلاثة تعديلات على تعريف المهارة تماما.

    لقطة شاشة لتعريف المهارة مع الإشارة إلى جميع التعديلات.

  6. حدد حفظ.

  7. حدد تشغيل.

يتم حل كافة الأخطاء.

الالتزام بالتغييرات في مجموعة المهارات

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

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

  1. حدد Commit changes في قائمة Debug sessions الرئيسية.

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

  3. أغلق جلسة تتبع الأخطاء وافتح المفهرسات من الجزء الأيمن.

  4. اختر "التجارب السريرية-idxr".

  5. حدد إعادة تعيين.

  6. حدد تشغيل.

  7. حدد تحديث لإظهار حالة أوامر إعادة التعيين والتشغيل.

عند انتهاء تشغيل المفهرس، يجب أن تكون هناك علامة اختيار خضراء وكلمة Success بجوار الطابع الزمني لآخر تشغيل في علامة التبويب Execution history . للتأكد من تطبيق التغييرات:

  1. في الجزء الأيمن، افتح الفهارس.

  2. حدد فهرس "التجارب السريرية" وفي علامة التبويب مستكشف البحث، أدخل سلسلة الاستعلام هذه: $select=metadata_storage_path, organizations, locations&$count=true لإرجاع حقول لمستندات معينة (تم تحديدها بواسطة الحقل الفريد metadata_storage_path ).

  3. حدد بحث.

يجب أن تُظهر النتائج أن المؤسسات والمواقع يجري ملؤها الآن بالقيم المتوقعة.

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

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

يمكنك العثور على الموارد وإدارتها في مدخل Microsoft Azure، باستخدام الارتباط All resources أو Resource groups في جزء التنقل الأيسر.

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

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

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