सोलर में बहुविकल्पीय क्षेत्र के पेलोड के अनुसार स्कोर में बूस्ट जोड़ना

मेरा मामला यहाँ है;

मेरे पास elmo_field नामक मेरी स्कीमा पर एक फ़ील्ड है। मैं चाहता हूं कि elmo_field में पेलोडेड मान होना चाहिए। अर्थात।

dorothy|0.46  sesame|0.37  big bird|0.19 bird|0.22

जब कोई उपयोगकर्ता किसी कीवर्ड की खोज करता है i.e. dorothy मैं सामान्य स्कोर में 0.46 जोड़ना चाहता हूं। यदि उपयोगकर्ता big bird की खोज करता है, तो 0.1 9 जोड़ा जाना चाहिए और यदि उपयोगकर्ता bird की खोज करता है, तो 0.22 जोड़ा जाना चाहिए (पेलोड जोड़े गए हैं - या पेलोड * सामान्यीकृत गुणांक जोड़ा जाएगा) ।

मेरा मतलब है कि मैं अपने सूचकांक पर सोलर स्कीमा के अन्य क्षेत्रों में एक खोज कर दूंगा। और मैं एक और खोज करूँगा (यह एक सटीक मिलान खोज है) elmo_field पर एक ही समय में और यदि कुछ मेल खाता है तो मैं पेलोड के साथ स्कोर बढ़ा दूंगा।

कोई विचार?

0
जोड़ा संपादित
विचारों: 1
क्या आपने Misc solr संस्करण में पेलोड से संबंधित निम्नलिखित लेख पढ़े हैं? solr 2.x पेलोड solr 3.x payloads solr 4.x पेलोड
जोड़ा लेखक rchukh, स्रोत
मेरी टिप्पणी यहां देखें, मुझे लगता है कि आप stackoverflow.com/a/49195384/2709131 प्राप्त करने का प्रयास कर रहे हैं
जोड़ा लेखक pwaterz, स्रोत

3 उत्तर

मैंने एक कस्टम समानता रैपर लागू किया है। सामान्य चीजों के लिए मैंने डिफॉल्टसिमरिलिटी का उपयोग किया है। यदि कोई क्षेत्र एक पेलोडेड फ़ील्ड है तो मेरे द्वारा लागू की गई एक और समानता का उपयोग किया जाता है। वह समानता वर्ग केवल पेलोड मूल्य को अनदेखा करता है। मैंने एक क्वेरी पार्सर भी कार्यान्वित किया है जो एडिस्मैक्स का एक अनुकूलित संस्करण है। उस दृष्टिकोण के साथ मैं दस्तावेज़ स्कोर में पेलोड मान जोड़ सकता था।

0
जोड़ा
क्या आप solr 4.x का उपयोग कर रहे हैं ?? मुझे लगता है कि आप हैं, मैंने कई साल पहले सोलर 3.x के लिए एडिस्मैक्स का एक पेलोड संस्करण लिखा था, और मैं उम्मीद कर रहा था कि एडिस्मैक्स का 4.x संस्करण कुल स्कोर में पेलोड स्कोर को जोड़ने की अनुमति देगा। क्या आप पेलोड्स ओपनसोर्स के लिए एडिस्मैक्स का अपना संस्करण तैयार करने के इच्छुक होंगे, मुझे इसे फिर से लिखना पसंद नहीं है, साथ ही मैं इसमें योगदान करने में मदद कर सकता हूं और मुझे यकीन है कि अन्य भी होंगे।
जोड़ा लेखक byoungb, स्रोत

क्या आपने CustomScoreQuery </कोड देखा है > ?

There's an example with some explanation how to do this at http://dev.fernandobrito.com/2012/10/building-your-own-lucene-scorer/

0
जोड़ा

You could do a boost on a query as this question suggests: How to assign a weight to a term query in Lucene/Solr

Or you could try using payloads as described here: http://searchhub.org/2009/08/05/getting-started-with-payloads/

0
जोड़ा