MCP + RAG: मैंने जटिल RAG सिस्टम बनाना क्यों बंद कर दिया

मैंने जटिल RAG सिस्टम बनाने में चार साल बिताए।

मैंने chunking strategies, embedding models, vector databases और rerankers का उपयोग किया। मैंने अपने 1,800-घंटे के नॉलेज बेस के लिए एक सिस्टम बनाया। हर बार, मुझे लगा कि मैं इसे एकदम सटीक बना रहा हूँ।

यह कभी भी ठीक से काम नहीं किया।

फिर मैंने Model Context Protocol (MCP) सपोर्ट जोड़ा। इसने सब कुछ बदल दिया। MCP अधिकांश लोगों के लिए पारंपरिक जटिल RAG को अप्रचलित (obsolete) बना देता है।

मैं इन समस्याओं से जूझता था:

  • semantic या recursive chunking के बीच चुनाव करना।
  • OpenAI, Cohere, या Nomic embeddings में से किसी एक को चुनना।
  • Pinecone, Weaviate, या Chroma के बीच निर्णय लेना।
  • top-k retrieval और reranking को मैनेज करना।

मेरा RAG सिस्टम 2,000 लाइनों के कोड तक पहुँच गया था। यह प्रभावशाली था लेकिन विफल रहा। मैं अपने डेटा को स्मार्ट बनाने की कोशिश कर रहा था, जबकि AI पहले से ही स्मार्ट था।

मैं MCP अप्रोच पर आ गया। मैंने केवल 150 लाइनों के कोड के साथ एक सर्वर बनाया।

मैंने AI को केवल दो टूल्स दिए:

  • search_notes: नोट्स खोजने के लिए साधारण टेक्स्ट मैचिंग का उपयोग करता है।
  • get_note_content: एक नोट का पूरा टेक्स्ट वापस करता है।

कोई chunks नहीं। कोई जटिल embeddings नहीं। कोई vector databases नहीं।

यह सरल तरीका मेरे फैंसी RAG सिस्टम को 10 में से 9 बार मात दे देता है। इसका कारण यह है:

  1. AI लॉजिक को संभालता है। एक पहले से सेट किए गए chunker की तुलना में AI यह तय करने में बेहतर है कि क्या प्रासंगिक है।
  2. पूरा संदर्भ (Full context)। पारंपरिक RAG नोट्स को छोटे टुकड़ों में काट देता है। इससे अक्सर उत्तर खो जाता है। MCP के साथ, AI पूरा नोट पढ़ता है। वह पूरी अवधारणा (idea) को देख पाता है।
  3. पूर्वानुमानयोग्यता (Predictability)। टेक्स्ट सर्च सरल है। यदि कीवर्ड मौजूद है, तो यह काम करता है। आप embedding drift और dimension errors से बच जाते हैं।

आपको अभी भी पारंपरिक RAG का उपयोग करना चाहिए यदि:

  • आपके पास 1,00,000 से अधिक बड़े दस्तावेज़ हैं।
  • आपको कम लेटेंसी (low latency) के साथ हाई-स्केल प्रोडक्शन की आवश्यकता है।

लेकिन व्यक्तिगत नॉलेज बेस, साइड प्रोजेक्ट्स, या इंटरनल टूल्स के लिए, आपको इसकी आवश्यकता नहीं है।

MCP के लाभ:

  • बनाए रखना आसान: 2,000 के बजाय केवल 150 लाइनें।
  • कोई embedding लागत नहीं: जब मॉडल बदलते हैं, तो आपको डेटा को फिर से एम्बेड करने की आवश्यकता नहीं होती है।
  • बेहतर सटीकता: AI को पूरा संदर्भ मिलता है।
  • डिबग करना आसान: आप ठीक से देख सकते हैं कि सर्च क्यों विफल हुई।

ओवर-इंजीनियरिंग करना बंद करें। AI को भारी काम (heavy lifting) करने दें। उसे अपने डेटा तक पहुँच दें और उसे पढ़ने दें।

स्रोत: https://dev.to/kevinten10/mcp-rag-why-i-stopped-building-complex-rag-systems-after-mcp-changed-everything-4g86

वैकल्पिक लर्निंग कम्युनिटी: https://t.me/GyaanSetuAi