البحث SOLR ، المطابقة الرقمية والأهمية
-
21-09-2019 - |
سؤال
سأبدأ فقط بحالة الاستخدام. قل أنني أبحث عن منتج بسعر 500 دولار. لا يمانع بالضرورة إذا كان يكلف أكثر قليلاً ، أو أقل قليلاً ، لكنني أريد المنتجات في هذا النطاق السعري للحصول على درجة ذات صلة إجمالية أعلى.
هل هناك أي طريقة للقيام بذلك في SOLR؟ يبدو أن مستندات الأهمية/Morelikethis التي رأيتها على الموقع لا تحتوي على أي مفهوم للانحراف عن رقم معين.
السؤال ذي الصلة. أود أن أكون قادرًا على تعديل ترجيح بحث SOLR لتحقيق هذين الاستفسارات:
"ابحث عن كاميرات ذات أسعار مماثلة" و "العثور على كاميرات متميزة بالمثل"
بالنظر إلى أكثر مثل هذا المعالج ، فإن الخوارزمية المستخدمة لحساب الأهمية لا تبدو وكأنها تعرض أي مقابض تحكم للمبرمج. بالنسبة للكاميرات ذات الأسعار المتشابهة على سبيل المثال ، أود تعديل درجة الأهمية بحيث نزيد من صلة العناصر في نفس شريحة السعر ، ولكن لا يزال الحفاظ على ترجيح للميزات. للمثل المميزة ، سيتم عكس هذا. IE "ابحث عن كاميرات متميزة بالمثل ، ولكن إذا كان يكلف أربعون ألف دولار ، فهو أقل أهمية من كاميرا مماثلة بسعرتي المحددة" (يجب أن تحتوي على المزيد من الميزات ، ولكن ربما يضعون المغازل الكروم على غطاء العدسة).
المحلول
على Solr Wiki ، سترى بعض الأمثلة على كيفية تمكنك من ذلك البحث حسب المدى باستخدام field:[a TO b]
بناء الجملة.
كنت تريد أن تربط هذا مع الفرز. يمكنك أيضا بناء أ Solr SearchComponent يمكن أن يحدد وزنًا لنطاق السعر ، أو أ طلب. معالج الطلب هو ما كنت أكثر دراية به. قد يكون مثال "QF":
<str name="qf">
productname^1.0 price^2.0 brand^0.5
</str>
آمل أن تبدأ هذا.