वेक्टर डेटाबेस: Pinecone, Weaviate और pgvector · पाठ

फ़िल्टर की गई खोज का अनुकूलन

आंशिक और संयुक्त अनुक्रमण रणनीतियों का उपयोग करके वेक्टर समानता और मेटाडेटा फ़िल्टर को मिलाने वाली pgvector क्वेरी का अनुकूलन करें

पाठ 4, कुल 4 में से13 चरण

फ़िल्टर की गई खोज का अनुकूलन, CoddyKit पर वेक्टर डेटाबेस: Pinecone, Weaviate और pgvector का एक निःशुल्क पाठ है। यह 4 में से 4वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह वेक्टर डेटाबेस: Pinecone, Weaviate और pgvector सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। वेक्टर डेटाबेस: Pinecone, Weaviate और pgvector पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

फ़िल्टर की गई खोज की समस्या

वास्तविक क्वेरी अक्सर वेक्टर खोज को मेटाडेटा के WHERE फ़िल्टर के साथ जोड़ती हैं। सरल संयोजन वेक्टर अनुक्रमिका को निष्प्रभावी करके खोज को धीमा कर सकते हैं।

SELECT id FROM docs
WHERE category = 'news'
ORDER BY embedding <=> '[...]'::vector
LIMIT 10;

फ़िल्टर रिकॉल को क्यों घटाते हैं

ANN अनुक्रमिकाएँ फ़िल्टर लागू होने से पहले निकटतम पड़ोसियों के अनुमानित परिणाम लौटाती हैं। यदि अधिकांश उम्मीदवार फ़िल्टर से हट जाएँ, तो आपको LIMIT से कम परिणाम मिल सकते हैं—इसे अत्यधिक फ़िल्टरिंग कहते हैं।

खोज का दायरा बढ़ाना

hnsw.ef_search बढ़ाएँ (या IVFFlat जाँचों की संख्या बढ़ाएँ), ताकि फ़िल्टर लगाने से पहले अनुक्रमिका अधिक उम्मीदवारों को स्कैन करे और चुनिंदा फ़िल्टरों पर रिकॉल बेहतर हो।

SET hnsw.ef_search = 100;

आंशिक अनुक्रमिकाएँ

किसी सामान्य और कम-विविधता वाले फ़िल्टर मान के लिए केवल उन पंक्तियों को शामिल करने वाली आंशिक अनुक्रमिका बनाएँ। तब अनुक्रमिका फ़िल्टर किए गए उपसमुच्चय से पूरी तरह मेल खाएगी।

CREATE INDEX ON docs
USING hnsw (embedding vector_cosine_ops)
WHERE category = 'news';

आंशिक अनुक्रमिकाएँ कब बेहतर होती हैं

आंशिक अनुक्रमिकाएँ तब सबसे उपयोगी होती हैं जब:

  • फ़िल्टर मान कम और पहले से ज्ञात हों
  • हर उपसमुच्चय इतना बड़ा हो कि उसका प्रभाव पड़े
  • क्वेरी में लगभग हमेशा वह फ़िल्टर शामिल हो

B-tree सहायक अनुक्रमिकाएँ

अधिक-विविधता वाले फ़िल्टरों के लिए मेटाडेटा कॉलम पर एक सामान्य B-tree अनुक्रमिका जोड़ें। योजनाकार इसे वेक्टर स्कैन के साथ जोड़ सकता है।

CREATE INDEX ON docs (category);
CREATE INDEX ON docs (published_at);

दोहराव वाले अनुक्रमिका स्कैन

नए pgvector संस्करण दोहराव वाले स्कैन का समर्थन करते हैं, जो फ़िल्टर पार करने वाली पर्याप्त पंक्तियाँ मिलने तक अनुक्रमिका से डेटा लेते रहते हैं। परिणामों की संख्या कम न पड़ने देने के लिए इसे सक्षम करें।

SET hnsw.iterative_scan = 'relaxed_order';

पहले फ़िल्टर बनाम बाद में फ़िल्टर

पहले फ़िल्टर: पहले पंक्तियाँ सीमित करें, फिर वेक्टर खोज करें (बहुत चुनिंदा फ़िल्टरों के लिए अच्छा)। बाद में फ़िल्टर: पहले वेक्टर खोज करें, फिर फ़िल्टर लगाएँ (व्यापक फ़िल्टरों के लिए अच्छा)। दोनों का परीक्षण करें।

EXPLAIN से मापन

योजना की हमेशा पुष्टि करें। क्रमिक स्कैन के बजाय Index Scan using ... hnsw देखें।

EXPLAIN ANALYZE
SELECT id FROM docs
WHERE category = 'news'
ORDER BY embedding <=> '[...]'::vector
LIMIT 10;

रणनीतियों का संयोजन

एक मजबूत व्यवस्था में अक्सर बार-बार उपयोग होने वाले फ़िल्टरों के लिए आंशिक अनुक्रमिकाएँ, बाकी के लिए B-tree अनुक्रमिकाएँ और सुरक्षा के रूप में दोहराव वाले स्कैन के साथ समायोजित ef_search का उपयोग किया जाता है।

जाँच-सूची

फ़िल्टर की गई वेक्टर क्वेरी जारी करने से पहले:

  • EXPLAIN से अनुक्रमिका के उपयोग की पुष्टि करें
  • पक्का करें कि आपको विश्वसनीय रूप से LIMIT परिणाम मिलते हैं
  • p95 पर विलंबता का मानक परीक्षण करें

त्वरित जाँच

फ़िल्टर की गई खोज के बारे में अपना ज्ञान जाँचें।

पुनरावलोकन

आपने सीखा कि फ़िल्टर ANN अनुक्रमिकाओं के लिए चुनौती क्यों हैं और आंशिक अनुक्रमिकाएँ, B-tree सहायक अनुक्रमिकाएँ, ef_search समायोजन तथा दोहराव वाले स्कैन फ़िल्टर की गई वेक्टर क्वेरी को तेज़ और सटीक कैसे बनाए रखते हैं।

शुरुआत निःशुल्क

एआई शिक्षक के साथ वेक्टर डेटाबेस: Pinecone, Weaviate और pgvector सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
12
पाठ
48

अक्सर पूछे जाने वाले प्रश्न

क्या “फ़िल्टर की गई खोज का अनुकूलन” पाठ निःशुल्क है?

हाँ — वेक्टर डेटाबेस: Pinecone, Weaviate और pgvector अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “फ़िल्टर की गई खोज का अनुकूलन” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। वेक्टर डेटाबेस: Pinecone, Weaviate और pgvector पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“फ़िल्टर की गई खोज का अनुकूलन” में मैं क्या सीखूँगा?

आंशिक और संयुक्त अनुक्रमण रणनीतियों का उपयोग करके वेक्टर समानता और मेटाडेटा फ़िल्टर को मिलाने वाली pgvector क्वेरी का अनुकूलन करें आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ वेक्टर डेटाबेस: Pinecone, Weaviate और pgvector का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या वेक्टर डेटाबेस: Pinecone, Weaviate और pgvector शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर वेक्टर डेटाबेस: Pinecone, Weaviate और pgvector शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 4वाँ पाठ है।

“फ़िल्टर की गई खोज का अनुकूलन” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस वेक्टर डेटाबेस: Pinecone, Weaviate और pgvector पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर वेक्टर डेटाबेस: Pinecone, Weaviate और pgvector पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. गति के लिए IVFFlat अनुक्रमण
  2. रिकॉल के लिए HNSW अनुक्रमण
  3. क्वेरी प्रदर्शन का अनुकूलन
  4. फ़िल्टर की गई खोज का अनुकूलन
← वेक्टर डेटाबेस: Pinecone, Weaviate और pgvector पर वापस जाएँ