AI और LLMरिट्रीवल

Vector Similarity Search

अर्थ के आधार पर सबसे नज़दीकी आइटम खोजें, tag से फ़िल्टर करके, उसी इंजन के अंदर जिसमें आइटम खुद रखे हैं।

इंडेक्स किया हुआ
HNSW
औसत search
O(log N)
distance metrics
3
कदम 1 में से 6
Index बनाएं

Dimensions और metric हर index के लिए तय होते हैं। ज़रूरत पड़ने पर HNSW parameters को ट्यून किया जा सकता है।

उदाहरण सेशनplaying
# Index बनाएं
hotkv> VSIM.CREATEINDEX products 3 METRIC COSINE
OK

असली HotKV कमांड और उदाहरण रिस्पॉन्स के साथ एक एनिमेटेड वॉकथ्रू। किसी भी कदम पर क्लिक करके वहां पहुंचें। कमांड और रिस्पॉन्स अंग्रेज़ी में ही रहते हैं, ठीक वैसे जैसे आप HotKV में टाइप करते और देखते हैं।

समस्या

Semantic search, “इससे मिलता-जुलता” और deduplication सब एक ही सवाल पर आकर टिकते हैं। कौन से सहेजे हुए आइटम इसके सबसे नज़दीक हैं? इसका जवाब देने का मतलब आमतौर पर आपके मुख्य स्टोर के बगल में एक अलग vector database होता है, और हर प्रोडक्ट अपडेट दोनों में लिखना पड़ता है।

HotKV इसे कैसे संभालता है

HotKV इंजन में HNSW vector indexes रखता है। प्रोडक्ट डेटा सामान्य keys में रहता है, vectors उन्हीं key नामों के तहत इंडेक्स होते हैं, और उन keys पर लगे tags search को किसी category या tenant के भीतर रखते हैं। एक write path, चलाने के लिए एक सिस्टम।

कदम दर कदम

क्या होता है, कमांड दर कमांड

  1. 01

    Index बनाएं

    Dimensions और metric हर index के लिए तय होते हैं। ज़रूरत पड़ने पर HNSW parameters को ट्यून किया जा सकता है।

    VSIM.CREATEINDEX products 3 METRIC COSINE
  2. 02

    प्रोडक्ट सहेजें

    प्रोडक्ट का डेटा एक सामान्य hash है, उसी key नाम के तहत जिसे index इस्तेमाल करेगा।

    HSET sku:1 name "Trail runner" price 89
  3. 03

    उसे tag करें

    key पर लगे tags vector search को किसी category के भीतर रखते हैं।

    TAG.SET sku:1 shoes running
  4. 04

    उसका vector इंडेक्स करें

    vector उसी key नाम के तहत index में जाता है।

    VSIM.SET products sku:1 0.12 0.80 0.31
  5. 05

    अर्थ से search करें, एक tag के भीतर

    query पाठ का embedding बनता है, और वह tag रखने वाले सबसे नज़दीकी प्रोडक्ट अपनी distances के साथ लौटते हैं।

    VSIM.SEARCH products 3 0.10 0.82 0.29 FILTER shoes
  6. 06

    दिखाने के लिए डेटा लाएं

    नतीजे key नाम हैं, इसलिए प्रोडक्ट डेटा उसी सर्वर में बस एक रीड दूर है।

    HGETALL sku:1
कहां फ़िट बैठता है

असली परिदृश्य

E-commerce search

खरीदार अपने शब्दों में लिखते हैं कि उन्हें क्या चाहिए। कैटलॉग में अर्थ से खोजा जाता है और उस category और दुकान तक फ़िल्टर किया जाता है जिसमें वे हैं।

Duplicate पहचान

नए सपोर्ट टिकट या लिस्टिंग की तुलना मौजूदा से की जाती है, और लगभग एक जैसे duplicates किसी इंसान के देखने से पहले मर्ज कर दिए जाते हैं।

इमेज और मीडिया similarity

इमेज मॉडल के embeddings पूरी लाइब्रेरी में दिखने में मिलती-जुलती फ़ोटो या क्लिप ढूँढते हैं।

अंतर्निहित

आपको क्या मिलता है

HNSW indexes

Approximate nearest-neighbour search जो बड़े indexes पर भी तेज़ रहती है, औसतन O(log N)।

VSIM.CREATEINDEXVSIM.SEARCH

तीन metrics

Cosine, L2 और inner product, हर index के लिए चुने जाते हैं।

METRIC

Tag filters

search को उन keys तक सीमित करें जिन पर दिए गए सभी tags लगे हैं।

TAG.SETFILTER

Persistent

Indexes आपके बाकी डेटा की तरह आपके snapshots और AOF rewrites में रखे जाते हैं।

VSIM.INFO

आम सवाल

क्या HotKV embeddings बनाता है?

नहीं। अपने पसंदीदा embedding मॉडल से vectors बनाएं और उन्हें VSIM.SET से सहेजें।

यह RAG pipelines से कैसे अलग है?

VSIM सामान्य vector index है। RAG pipelines उसी विचार पर बनी हैं और दस्तावेज़ों के लिए chunking, metadata और hybrid keyword search जोड़ती हैं।

इसमें कौन से प्लान शामिल हैं?

Vector search और tags मूल कमांड हैं और हर प्लान पर काम करते हैं, किसी लाइसेंस की ज़रूरत नहीं।

संबंधित उपयोग के मामले

इसे अपने वर्कलोड पर आज़माएं

HotKV Redis प्रोटोकॉल बोलता है, इसलिए आप किसी मौजूदा क्लाइंट को इसकी ओर इंगित करके यही कमांड चला सकते हैं।