إسقاط فهرس وإعادة إنشائه في Azure الذكاء الاصطناعي Search

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

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

التعديلات التي تتطلب إعادة إنشاء

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

الإجراء ‏‏الوصف
حذف حقل لإزالة جميع آثار الحقل فعليا، يجب إعادة إنشاء الفهرس. عندما لا تكون إعادة الإنشاء الفورية عملية، يمكنك تعديل التعليمات البرمجية للتطبيق لإعادة توجيه الوصول بعيدا عن حقل قديم أو استخدام searchFieldsوتحديد معلمات الاستعلام لاختيار الحقول التي يتم البحث فيها وإرجاعها. فعليا، يظل تعريف الحقل ومحتوياته في الفهرس حتى إعادة البناء التالية، عند تطبيق مخطط يحذف الحقل المعني.
تغيير تعريف الحقل تتطلب المراجعات التي تتم على اسم حقل أو نوع بيانات أو سمات فهرس معينة (قابلة للبحث، وقابلة للتصفية، وقابلة للفرز، وقابلة للواجهة) إعادة إنشاء كاملة.
تعيين محلل لحقل يتم تعريف المحللات في فهرس، وتعيينها إلى حقول، ثم استدعاؤها أثناء الفهرسة لإعلام كيفية إنشاء الرموز المميزة. يمكنك إضافة تعريف محلل جديد إلى فهرس في أي وقت، ولكن يمكنك فقط تعيين محلل عند إنشاء الحقل. هذا صحيح لكل من خصائص المحلل و indexAnalyzer. الخاصية searchAnalyzer هي استثناء (يمكنك تعيين هذه الخاصية إلى حقل موجود).
تحديث تعريف محلل أو حذفه في فهرس لا يمكنك حذف أو تغيير تكوين محلل موجود (محلل أو رمز مميز أو عامل تصفية رمز مميز أو عامل تصفية حرف) في الفهرس ما لم تقم بإعادة إنشاء الفهرس بأكمله.
إضافة حقل إلى مقترح إذا كان هناك حقل موجود بالفعل وتريد إضافته إلى بنية Suggesters ، ف أعد إنشاء الفهرس.
تبديل المستويات الترقيات الموضعية غير مدعومة. إذا كنت بحاجة إلى المزيد من السعة، فبادر بإنشاء خدمة جديدة وإعادة إنشاء الفهارس من البداية. للمساعدة في أتمتة هذه العملية، يمكنك استخدام نموذج التعليمات البرمجية لعينة الفهرس-النسخ الاحتياطي-الاستعادة في مستودع نموذج Azure الذكاء الاصطناعي Search .NET. سيقوم هذا التطبيق بنسخ الفهرس احتياطيا إلى سلسلة من ملفات JSON، ثم إعادة إنشاء الفهرس في خدمة بحث تحددها.

تعديلات بدون متطلبات إعادة إنشاء

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

  • إضافة حقل جديد
  • تعيين السمة القابلة للاسترداد على حقل موجود
  • تحديث searchAnalyzer في حقل يحتوي على indexAnalyzer موجود
  • إضافة تعريف محلل جديد في فهرس (والذي يمكن تطبيقه على حقول جديدة)
  • إضافة ملفات تعريف تسجيل النقاط أو تحديثها أو حذفها
  • إضافة إعدادات CORS أو تحديثها أو حذفها
  • إضافة مرادف أو تحديثه أو حذفه الخرائط
  • إضافة التكوينات الدلالية أو تحديثها أو حذفها

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

كيفية إعادة إنشاء فهرس

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

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

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

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

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

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

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

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

  6. قم بتحميل الفهرس بمستندات من مصدر خارجي.

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

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

موازنة أحمال العمل

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

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

تحقق من وجود تحديثات

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

يمكنك استخدام Search Explorer أو عميل REST للتحقق من وجود محتوى محدث.

إذا قمت بإضافة حقل أو إعادة تسميته، فاستخدم $select لإرجاع هذا الحقل: search=*&$select=document-id,my-new-field,some-old-field&$count=true

(راجع أيضًا )