HeadlinesBriefing favicon HeadlinesBriefing.com

Manticore Search ने वेक्टर चंकिंग जोड़ा

Hacker News •
×

मान लीजिए आप अपने टीम के आंतरिक दस्तावेज़ों — गाइड, रनबुक, पोस्टमॉर्टम — पर खोज बना रहे हैं। आपके पास ऑटो एम्बेडिंग वाली एक टेबल है: आप टेक्स्ट डालते हैं, Manticore मॉडल चलाता है और आपके लिए वेक्टर कॉलम भर देता है। आप 4,000 शब्दों का एक दस्तावेज़ लोड करते हैं। इंसर्ट सफल होता है। खोज काम करती है। सिवाय इसके कि मॉडल में 512-टोकन इनपुट विंडो है, और वह दस्तावेज़ लगभग 5,000 टोकन लंबा है। मॉडल ने पहले 380 शब्द पढ़े और बाकी 3,600 को फेंक दिया।

Manticore अब इसे टेबल परिभाषा में संभालता है: CREATE TABLE में वेक्टर कॉलम में chunk_strategy जोड़ें, और Manticore प्रत्येक दस्तावेज़ को चंक में विभाजित करता है, हर चंक को एम्बेड करता है, और उन सभी को खोजता है। पांच रणनीतियाँ: truncate, mean, fixed, recursive, sentence। एक दस्तावेज़ अभी भी एक खोज परिणाम है। चंक व्यक्तिगत रूप से प्रतिस्पर्धा करते हैं, और Manticore दस्तावेज़ को एक बार लौटाता है, knn_dist() के साथ उसके निकटतम चंक की दूरी बताता है। k दस्तावेज़ गिनता है, चंक नहीं।

Manticore मैनुअल (189 पेज, ~298k शब्द) पर मापा गया: recall@5 55.1% से 83.3% हो गया और MRR 0.44 से 0.70, ~2.5× RAM और ~4× इंजेस्ट समय पर। क्वेरी कभी चंक नहीं की जातीं। एक क्वेरी पूरी तरह एम्बेड होने के लिए काफी छोटी होती है; केवल संग्रहीत दस्तावेज़ विभाजित होते हैं।