विषय-सूची
RAG, semantic search, सिफ़ारिशें — इन सबके पीछे का अनसुना मेहनती कारीगर है embedding (vector)। एक वाक्य में कहें तो यह "शब्दों के अर्थ को संख्याओं की एक श्रृंखला में बदलने की तकनीक" है। दिखने में साधारण, पर यही AI युग में search और ज्ञान-उपयोग की नींव है।
यह लेख शुरुआती लोगों के लिए समझाता है कि embedding क्या है, यह अर्थ क्यों माप सकता है, इसका उपयोग कहाँ होता है, model कैसे चुनें, और vector DB तथा शुरुआत कैसे करें।
अर्थ जितना नज़दीक, vector उतना नज़दीक
— search, RAG, वर्गीकरण और सिफ़ारिशों की नींव
अर्थ को संख्या में बदलें
टेक्स्ट को "संख्याओं की श्रृंखला" में बदलें जिस पर मशीन काम कर सके।
नज़दीक = समान
अर्थ में नज़दीक शब्द space में नज़दीकी स्थान पर बैठते हैं।
अर्थ से search
सटीक शब्द-मिलान नहीं, बल्कि "अर्थ की नज़दीकी" से चीज़ें खोजें।
1. embedding (vector) क्या है?
embedding का अर्थ है टेक्स्ट (या छवि आदि) के "अर्थ" को संख्याओं की एक श्रृंखला — यानी एक vector — में बदलना। उदाहरण के लिए, "कुत्ता" शब्द को सैकड़ों से हज़ारों संख्याओं की एक सूची से बदल दिया जाता है, जैसे [0.21, -0.78, 0.34, ...]। इंसान को यह बेमतलब संख्याएँ लगती हैं, पर यह श्रृंखला असल में "अर्थ के निर्देशांक (coordinates)" का एक समूह है।
इसे "अर्थ का नक्शा" समझिए। जैसे नक्शे पर पास-पास के शहर भौगोलिक रूप से नज़दीक होते हैं, वैसे ही embedding space में अर्थ में नज़दीक शब्द एक-दूसरे के पास रखे जाते हैं। "कुत्ता" और "पिल्ला" नज़दीक हैं; "कुत्ता" और "कार" दूर हैं। इस "दूरी" की गणना कर पाना ही पूरी बात है।
💡 एक पंक्ति में: embedding = "शब्दों के अर्थ को संख्यात्मक निर्देशांक में बदलने की तकनीक"। कंप्यूटर टेक्स्ट का अर्थ सीधे नहीं समझ सकता, पर एक बार संख्या बन जाने पर वह "अर्थ की नज़दीकी" की गणना कर सकता है।
2. "नज़दीकी" से अर्थ क्यों मापा जा सकता है
embedding बहुत बड़ी मात्रा में टेक्स्ट से यह सीखकर बनाए जाते हैं कि "कौन-से शब्द आमतौर पर एक साथ इस्तेमाल होते हैं"। नतीजतन, समान संदर्भों में इस्तेमाल होने वाले शब्दों को मिलती-जुलती संख्याएँ मिलती हैं। दो vector की नज़दीकी को cosine similarity जैसे मापों से संख्या में बदला जा सकता है, जहाँ 1 के जितना करीब, उतना ही "अर्थ में समान"।
"कुत्ता" से अर्थ की नज़दीकी (केवल उदाहरण)
※ यह एक वैचारिक उदाहरण है। एक प्रसिद्ध उदाहरण में अर्थ-संबंध vector अंकगणित के रूप में दिखते हैं — "राजा − पुरुष + स्त्री ≈ रानी"।
असली vector सैकड़ों से हज़ारों संख्याओं (dimensions) से बना होता है, और यही भारी संख्या अर्थ के अनगिनत पहलुओं — "क्या यह जानवर है?", "वाहन?", "बड़ा या छोटा?" — को थोड़ा-थोड़ा करके व्यक्त करती है। अधिक dimensions बारीक बारीकियाँ पकड़ते हैं, पर उसी अनुपात में storage और compute की लागत भी बढ़ती है।
इसलिए जब अक्षर मेल न खाते हों, तब भी मशीन यह आँक सकती है कि "अर्थ नज़दीक है या नहीं"। यही असली तंत्र है जिससे "AI" और "artificial intelligence" को एक ही चीज़ माना जाता है, या "मुझे अपने पैसे वापस चाहिए" जैसे सवाल से "रद्द करने और रिफ़ंड पाने के चरण" जैसा दस्तावेज़ ढूँढ़ा जाता है।
3. इसका उपयोग कहाँ होता है? (RAG, semantic search)
embedding शायद ही अकेले इस्तेमाल होते हैं — ये "अर्थ की नज़दीकी" पर बनी कई सुविधाओं को सहारा देते हैं। यहाँ मुख्य उपयोग दिए हैं।
RAG (retrieval-augmented generation)
सवाल के अर्थ से नज़दीक दस्तावेज़ ढूँढ़कर AI को आधार के रूप में सौंपें। RAG का दिल।
semantic search
keyword मिलान से नहीं, अर्थ से search। अलग शब्दों में लिखे होने पर भी मिल जाता है।
वर्गीकरण और दोहराव-हटाना
पूछताछ को स्वतः छाँटें, और समान या दोहरे दस्तावेज़ खोजें।
सिफ़ारिशें
अर्थ की नज़दीकी से "इससे मिलते-जुलते उत्पाद या लेख" सामने लाएँ।
ख़ासकर, embedding के बिना RAG का अस्तित्व ही नहीं। जो सिस्टम आंतरिक दस्तावेज़ search करके AI से जवाब दिलवाता है, वह दस्तावेज़ों को पहले से vector में बदलकर काम करता है। टेक्स्ट के अलावा, छवियों और ऑडियो को एक ही space में रखने वाले multimodal embedding भी फैल रहे हैं।
4. embedding model कैसे चुनें
embedding एक समर्पित "embedding model" द्वारा बनाए जाते हैं। मोटे तौर पर दो विकल्प हैं।
API प्रकार (आसान, GPU नहीं चाहिए)
OpenAI (text-embedding-3), Cohere, Google Gemini, Voyage और अन्य। बस API कॉल करें — किसी infrastructure की ज़रूरत नहीं। शुरुआत का आसान तरीका।
open-source प्रकार (मुफ़्त, self-hosted)
BGE-M3, Nomic Embed, Qwen3 और अन्य। मुफ़्त में इस्तेमाल, पर इसे चलाने का माहौल चाहिए। privacy और लागत के लिए अच्छा।
💡 Matryoshka: कुछ नए model आपको बाद में dimensions की संख्या घटाने देते हैं। उदाहरण के लिए, 3,072 dimensions को 1,024 तक घटाने पर लगभग 95% गुणवत्ता बनी रहती है, जबकि storage और search लागत घटकर लगभग एक-तिहाई रह जाती है, ऐसा बताया जाता है। लागत और सटीकता में संतुलन के लिए सुविधाजनक।
※ model नाम और आँकड़े विभिन्न guides और घोषणाओं से लिए गए हैं (जून 2026 तक)। सबसे अच्छा model भाषा, उपयोग और बजट के साथ बदलता है, इसलिए पक्का तरीका है आज़माकर चुनना।
5. vector DB और शुरुआत कैसे करें
आपके बनाए embedding एक vector database (vector DB) में संग्रहित होते हैं। यह बहुत बड़ी संख्या में vector के बीच "सवाल से नज़दीक वाले" को तेज़ी से ढूँढ़ने के लिए एक विशेष DB है — उदाहरणों में Pinecone, Weaviate, Qdrant, Chroma और pgvector शामिल हैं। यही semantic search और RAG का "search engine" बन जाता है।
शुरुआत करना सरल है।
- ① एक embedding model चुनें: शुरुआत के लिए API प्रकार (जैसे OpenAI का text-embedding-3-small) आसान है।
- ② दस्तावेज़ों को vector में बदलें और संग्रहित करें: अपने दस्तावेज़ों को model से vector में बदलें और vector DB में डालें।
- ③ सवाल को vector में बदलें और search करें: सवाल को उसी model से vector में बदलें और सबसे नज़दीकी दस्तावेज़ निकालें।
ये तीन चरण ठीक वही RAG लागू करने की नींव हैं। आपने जो search बनाया है उसकी सटीकता को AI evals से मापें और सुधारें।
सारांश
embedding पर तीन मुख्य बातें।
- यह क्या है: शब्दों के "अर्थ" को संख्याओं की श्रृंखला (एक vector) में बदलने की तकनीक। अर्थ जितना नज़दीक, vector उतना नज़दीक।
- इसकी भूमिका: RAG, semantic search, वर्गीकरण, दोहराव-हटाने और सिफ़ारिशों की नींव। यह आपको सटीक शब्द-मिलान नहीं, बल्कि "अर्थ" से काम करने देता है।
- शुरुआत कैसे करें: API प्रकार के model से आसानी से शुरू करें। vector DB में संग्रहित करें और search करें। Matryoshka से लागत समायोजित करें।
embedding, AI से search और ज्ञान-उपयोग बनाने का पहला कदम हैं। शुरुआत करें embedding model से दो वाक्यों को vector में बदलकर और उनकी नज़दीकी की गणना करके। पूरी तस्वीर के लिए इसके साथ RAG और LLM कैसे काम करते हैं भी पढ़ें।
embedding search की सटीकता और बढ़ानी हो तो अगला कदम है «reranking»। reranking क्या है पढ़ें और retrieved candidates को relevance से फिर क्रम लगाकर RAG की सटीकता बढ़ाना सीखें।
FAQ
Q. embedding और LLM में क्या फ़र्क़ है?
A. भूमिकाएँ अलग हैं। LLM एक model है जो टेक्स्ट उत्पन्न करता है; embedding model एक model है जो अर्थ को संख्या में बदलता है। RAG में ये मिलकर काम करते हैं: embedding संबंधित दस्तावेज़ ढूँढ़ता है, और LLM नतीजे को गद्य में बदल देता है।
Q. क्या dimensions जितने ज़्यादा हों उतना अच्छा?
A. ज़रूरी नहीं। अधिक dimensions अभिव्यक्ति-शक्ति बढ़ाते हैं, पर storage और search लागत भी बढ़ाते हैं। Matryoshka-सक्षम model के साथ आप गुणवत्ता लगभग बरकरार रखते हुए dimensions घटा सकते हैं, जिससे लागत और सटीकता में संतुलन आसान हो जाता है।
Q. क्या इसका उपयोग मुफ़्त है?
A. open-source embedding model (जैसे BGE-M3) मुफ़्त हैं। API प्रकार आमतौर पर थोड़ा शुल्क लेते हैं, पर embedding, generation से कहीं सस्ते हैं। मुफ़्त tier या छोटे dataset से शुरुआत करना अच्छा रहता है।
Q. क्या मुझे vector DB चाहिए?
A. कम मात्रा के लिए आप सादी गणना से search कर सकते हैं, पर जैसे-जैसे दस्तावेज़ बढ़ते हैं, एक समर्पित vector DB व्यावहारिक हो जाता है। Chroma जैसे आसान विकल्पों से लेकर मौजूदा DB में जोड़ने योग्य pgvector तक, विकल्प मौजूद हैं, इसलिए आप पैमाने के हिसाब से चुन सकते हैं।