RAG चंकिंग रणनीतियाँ: बेहतर रिट्रीवल के लिए दस्तावेज़ों को विभाजित करें

अधिकांश RAG विफलताएं इस कारण होती हैं कि आप अपने दस्तावेज़ों को कैसे विभाजित करते हैं।

यदि आपका रिट्रीवल (retrieval) खराब है, तो सबसे पहले अपना प्रॉम्प्ट या अपना LLM न बदलें। अपने चंक्स (chunks) को देखें। यदि सही जानकारी आपके डेटाबेस में है लेकिन सिस्टम उसे नहीं ढूंढ पा रहा है, तो संभवतः आपकी चंकिंग रणनीति ही समस्या है।

खराब चंकिंग से तीन मुख्य समस्याएं होती हैं:

बाउंड्री ट्रंकेशन (Boundary truncation): उत्तर वाला एक वाक्य दो टुकड़ों में विभाजित हो जाता है। किसी भी टुकड़े में क्वेरी से मेल खाने के लिए पर्याप्त जानकारी नहीं होती है। • कॉन्टेक्स्ट डाइल्यूशन (Context dilution): एक बड़े चंक में एक प्रासंगिक वाक्य और दस बेकार वाक्य होते हैं। अतिरिक्त टेक्स्ट सिमेंटिक सिग्नल (semantic signal) को कमजोर कर देता है। • मेटाडेटा की कमी (Missing metadata): चंक्स में उनके स्रोत या तिथि के बारे में जानकारी की कमी होती है, जिससे फ़िल्टर्ड सर्च असंभव हो जाता है।

अपने पाइपलाइन को ठीक करने के लिए इन चार रणनीतियों का उपयोग करें:

  1. फिक्स्ड-साइज़ चंकिंग (Fixed-size chunking) रिपोर्ट या लेखों जैसे लंबे, निरंतर गद्य (prose) के लिए सबसे अच्छा। • 256 से 512 टोकन का उपयोग करें। • वाक्यों के टूटने से रोकने के लिए 10% से 15% ओवरलैप सेट करें।

  2. सिमेंटिक चंकिंग (Semantic chunking) FAQs या सपोर्ट डॉक्यूमेंट्स जैसे उच्च-घनत्व वाले टेक्स्ट के लिए सबसे अच्छा। • यह टोकन काउंट के बजाय विषय परिवर्तन (topic shifts) के आधार पर टेक्स्ट को विभाजित करता है। • यह पूर्ण विचारों को एक साथ रखता है।

  3. स्ट्रक्चरल चंकिंग (Structural chunking) तकनीकी दस्तावेज़ों, Markdown, या HTML के लिए सबसे अच्छा। • यह हेडर (H1, H2, H3) के आधार पर टेक्स्ट को विभाजित करता है। • यह मेटाडेटा जोड़ता है ताकि आप सेक्शन के आधार पर रिट्रीवल को फ़िल्टर कर सकें।

  4. पदानुक्रमित (Hierarchical/Parent-Child) चंकिंग उन प्रोडक्शन सिस्टम के लिए सबसे अच्छा जिन्हें सटीकता और कॉन्टेक्स्ट दोनों की आवश्यकता होती है। • सटीक वेक्टर सर्च के लिए छोटे चाइल्ड चंक्स (64-128 टोकन) बनाएं। • LLM द्वारा पढ़ने के लिए उन्हें बड़े पैरेंट चंक्स (512-1024 टोकन) से जोड़ें। • यह आपको दोनों दुनियाओं का सर्वश्रेष्ठ अनुभव देता है।

अपना साइज़ कैसे चुनें:

• 128–256 टोकन: फैक्ट-लुकअप और तकनीकी दस्तावेज़ों के लिए अच्छा। • 256–512 टोकन: सामान्य उपयोग के लिए एक ठोस शुरुआती बिंदु। • 512–1024 टोकन: लंबे विश्लेषणात्मक प्रश्नों के लिए उपयोग करें।

सुनहरा नियम: शिप करने से पहले हमेशा अपनी रणनीति का परीक्षण करें।

30 से 50 वास्तविक क्वेरीज़ का एक सेट बनाएं। सही उत्तरों को एनोटेट (annotate) करें। अपने recall@3 को मापें। जब तक आपका recall 80% से ऊपर न हो जाए, तब तक अपना एम्बेडिंग मॉडल (embedding model) न बदलें।

स्रोत: https://dev.to/dishant_sethi/rag-pipeline-chunking-strategies-split-documents-for-better-retrieval-aoe

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