إنشاء مخطّط لتفسير الطلبات على النحو الأمثل

تعمل ميزة تفسير طلب البحث في Cloud Search على تحويل عوامل التشغيل والفلاتر في طلب بحث المستخدم تلقائيًا إلى طلب بحث منظَّم يستند إلى عوامل التشغيل. تستخدم الميزة عوامل التشغيل المحدّدة في المخطط والمستندات المفهرسة لاستنتاج الغرض من طلب البحث. يتيح ذلك للمستخدمين البحث باستخدام الحد الأدنى من الكلمات الرئيسية والحصول على نتائج دقيقة.

يعتمد عرض النتائج على مستوى الموثوقية. يزداد معدّل الثقة عندما تظهر سلاسل طلبات البحث باستمرار في حقول محدّدة في المخطط (مثل "Tom Hanks" في حقل actors). ينخفض معدّل الثقة عندما تظهر السلاسل ضمن النثر العام. لا يعرض معدّل الثقة المرتفع سوى النتائج المفسَّرة، بينما يمزج معدّل الثقة المنخفض هذه النتائج مع نتائج الكلمات الرئيسية العادية.

مثال على تفسير طلب البحث

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

نظرة عامة على تفسير طلب البحث
الشكل 1. تفسير طلب البحث

في هذا المثال، يتم تفسير طلب البحث على النحو التالي:

  • يتم تحديد أنّ العناصر ذات المستوى الأعلى هي objecttype:movies من المخطط.
  • يتم فحص المستندات لتحديد مكان ظهور كلمة "action". إذا ظهرت الكلمة بشكل أساسي في حقل genre، يزداد مستوى الموثوقية بأنّها قيمة خاصية لهذا الحقل.

التفسير الناتج هو: actor:"tom hanks" genre:action objecttype:movies

يتم تفسير طلبات البحث تلقائيًا لجميع المستخدمين، ولكن يمكنك تحسينها من خلال تنظيم المخطط كما هو موضّح في الأقسام التالية.

تنظيم المخطط لتفسير طلبات البحث

يضمن تحسين المخطط الاستفادة من ميزة تفسير طلبات البحث.

تفعيل تفسيرات الاسم المعروض

تستخدم ميزة تفسير طلبات البحث objectDefinitions وpropertyDefinitions لتفسير طلبات البحث. يمكنك إنشاء أسماء عرض بديهية باستخدام displayLabel للخصائص و objectDisplayLabel للكائنات وoperatorNameلعوامل التشغيل.

يعرض هذا المثال أسماء عرض بديهية لكائن فيلم:

{
  "objectDefinitions": [{
    "name": "movie",
    "options": {
      "displayOptions": { "objectDisplayLabel": "Films" }
    },
    "propertyDefinitions": [{
      "name": "genre",
      "isReturnable": true,
      "textPropertyOptions": {
        "operatorOptions": { "operatorName": "genre" }
      },
      "displayOptions": { "displayLabel": "Category" }
    }]
  }]
}

تتيح أسماء العرض هذه تفسيرات مثل:

  • "action movies" -> genre:action object:movies
  • "movies with genre action or thriller" -> objecttype:movies genre:(action OR thriller)
  • "comedy category movies" -> genre:comedy objecttype:movies

تفعيل تفسيرات التاريخ والقيم الرقمية والترتيب

حدِّد lessThanOperatorName وgreaterThanOperatorName في IntegerOperatorOptions لجميع خصائص التاريخ والقيم الرقمية. لتفعيل الترتيب، اضبط isSortable.

يُفعِّل هذا المثال هذه الخيارات:

{
  "objectDefinitions": [{
    "propertyDefinitions": [
      {
        "name": "runtime",
        "isSortable": true,
        "integerPropertyOptions": {
          "operatorOptions": {
            "operatorName": "runtime",
            "lessThanOperatorName": "runtimelessthan",
            "greaterThanOperatorName": "runtimegreaterthan"
          }
        }
      },
      {
        "name": "releasedate",
        "isSortable": true,
        "datePropertyOptions": {
          "operatorOptions": {
            "operatorName": "releasedate",
            "lessThanOperatorName": "releasedbefore",
            "greaterThanOperatorName": "releasedafter"
          }
        }
      }
    ]
  }]
}

تتيح هذه الإعدادات تفسيرات مثل:

  • "movies released this year" -> objecttype:movies releasedafter:2019-1-1 releasedbefore:2019-12-31
  • "movies with runtime less than 90" -> objecttype:movies runtimelessthan:90

تفعيل تفسير عامل التشغيل المحجوز

استخدِم عوامل التشغيل المضمّنة، مثل type وbefore وafter وobjecttype:

  1. املأ updateTime في ItemMetadata لاستخدام before وafter.
  2. املأ mimeType في ItemMetadata للاكتشاف التلقائي. على سبيل المثال، تعرض "action videos" المستندات التي تتضمّن أنواع MIME للفيديوهات.

القيود المفروضة على تفسير طلبات البحث

  • لا تعمل هذه الميزة إلا مع قوائم التحكّم بالوصول (ACL) لمصادر البيانات التالية:
    • متاحة للجميع في النطاق
    • متاحة للجميع في مصدر البيانات
    • تتشارك غالبية المستندات قائمة التحكّم بالوصول الموروثة نفسها.
  • تؤدي أسماء عوامل التشغيل المشتركة (مثل priority وseverity اللذين يستخدمان القيم من 0 إلى 3) إلى خفض معدّل الثقة.
  • تستخدم ميزة التفسير تلقائيًا الحروف الصغيرة لقيم الحقول ما لم تستخدِم exactMatchWithOperator.
  • لا يتوافق عامل التشغيل source.
  • لا يتم تفسير عوامل التشغيل المدمَجة والعبارات النصية (مثل "p0 cases severity:s0").
  • يتم دائمًا مزج النتائج مع النتائج المرتبة حسب مدى الصلة بالموضوع.