إضافة ملفات تعريف تسجيل النقاط لتعزيز نتائج البحث

في هذه المقالة، ستتعلم كيفية تعريف ملف تعريف تسجيل النقاط. ملف تعريف تسجيل النقاط هو critera لتعزيز درجة البحث استنادا إلى المعلمات التي تقدمها. على سبيل المثال، قد ترغب في أن تكون التطابقات الموجودة في حقل "العلامات" أكثر صلة من نفس المطابقة الموجودة في "الأوصاف". يمكن أن تكون المعايير حقلا مرجحا (مثل مثال "العلامات") أو دالة.

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

إشعار

هل هي غير مألوفة مع مفاهيم الصلة؟ يقدم مقطع الفيديو التالي على YouTube بسرعة كيفية عمل ملفات تعريف تسجيل النقاط في Azure الذكاء الاصطناعي Search. يمكنك أيضا زيارة Relevance and scoring في Azure الذكاء الاصطناعي Search للحصول على مزيد من الخلفية.

تعريف ملف تعريف تسجيل النقاط

يسمى ملف تعريف تسجيل النقاط الكائن المحدد في مخطط الفهرس. يمكن أن يتكون ملف التعريف من حقول ووظائف ومعلمات مرجحة.

يعرض التعريف التالي ملف تعريف بسيط يسمى "geo". يعزز هذا المثال النتائج التي تحتوي على مصطلح البحث في حقل hotelName. كما يستخدم الدالة distance لتفضيل النتائج التي تقع ضمن 10 كيلومترات من الموقع الحالي. إذا بحث شخص ما عن مصطلح "inn"، وحدث أن كان "inn" جزءا من اسم الفندق، فستظهر المستندات التي تتضمن فنادق ذات "نزل" ضمن نصف قطر 10 كم للموقع الحالي أعلى في نتائج البحث.

"scoringProfiles": [
  {  
    "name":"geo",
    "text": {  
      "weights": {  
        "hotelName": 5
      }                              
    },
    "functions": [
      {  
        "type": "distance",
        "boost": 5,
        "fieldName": "location",
        "interpolation": "logarithmic",
        "distance": {
          "referencePointParameter": "currentLocation",
          "boostingDistance": 10
        }                        
      }                                      
    ]                     
  }            
]

لاستخدام ملف تعريف تسجيل النقاط هذا، تتم صياغة الاستعلام الخاص بك لتحديد معلمة scoringProfile في الطلب. إذا كنت تستخدم واجهة برمجة تطبيقات REST، يتم تحديد الاستعلامات من خلال طلبات GET وPOST. في المثال التالي، يحتوي "currentLocation" على محدد شرطة واحدة (-). تليها إحداثيات خط الطول وخط العرض، حيث تكون خط الطول قيمة سالبة.

GET /indexes/hotels/docs?search+inn&scoringProfile=geo&scoringParameter=currentLocation--122.123,44.77233&api-version=2020-06-30

لاحظ اختلافات بناء الجملة عند استخدام POST. في POST، "scoringParameters" هو الجمع وهو صفيف.

POST /indexes/hotels/docs&api-version=2020-06-30
{
    "search": "inn",
    "scoringProfile": "geo",
    "scoringParameters": ["currentLocation--122.123,44.77233"]
}

يبحث هذا الاستعلام عن مصطلح "inn" ويمرر في الموقع الحالي. لاحظ أن هذا الاستعلام يتضمن معلمات أخرى، مثل scoringParameter. يتم وصف معلمات الاستعلام، بما في ذلك "scoringParameter"، في Search Documents (REST API).

راجع المثال الموسع لمراجعة مثال أكثر تفصيلا لملف تعريف تسجيل النقاط.

كيفية حساب الدرجات

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

يمكنك استخدام المعلمة featuresMode (preview) لطلب تفاصيل تسجيل إضافية مع نتائج البحث (بما في ذلك درجات مستوى الحقل).

متى يتم إضافة منطق تسجيل النقاط

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

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

خطوات إضافة ملف تعريف تسجيل نقاط

لتنفيذ سلوك تسجيل النقاط المخصص، أضف ملف تعريف تسجيل النقاط إلى المخطط الذي يعرف الفهرس. يمكنك الحصول على ما يصل إلى 100 ملف تعريف تسجيل داخل فهرس (راجع حدود الخدمة)، ولكن يمكنك تحديد ملف تعريف واحد فقط في كل مرة في أي استعلام معين.

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

  2. الصق في القالب المتوفر في هذه المقالة.

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

  4. تحديد معايير التعزيز. يمكن أن يحتوي ملف تعريف واحد على حقول أو وظائف أو كليهما.

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

يمكن تعريف ملفات تعريف تسجيل النقاط في مدخل Microsoft Azure كما هو موضح في لقطة الشاشة التالية، أو برمجيا من خلال واجهات برمجة تطبيقات REST أو في Azure SDKs، مثل فئة ScoringProfile في Azure SDK ل .NET.

إضافة صفحة ملفات تعريف تسجيل النقاط

استخدام الحقول المرجحة

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

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

"scoringProfiles": [  
    {  
      "name": "boostKeywords",  
      "text": {  
        "weights": {  
          "HotelName": 2,  
          "Description": 5 
        }  
      }  
    }
]

استخدام الدالات

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

الوظيفة ‏‏الوصف
"حداثة" يعزز حسب القيم في حقل التاريخ والوقت (Edm.DateTimeOffset). تحتوي هذه الدالة على سمة "boostingDuration" بحيث يمكنك تحديد قيمة تمثل فترة زمنية يحدث خلالها التعزيز.
"المقدار" يعزز بناء على مدى ارتفاع القيمة الرقمية أو انخفاضها. تتضمن السيناريوهات التي تستدعي هذه الدالة زيادة هامش الربح أو أعلى سعر أو أقل سعر أو عدد التنزيلات. يمكن استخدام هذه الدالة مع Edm.Double الحقول و Edm.Int فقط. بالنسبة لدالة المقدار، يمكنك عكس النطاق، من الأعلى إلى المنخفض، إذا كنت تريد النمط العكسي (على سبيل المثال، لزيادة العناصر الأقل سعرا أكثر من العناصر ذات الأسعار الأعلى). نظرا لمجموعة من الأسعار من 100 دولار إلى 1 دولار، يمكنك تعيين "boostingRangeStart" عند 100 و"boostingRangeEnd" عند 1 لتعزيز العناصر الأقل سعرا.
"المسافة" يعزز عن طريق التقارب أو الموقع الجغرافي. يمكن استخدام هذه الدالة فقط مع Edm.GeographyPoint الحقول.
"العلامة" يعزز بواسطة العلامات الشائعة في كل من مستندات البحث وسلاسل الاستعلام. يتم توفير العلامات في "tagsParameter". يمكن استخدام هذه الدالة فقط مع حقول البحث من النوع Edm.String و Collection(Edm.String).

قواعد استخدام الدالات

  • يمكن تطبيق الدالات فقط على الحقول التي يتم إسنادها على أنها قابلة للتصفية.
  • يجب أن يكون نوع الدالة ("حداثة"، "المقدار"، "المسافة"، "العلامة") أقل حالة.
  • لا يمكن أن تتضمن الدالات قيما فارغة أو خالية.

Template

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

"scoringProfiles": [  
  {   
    "name": "name of scoring profile",   
    "text": (optional, only applies to searchable fields) {   
      "weights": {   
        "searchable_field_name": relative_weight_value (positive #'s),   
        ...   
      }   
    },   
    "functions": (optional) [  
      {   
        "type": "magnitude | freshness | distance | tag",   
        "boost": # (positive number used as multiplier for raw score != 1),   
        "fieldName": "(...)",   
        "interpolation": "constant | linear (default) | quadratic | logarithmic",   

        "magnitude": {
          "boostingRangeStart": #,   
          "boostingRangeEnd": #,   
          "constantBoostBeyondRange": true | false (default)
        }  

        // ( - or -)  

        "freshness": {
          "boostingDuration": "..." (value representing timespan over which boosting occurs)   
        }  

        // ( - or -)  

        "distance": {
          "referencePointParameter": "...", (parameter to be passed in queries to use as reference location)   
          "boostingDistance": # (the distance in kilometers from the reference location where the boosting range ends)   
        }   

        // ( - or -)  

        "tag": {
          "tagsParameter":  "..."(parameter to be passed in queries to specify a list of tags to compare against target field)   
        }
      }
    ],   
    "functionAggregation": (optional, applies only when functions are specified) "sum (default) | average | minimum | maximum | firstMatching"   
  }   
],   
"defaultScoringProfile": (optional) "...", 

مرجع الخاصية

السمة الوصف
الاسم مطلوب. هذا هو اسم ملف تعريف تسجيل النقاط. يتبع نفس اصطلاحات التسمية للحقل. يجب أن تبدأ بحرف، ولا يمكن أن تحتوي على نقاط أو نقطتين أو @ رموز، ولا يمكن أن تبدأ بعبارة azureSearch (حساسة لحالة الأحرف).
النص يحتوي على خاصية الأوزان.
الاوزان اختياري. أزواج قيمة الاسم التي تحدد حقلا قابلا للبحث ورقما صحيحا موجبا أو رقما موجبا للنقطة العائمة لزيادة درجة الحقل. يصبح العدد الصحيح الموجب أو الرقم مضاعفا لدرجة الحقل الأصلية التي تم إنشاؤها بواسطة خوارزمية الترتيب. على سبيل المثال، إذا كانت درجة الحقل 2 وقيمة الوزن 3، تصبح النتيجة المعززة للحقل 6. ثم يتم تجميع درجات الحقول الفردية لإنشاء درجة حقل مستند، والتي يتم استخدامها بعد ذلك لترتيب المستند في مجموعة النتائج.
وظائف اختياري. يمكن تطبيق دالة تسجيل النقاط فقط على الحقول القابلة للتصفية.
نوع الدالات > مطلوب لوظائف التسجيل. يشير إلى نوع الدالة التي يجب استخدامها. تتضمن القيم الصالحة المقدار والنضارة والمسافة والعلامة. يمكنك تضمين أكثر من دالة واحدة في كل ملف تعريف تسجيل. يجب أن يكون اسم الدالة أقل حالة.
> تعزيز الوظائف مطلوب لوظائف التسجيل. رقم موجب يستخدم كمضاعف للنقاط الأولية. لا يمكن أن يكون مساويا ل 1.
اسم حقل الدالات > مطلوب لوظائف التسجيل. يمكن تطبيق دالة تسجيل النقاط فقط على الحقول التي تعد جزءا من مجموعة الحقول للفهرس، والتي يمكن تصفيتها. بالإضافة إلى ذلك، يقدم كل نوع دالة قيودا إضافية (يتم استخدام الحداثة مع حقول التاريخ والوقت، والحجم مع عدد صحيح أو مزدوج من الحقول، والمسافة مع حقول الموقع). يمكنك تحديد حقل واحد فقط لكل تعريف دالة. على سبيل المثال، لاستخدام المقدار مرتين في نفس ملف التعريف، ستحتاج إلى تضمين حجم تعريفين، واحد لكل حقل.
> استنتاج الوظائف مطلوب لوظائف التسجيل. يحدد الميل الذي يزيد من أجله زيادة النتيجة من بداية النطاق إلى نهاية النطاق. تتضمن القيم الصالحة الخطية (الافتراضية) والثابتة والرباعية واللوغاريتمية. راجع تعيين الاستنتاجات للحصول على التفاصيل.
حجم الدالات > تستخدم دالة تسجيل المقدار لتغيير التصنيفات استنادا إلى نطاق القيم لحقل رقمي. بعض أمثلة الاستخدام الأكثر شيوعا على ذلك هي:

"تصنيفات النجوم:" قم بتغيير التسجيل استنادا إلى القيمة داخل حقل "تصنيف النجوم". عندما يكون هناك عنصران ذو صلة، سيتم عرض العنصر ذو التصنيف الأعلى أولا.
"الهامش:" عندما يكون هناك مستندان ذو صلة، قد يرغب بائع التجزئة في تحسين المستندات التي تحتوي على هوامش أعلى أولا.
"عدد النقرات:" بالنسبة للتطبيقات التي تتعقب إجراءات النقر إلى المنتجات أو الصفحات، يمكنك استخدام الحجم لزيادة العناصر التي تميل إلى الحصول على أكبر قدر من نسبة استخدام الشبكة.
"عدد التنزيلات:" بالنسبة للتطبيقات التي تتعقب التنزيلات، تتيح لك وظيفة المقدار تعزيز العناصر التي تحتوي على أكبر عدد من التنزيلات.
> تعزيز حجم > الوظائفRangeStart تعيين قيمة البدء للنطاق الذي يتم تسجيل المقدار فوقه. يجب أن تكون القيمة عددا صحيحا أو رقما فاصلة عائمة. بالنسبة للتقييمات النجمية من 1 إلى 4، سيكون هذا 1. بالنسبة للهوامش التي تزيد عن 50٪، سيكون هذا 50.
> حجم > الوظائف التي تعززRangeEnd تعيين القيمة النهائية للنطاق الذي يتم تسجيل المقدار فوقه. يجب أن تكون القيمة عددا صحيحا أو رقما فاصلة عائمة. بالنسبة للتقييمات النجمية من 1 إلى 4، سيكون هذا 4.
قيمة الدالات >> constantBoostBeyondRange القيم الصالحة صحيحة أو خاطئة (افتراضي). عند التعيين إلى true، سيستمر تطبيق التعزيز الكامل على المستندات التي تحتوي على قيمة للحقل الهدف أعلى من الطرف العلوي من النطاق. إذا كانت خاطئة، فلن يتم تطبيق تعزيز هذه الدالة على المستندات التي تحتوي على قيمة للحقل الهدف الذي يقع خارج النطاق.
نضارة الدالات > يتم استخدام دالة تسجيل درجة الحداثة لتغيير درجات الترتيب للعناصر استنادا إلى القيم في حقول DateTimeOffset. على سبيل المثال، يمكن تصنيف عنصر بتاريخ أحدث أعلى من العناصر القديمة.

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

في إصدار الخدمة الحالي، سيتم إصلاح أحد طرفي النطاق إلى الوقت الحالي. الطرف الآخر هو وقت في الماضي على أساس تعزيزDuration. لتعزيز مجموعة من الأوقات في المستقبل، استخدم boostingDuration السلبي.

يتم تحديد المعدل الذي تتغير فيه التغييرات المعززة من الحد الأقصى والحد الأدنى من خلال الاستنتاج المطبق على ملف تعريف التسجيل (راجع الشكل أدناه). لعكس عامل التعزيز المطبق، اختر عامل تعزيز أقل من 1.
> وظائف نضارة > تعزيزDuration تعيين فترة انتهاء صلاحية يتوقف بعدها التعزيز لمستند معين. راجع تعيين boostingDuration في القسم التالي للحصول على بناء الجملة والأمثلة.
مسافة الدالات > تستخدم دالة تسجيل المسافة للتأثير على درجة المستندات استنادا إلى مدى قربها أو بعدها بالنسبة إلى الموقع الجغرافي المرجعي. يتم إعطاء الموقع المرجعي كجزء من الاستعلام في معلمة (باستخدام معلمة استعلام scoringParameter) كوسيطة lon,lat .
مرجع مسافة > الدالاتPointParameter > معلمة يتم تمريرها في الاستعلامات لاستخدامها كموقع مرجعي (باستخدام معلمة استعلام scoringParameter).
> تعزيز مسافة > الوظائف رقم يشير إلى المسافة بالكيلومترات من الموقع المرجعي حيث ينتهي نطاق التعزيز.
علامة الدالات > تستخدم وظيفة تسجيل العلامات للتأثير على درجة المستندات استنادا إلى العلامات في المستندات واستعلامات البحث. سيتم تعزيز المستندات التي تحتوي على علامات مشتركة مع استعلام البحث. يتم توفير علامات استعلام البحث كمعلمة تسجيل في كل طلب بحث (باستخدام معلمة استعلام scoringParameter).
علامة > الدالات > TagsParameter معلمة يتم تمريرها في الاستعلامات لتحديد علامات لطلب معين (باستخدام معلمة استعلام scoringParameter). تتكون المعلمة من قائمة محددة بفاصلة من المصطلحات الكاملة. إذا كانت علامة معينة داخل القائمة عبارة عن قائمة محددة بفاصلة، يمكنك استخدام تسوية نص في الحقل لتجريد الفواصل في وقت الاستعلام (تعيين حرف الفاصلة إلى مسافة). سيؤدي هذا الأسلوب إلى "تبسيط" القائمة بحيث تكون جميع المصطلحات سلسلة واحدة وطويلة من المصطلحات المحددة بفاصلة.
تجميع الدالة اختياري. ينطبق فقط عند تحديد الدالات. تتضمن القيم الصالحة: المجموع (الافتراضي)، والمتوسط، والحد الأدنى، والحد الأقصى، و firstMatching. درجة البحث هي قيمة واحدة يتم حسابها من متغيرات متعددة، بما في ذلك وظائف متعددة. تشير هذه السمة إلى كيفية دمج تعزيزات جميع الوظائف في دفعة تجميعية واحدة يتم تطبيقها بعد ذلك على درجة المستند الأساسي. تستند النتيجة الأساسية إلى قيمة tf-idf المحسوبة من المستند واستعلام البحث.
defaultScoringProfile عند تنفيذ طلب بحث، إذا لم يتم تحديد ملف تعريف تسجيل، فسيتم استخدام التسجيل الافتراضي (tf-idf فقط).

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

تعيين الاستنتاجات

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

الاستيفاء ‏‏الوصف
linear بالنسبة للعناصر الموجودة ضمن النطاق الأقصى والحد الأدنى، سيتم إجراء التعزيز المطبق على العنصر بمقدار متناقص باستمرار. الخطية هي الاستنتاج الافتراضي لملف تعريف تسجيل النقاط.
constant بالنسبة للعناصر الموجودة ضمن نطاق البدء والنهاية، سيتم تطبيق دفعة ثابتة على نتائج الرتبة.
quadratic بالمقارنة مع الاستنتاج الخطي الذي يحتوي على دفعة متناقصة باستمرار، سينخفض Quadratic في البداية بوتيرة أصغر ثم عند اقترابه من النطاق النهائي، فإنه ينخفض في فاصل زمني أعلى بكثير. لا يسمح بخيار الاستنتاج هذا في وظائف تسجيل العلامات.
logarithmic بالمقارنة مع الاستنتاج الخطي الذي يحتوي على دفعة متناقصة باستمرار، سينخفض اللوغاريتم في البداية بوتيرة أعلى ثم عند اقترابه من النطاق النهائي، فإنه ينخفض في فاصل زمني أصغر بكثير. لا يسمح بخيار الاستنتاج هذا في وظائف تسجيل العلامات.

ثابت، خطي، تربيعي، خطوط السجل10 على الرسم البياني

تعيين boostingDuration

boostingDuration هي سمة من سمات الدالة freshness . يمكنك استخدامه لتعيين فترة انتهاء صلاحية يتوقف بعدها التعزيز لمستند معين. على سبيل المثال، لتعزيز خط منتج أو علامة تجارية لفترة ترويجية مدتها 10 أيام، يمكنك تحديد فترة ال 10 أيام ك "P10D" لتلك المستندات.

boostingDuration يجب تنسيقها كقيمة XSD "dayTimeDuration" (مجموعة فرعية مقيدة من قيمة مدة ISO 8601). نمط هذا هو: "P[nD][T[nH][nM][nS]]".

يوفر الجدول التالي عدة أمثلة.

المدة تعزيز المدة
يوم واحد "P1D"
يومين و12 ساعة "P2DT12H"
15 دقيقة "PT15M"
30 يوما و5 ساعات و10 دقائق و6.334 ثانية "P30DT5H10M6.334S"

لمزيد من الأمثلة، راجع مخطط XML: أنواع البيانات (W3.org موقع ويب).

مثال موسع

يوضح المثال التالي مخطط فهرس مع ملفي تعريف تسجيل نقاط (boostGenre، newAndHighlyRated). سيستخدم أي استعلام مقابل هذا الفهرس يتضمن أي ملف تعريف كمعلمة استعلام ملف التعريف لتسجيل مجموعة النتائج.

boostGenre يستخدم ملف التعريف حقول نصية مرجحة، مما يعزز التطابقات الموجودة في حقول albumTitle والنوع واسم الفنان. يتم تعزيز الحقول 1.5 و5 و2 على التوالي. لماذا يتم تعزيز النوع أعلى بكثير من الآخرين؟ إذا تم إجراء البحث عبر بيانات متجانسة إلى حد ما (كما هو الحال مع "النوع" في musicstoreindex)، فقد تحتاج إلى تباين أكبر في الأوزان النسبية. على سبيل المثال، في musicstoreindex، تظهر "rock" كنوع وفي أوصاف النوع المتطابقة. إذا كنت تريد النوع أن تفوق وصف النوع، فإن حقل النوع سيحتاج إلى وزن نسبي أعلى بكثير.

{  
  "name": "musicstoreindex",  
  "fields": [  
    { "name": "key", "type": "Edm.String", "key": true },  
    { "name": "albumTitle", "type": "Edm.String" },  
    { "name": "albumUrl", "type": "Edm.String", "filterable": false },  
    { "name": "genre", "type": "Edm.String" },  
    { "name": "genreDescription", "type": "Edm.String", "filterable": false },  
    { "name": "artistName", "type": "Edm.String" },  
    { "name": "orderableOnline", "type": "Edm.Boolean" },  
    { "name": "rating", "type": "Edm.Int32" },  
    { "name": "tags", "type": "Collection(Edm.String)" },  
    { "name": "price", "type": "Edm.Double", "filterable": false },  
    { "name": "margin", "type": "Edm.Int32", "retrievable": false },  
    { "name": "inventory", "type": "Edm.Int32" },  
    { "name": "lastUpdated", "type": "Edm.DateTimeOffset" }  
  ],  
  "scoringProfiles": [  
    {  
      "name": "boostGenre",  
      "text": {  
        "weights": {  
          "albumTitle": 1.5,  
          "genre": 5,  
          "artistName": 2  
        }  
      }  
    },  
    {  
      "name": "newAndHighlyRated",  
      "functions": [  
        {  
          "type": "freshness",  
          "fieldName": "lastUpdated",  
          "boost": 10,  
          "interpolation": "quadratic",  
          "freshness": {  
            "boostingDuration": "P365D"  
          }  
        },  
        {
          "type": "magnitude",  
          "fieldName": "rating",  
          "boost": 10,  
          "interpolation": "linear",  
          "magnitude": {  
            "boostingRangeStart": 1,  
            "boostingRangeEnd": 5,  
            "constantBoostBeyondRange": false  
          }  
        }  
      ]  
    }  
  ],  
  "suggesters": [  
    {  
      "name": "sg",  
      "searchMode": "analyzingInfixMatching",  
      "sourceFields": [ "albumTitle", "artistName" ]  
    }  
  ]   
}  

(راجع أيضًا )