إنشاء مخطط لتفسير أفضل لطلبات البحث

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

تعتمد النتائج الفعلية التي يتم عرضها للمستخدم على الثقة بتفسير الاستعلام. تعتمد الثقة على عدة عوامل، بما في ذلك مكان ظهور سلاسل طلبات البحث في المستندات المفهرسة. سلسلة، مثل كاسم الممثل "توم هانكس"، باستمرار في ينتج عن حقل المخطط المسمى actors مستوى ثقة أعلى. نفس السلسلة ("توم هانكس") التي تظهر داخل فقرة، بدلاً من حقل مخطط، يمكن أن يؤدي إلى انخفاض الثقة. في حالة وجود ثقة قوية، لا تتوفر نتائج إلا من تفسير طلب البحث إلى المستخدم. في حالة انخفاض مستوى الشحن الثقة، يتم مزج نتائج تفسير الاستعلام مع قيمة نتائج البحث عن الكلمات الرئيسية.

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

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

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

وبالنظر إلى مثال طلب البحث هذا، ستزداد تفسير طلب البحث. بإجراء ما يلي:

  • تحليل المخطط وتحديد أن عناصر المستوى الأعلى في مصدر البيانات مصنّفة ضمن النوع objecttype:movies. يعرف تفسير الاستعلام الآن أن "أفلام" في الاستعلام هو نوع كائن.

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

تفسير طلب البحث الناتج هو:

  actor:“tom hanks” genre:action objecttype:movies

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

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

يجب عليك هيكلة المخطط لديك للتأكد من يمكنك الاستفادة من تفسير الاستعلام.

تفعيل ميزة ترجمة الاسم المعروض

ويستفيد تفسير طلب بحث Cloud Search من objectDefinitions و propertyDefinitions في مخطط لتفسير استعلام المستخدم وضبط نتائجك. لتحقيق أقصى استفادة من عناصر المخطط هذه، يجب عليك إنشاء الأسماء المعروضة البسيطة باستخدام displayLabel لأسماء الخصائص، objectDisplayLabel لأسماء الكائنات، وoperatorName للعوامل.

يعرض المخطط التالي أسماء عرض سهلة لكائن فيلم:

{
  "objectDefinitions": [
    {
      "name": "movie",
        "options": {
          "displayOptions": {
          "objectDisplayLabel": "Films"
        }
        ...
      },
      "propertyDefinitions": [
        {
          "name": "genre",
          "isReturnable": true,
          "isRepeatable": true,
          "isFacetable": true,
          "textPropertyOptions": {
          "retrievalImportance": { "importance": "HIGHEST" },
          "operatorOptions": {
            "operatorName": "genre"
          }
        },
        "displayOptions": {
          "displayLabel": "Category"
        }
      },
      ...
      ]
    }
  ]
}

في المثال السابق:

  • يتضمّن تعريف عنصر الفيلم objectDisplayLabel "فيلم".

  • تحتوي سمة genreDefinition على "gen" على operatorName و"Category" displayLabel

تتيح الأسماء المعروضة هذه لخدمة Cloud Search إجراء طلب البحث التالي التفسيرات:

  • "أفلام الحركة" أو "أفلام نوع الحركة" أو "أفلام الأكشن" هي تم تفسيرها على أنها genre:action object:movies.
  • يتم تفسير "أفلام تتضمن نوعًا من الحركة أو الإثارة" على أنها objecttype:movies genre:(action OR thriller)
  • يتم تفسير "فيلم حركة" أو "أفلام حركة" على أنه genre:action objecttype:movies
  • يتم تفسير "أفلام فئة كوميدية" على أنها genre:comedy objecttype:movies.

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

يجب عليك تحديد lessThanOperatorName وgreaterThanOperatorName، محددة في IntegerOperatorOptions، لجميع التواريخ والخصائص العددية. تتيح هذه الإعدادات إمكانية تحديد التاريخ أي تفسيرات عددية. بالإضافة إلى ذلك، لتمكين تفسيرات الفرز، يمكنك ضبط خيار isSortable لخصائص التاريخ والرقمية. ما يلي: كيفية تمكين هذه الخيارات.

{
  "objectDefinitions": [
    {
      "options": {
        "displayOptions": {
          "objectDisplayLabel": "Films"
        }
      },
      "propertyDefinitions": [
        {
          "name": "runtime",
          "isReturnable": true,
          "isSortable": true,
          "integerPropertyOptions": {
            "orderedRanking": "DESCENDING",
            "minimumValue": {
              "value": 10
            },
            "maximumValue": {
              "value": 500
            },
            "operatorOptions": {
              "operatorName": "runtime",
              "lessThanOperatorName": "runtimelessthan",
              "greaterThanOperatorName": "runtimegreaterthan"
            }
          },
          "displayOptions": {
            "displayLabel": "Length"
          }
        },
        {
          "name": "releasedate",
          "isReturnable": true,
          "isSortable": true,
          "datePropertyOptions": {
            "operatorOptions": {
              "operatorName": "releasedate",
              "lessThanOperatorName": "releasedbefore",
              "greaterThanOperatorName": "releasedafter"
            }
          }
        }
      ]
    }
  ]
}

في المثال السابق:

  • تشير السمة الرقمية runtime إلى مدة الفيلم. تشير رسالة الأشكال البيانية تم ضبط runtimelessthan وruntimegreaterthan لهذا الموقع.
  • تشير خاصية التاريخ releaseDate إلى وقت إطلاق فيلم في المسارح. تم ضبط releasedbefore وreleasedafter لهذا الموقع.

تمكّن هذه الإعدادات Cloud Search من إجراء التفسيرات التالية لطلبات البحث:

  • بافتراض أن العام هو 2019، يتم تفسير "الأفلام التي تم إصدارها هذا العام" على أنها objecttype: movies releasedafter:2019-1-1 releasedbefore:2019-12-31
  • بافتراض أن الأسبوع هو الأسبوع الثالث في مارس، فإن "الأفلام التي تم إصدارها الأسبوع الماضي" تم تفسيره على أنه objecttype: movies releasedafter:2019-3-10 releasedbefore:2019-3-16
  • يتم تفسير "الأفلام التي يكون وقت تشغيلها أقل من 90" على أنّها objjecttype: movies runtimelessthan:90.
  • بافتراض أن العام هو 2019، "الأفلام التي تم إصدارها هذا العام ومدتها أطول من يتم تفسير 120 بوصة على أنها releasedafter:2019-1-1 releasedbefore:2019-12-31 objecttype:movies runtimegreaterthan:120.
  • سيقوم "فرز الأفلام حسب تاريخ الإصدار" بالتصفية على "نوع الكائن: الأفلام" سيتمّ فرز النتائج المقدَّمة في تاريخ الإصدار باستخدام نظام الترتيب التلقائي. تصاعديًا.

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

يمكنك أيضًا استخدام الميزات المدمجة، مثل "type" و"before" و"after" و"objecttype". لتحسين تفسير طلب البحث. عند فهرسة مستند، عليك إجراء التالي:

  1. تعبئة الحقل updateTime في ItemMetadata لاستخدام عاملي التشغيل before وafter. هذه تمكّن الإعدادات Cloud Search من إجراء التفسيرات التالية لطلبات البحث:

    • "أفلام من الأسبوع الماضي" ستسرد جميع الأفلام التي تم تحديثها في الأسبوع السابق.
    • تسرد "أفلام قبل يناير 2019" جميع الأفلام التي تمت فهرستها من قبل كانون الثاني (يناير) 2019:
  2. يجب تعبئة الحقل mimeType في ItemMetadata لاستخدام الرصد التلقائي الكتابة. سيعرض طلب البحث "فيديوهات الحركة" جميع مستندات أفلام الحركة باستخدام MIME نوع application/mp4، application/mpeg4، application/x-shockwave-flash، video/، وapplication/vnd.google-apps.video.

قيود تفسير طلب البحث

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

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