𝗪𝗵𝘆 𝗬𝗼𝘂𝗿 𝗥𝗔𝗚 𝗦𝘆𝘀𝘁𝗲𝗺 𝗛𝗮𝗹𝗹𝘂𝗰𝗶𝗻𝗮𝘁𝗲𝘀
तुमच्या RAG सिस्टमची रिट्रिव्हल अचूकता (retrieval accuracy) ३४% आहे. तुम्ही प्रत्येक ट्युटोरियल फॉलो केले. तुम्ही योग्य लायब्ररीज वापरल्या. तुम्ही एखाद्या ब्लॉग पोस्टवरून चंक साईज (chunk size) निवडली. तरीही, सिस्टम अपयशी ठरते.
ही टूलिंगची समस्या नाही. ही मूलभूत तत्त्वांची (fundamentals) समस्या आहे.
जेव्हा तुम्ही त्यांच्या खालच्या थरांना (layers) न समजून लायब्ररीजचा वापर करता, तेव्हा तुम्ही 'ॲब्स्ट्रॅक्शन डेट' (abstraction debt) निर्माण करता. तुम्हाला वेग मिळतो पण डीबग करण्याची क्षमता गमावता. तुम्ही एक 'ब्लॅक बॉक्स' तयार करता.
तुमची RAG पाइपलाइन सुधारण्यासाठी, तुम्हाला तीन थरांवर प्रभुत्व मिळवणे आवश्यक आहे:
१. चंकिंग स्ट्रॅटेजी (Chunking Strategy) चंक साईज हा एक सिमेंटिक (semantic) निर्णय आहे. जर तुमचे चंक्स ५१२ टोकन्सचे असतील, तर तुम्ही परिच्छेद (paragraphs) रिट्रिव्ह करता. जर तुमच्या प्रश्नांसाठी अनेक परिच्छेदांमधील कल्पना जोडण्याची आवश्यकता असेल, तर तुमचे चंक्स खूप लहान आहेत. चंक्समध्ये किती कॉन्टेक्स्ट (context) प्रवाहित व्हावा, याचा निर्णय तुम्हाला घ्यावा लागेल.
२. एम्बेडिंग मॉडेल्स (Embedding Models) डेंस एम्बेडिंग्स (Dense embeddings) अर्थ समजून घेतात पण अचूक सिंटॅक्स (syntax) गमावतात. एखादे मॉडेल "error 403" आणि "error 404" ला जवळजवळ सारखेच मानू शकते. तुमचे मॉडेल नेमके काय कॅप्चर करते हे तुम्हाला माहित असणे आवश्यक आहे. एका कायदेशीर करारासाठी (legal contract) कोड रिपॉझिटरीपेक्षा वेगळ्या एम्बेडिंग्सची आवश्यकता असते.
३. रिट्रिव्हल विरुद्ध रिकॉल (Retrieval vs. Recall) वेक्टर सर्च संभाव्यतः संबंधित असलेली सर्व माहिती शोधते. याला 'रिकॉल' (recall) म्हणतात. प्रोडक्शन RAG ला 'प्रिसिजन' (precision) ची गरज असते. तुम्हाला दहा सारख्या परिच्छेदांची नाही, तर नेमक्या उत्तराची गरज असते. म्हणूनच तुम्हाला हायब्रिड सर्चची (hybrid search) गरज आहे.
हायब्रिड सर्च डेंस वेक्टर्सना कीवर्ड मॅचिंग (BM25) सोबत एकत्रित करते.
- शुद्ध सिमेंटिक सर्च अचूक कोड किंवा आयडी (IDs) मिस करते.
- शुद्ध कीवर्ड सर्च संकल्पनात्मक अर्थ (conceptual meaning) मिस करते.
- हायब्रिड सर्च सत्य शोधण्यासाठी दोन्हीचा भार (weight) संतुलित करते.
योग्य वेट (weight) कोणत्याही मॅन्युअलमध्ये मिळत नाही. तुमच्या विशिष्ट डेटाचे परीक्षण करून तुम्हाला ते शोधवे लागेल.
जादूवर अवलंबून राहणे थांबवा. जर तुम्ही शून्यातून (from scratch) एक बेसिक RAG पाइपलाइन तयार करू शकत नसाल, तर तुम्ही 'एजेंटिक RAG' (Agentic RAG) साठी तयार नाही आहात. जेव्हा तुम्हाला मूलभूत गोष्टी समजत नाहीत, तेव्हा गुंतागुंत वाढते.
तुमच्या पुढच्या प्रोजेक्टपूर्वी या चार गोष्टी करा:
- चंकिंग बेंचमार्क करा. तीन वेगवेगळ्या साईज तपासा. top-1 आणि top-5 मधील प्रिसिजन मोजा.
- रिअल डेटासह एम्बेडिंग्स तपासा. सिंथेटिक टेस्ट्स वापरू नका. तुमच्या प्रत्यक्ष युजर क्वेरीज (user queries) वापरा.
- फेल्युअर लॉग करा (Log failures). दोन आठवड्यांसाठी, अयशस्वी होणारी प्रत्येक क्वेरी लॉग करा. तुमचा सर्च काय मिस करतोय, त्यातील पॅटर्न शोधा.
- एकदा तरी BM25 लागू करा. जरी तुम्ही नंतर लायब्ररी वापरली तरी, तुम्हाला कीवर्ड बेसलाइन समजून घेणे आवश्यक आहे.
लायब्ररीज तुमचा वेळ वाचवतात. समजून घेणे तुम्हाला विश्वासार्हता (reliability) देते.
Optional learning community: https://t.me/GyaanSetuAi