जब आप किसी विशिष्ट फ़ील्ड के लिए term_vector=with_positions_offsets
सेट करते हैं तो इसका अर्थ यह है कि आप उस क्षेत्र के लिए प्रति दस्तावेज़ वैक्टर शब्द संग्रहीत कर रहे हैं।
जब हाइलाइट करने की बात आती है, तो टर्म वेक्टर आपको लुसीन फास्ट वेक्टर हाइलाइटर का उपयोग करने की अनुमति देता है, जो मानक हाइलाइटर से तेज़ है। इसका कारण यह है कि मानक हाइलाइटर के पास हाइलाइट करने का कोई तेज़ तरीका नहीं है क्योंकि इंडेक्स में पर्याप्त जानकारी (पद और ऑफसेट) नहीं है। यह केवल फ़ील्ड सामग्री का पुन: विश्लेषण कर सकता है, ऑफ़सेट और पदों को रोक सकता है और उस जानकारी के आधार पर हाइलाइटिंग कर सकता है। इसमें काफी समय लग सकता है, खासकर लंबे टेक्स्ट फ़ील्ड के साथ।
आपके द्वारा किए जाने वाले शब्द वैक्टरों का उपयोग करने के लिए पर्याप्त जानकारी है और टेक्स्ट को फिर से विश्लेषण करने की आवश्यकता नहीं है। नकारात्मक सूचकांक का आकार है, जो उल्लेखनीय रूप से बढ़ जाएगा। मुझे यह जोड़ना होगा कि चूंकि लुसीन 4.2 टर्म वैक्टर बेहतर संपीड़ित होते हैं और अनुकूलित तरीके से संग्रहित होते हैं। और पोस्टिंग सूची में ऑफ़सेट स्टोर करने की क्षमता के आधार पर नई पोस्टिंग हाइलाइटर भी है, जिसके लिए भी कम जगह की आवश्यकता होती है।
लोचदार खोज स्वचालित रूप से उपलब्ध जानकारी के आधार पर हाइलाइटिंग करने का सबसे अच्छा तरीका उपयोग करता है। यदि शब्द वैक्टर संग्रहीत किए जाते हैं, तो यह तेज़ वेक्टर हाइलाइटर का उपयोग करेगा, अन्यथा मानक एक। टर्म वेक्टर के बिना रीइन्डेक्स के बाद, हाइलाइटिंग मानक हाइलाइटर का उपयोग करके किया जाएगा। यह धीमा हो जाएगा लेकिन सूचकांक छोटा होगा।
ngram फ़ील्ड के संबंध में, वर्णित व्यवहार अजीब है क्योंकि तेज वेक्टर हाइलाइटर को ngram फ़ील्ड के लिए बेहतर समर्थन होना चाहिए, इस प्रकार मैं बिल्कुल विपरीत परिणाम की अपेक्षा करता हूं।
किसी के पास with_positions_offsets के प्रभाव के बारे में कोई समाधान या उत्तर नहीं है? –