RAG Chunking உத்திகள்: சிறந்தத் தேடுதலுக்காக ஆவணங்களைப் பிரித்தல்
பெரும்பாலான RAG தோல்விகள் உங்கள் ஆவணங்களை நீங்கள் எவ்வாறு பிரிக்கிறீர்கள் என்பதாலேயே ஏற்படுகின்றன.
உங்கள் தேடல் (retrieval) தரம் குறைவாக இருந்தால், முதலில் உங்கள் prompt அல்லது உங்கள் LLM-ஐ மாற்ற வேண்டாம். உங்கள் chunks-களைப் பாருங்கள். சரியான தகவல் உங்கள் தரவுத்தளத்தில் (database) இருந்தும், கணினியால் அதைக் கண்டறிய முடியாவிட்டால், உங்கள் chunking உத்திதான் பெரும்பாலும் பிரச்சனைக்குக் காரணமாக இருக்கலாம்.
தவறான chunking மூன்று முக்கியப் பிரச்சனைகளை ஏற்படுத்துகிறது:
• எல்லைத் துண்டிப்பு (Boundary truncation): பதிலைக் கொண்ட ஒரு வாக்கியம் இரண்டு துண்டுகளாகப் பிரிக்கப்படுகிறது. எந்தத் துண்டிலும் ஒரு வினாவிற்குப் பதிலளிக்கத் தேவையான போதுமான தகவல் இருப்பதில்லை. • சூழல் நீர்த்தல் (Context dilution): ஒரு பெரிய chunk-இல் ஒரு தொடர்புடைய வாக்கியமும், பத்து தேவையற்ற வாக்கியங்களும் இருக்கலாம். இந்த கூடுதல் உரையானது பொருண்மைத் தெளிவை (semantic signal) பலவீனப்படுத்துகிறது. • விடுபட்ட மெட்டாடேட்டா (Missing metadata): Chunks-களில் அவற்றின் மூலம் (source) அல்லது தேதி பற்றிய தகவல் இல்லாததால், வடிகட்டப்பட்ட தேடல் (filtered search) சாத்தியமற்றதாகிறது.
உங்கள் பைப்லைனை (pipeline) சரிசெய்ய இந்த நான்கு உத்திகளைப் பயன்படுத்துங்கள்:
நிலையான அளவு chunking (Fixed-size chunking) அறிக்கைகள் அல்லது கட்டுரைகள் போன்ற நீண்ட, தொடர்ச்சியான உரைப்பகுதிகளுக்கு இது சிறந்தது. • 256 முதல் 512 tokens வரை பயன்படுத்தவும். • வாக்கியங்கள் துண்டிக்கப்படுவதைத் தவிர்க்க 10% முதல் 15% வரை overlap-ஐ அமைக்கவும்.
பொருண்மை சார்ந்த chunking (Semantic chunking) FAQs அல்லது ஆதரவு ஆவணங்கள் (support docs) போன்ற அதிக அடர்த்தி கொண்ட உரைப்பகுதிகளுக்கு இது சிறந்தது. • இது token எண்ணிக்கையை விட, தலைப்பு மாற்றங்களின் (topic shifts) அடிப்படையில் உரையைப் பிரிக்கிறது. • இது முழுமையான கருத்துக்களை ஒன்றாக வைத்திருக்கும்.
கட்டமைப்பு சார்ந்த chunking (Structural chunking) தொழில்நுட்ப ஆவணங்கள், Markdown அல்லது HTML ஆகியவற்றிற்கு இது சிறந்தது. • இது தலைப்புகளின் (H1, H2, H3) அடிப்படையில் உரையைப் பிரிக்கிறது. • இது மெட்டாடேட்டாவைச் சேர்ப்பதால், நீங்கள் ஒரு குறிப்பிட்ட பகுதியை மட்டும் தேட (filter) முடியும்.
படிநிலை (Parent-Child) chunking துல்லியம் மற்றும் சூழல் ஆகிய இரண்டும் தேவைப்படும் உற்பத்தி அமைப்புகளுக்கு (production systems) இது சிறந்தது. • துல்லியமான vector search-க்காகச் சிறிய child chunks (64-128 tokens) உருவாக்கவும். • LLM வாசிப்பதற்காக அவற்றை பெரிய parent chunks (512-1024 tokens)-உடன் இணைக்கவும். • இது உங்களுக்கு இரண்டு சிறப்பம்சங்களையும் ஒரே நேரத்தில் வழங்கும்.
உங்கள் அளவைத் தேர்ந்தெடுப்பது எப்படி:
• 128–256 tokens: உண்மைகளைத் தேடவும் (fact-lookup) மற்றும் தொழில்நுட்ப ஆவணங்களுக்கும் சிறந்தது. • 256–512 tokens: பொதுவான பயன்பாட்டிற்கு ஒரு சிறந்த தொடக்கப் புள்ளி. • 512–1024 tokens: நீண்ட வடிவ பகுப்பாய்வு வினாக்களுக்குப் பயன்படுத்தவும்.
பொன் விதி: உங்கள் உத்தியை பயன்பாட்டிற்குத் தள்ளுவதற்கு (ship) முன் எப்போதும் சோதித்துப் பாருங்கள்.
30 முதல் 50 நிஜமான வினாவுகளை (queries) உருவாக்கவும். சரியான பதில்களைக் குறிக்கவும் (Annotate). உங்கள் recall@3 அளவை அளவிடவும். உங்கள் recall 80%-க்கு மேல் இருக்கும் வரை உங்கள் embedding model-ஐ மாற்ற வேண்டாம்.
Optional learning community: https://t.me/GyaanSetuAi
