लाभ:
- RAG ले मोडेलको तौल परिवर्तन नगरिकन सन्दर्भ इन्जेक्सन गर्छ र 'ओपन बुक परीक्षा' तर्कसँग काम गर्छ भनी व्याख्या गर्दै
- लागत, समयबद्धता र उपयोग परिदृश्य अनुसार फाइन-ट्युनिङ र लामो सन्दर्भ दृष्टिकोणसँग RAG तुलना गर्दै
- अनुक्रमणिका र क्वेरी चरणहरू समावेश गरी सामान्य RAG पाइपलाइनका चरणहरू सूचीबद्ध गर्दै
कुनै भाषा मोडेल जतिसुकै शक्तिशाली किन नहोस् (आर्टिफिसियल इन्टेलिजेन्स जसले पाठ बुझ्छ र उत्पादन गर्छ; हामी यसलाई अबदेखि छोटकरीमा मोडेल भन्नेछौँ), यसले तपाइँको कम्पनीले हिजो हस्ताक्षर गरेको सम्झौता, तपाइँको आन्तरिक विकी (आन्तरिक ज्ञान आधार) पृष्ठ, वा आज बिहान प्रकाशित विज्ञप्ति नोट थाहा छैन। यो प्रशिक्षित भएको मिति सम्मको मोडेल सामान्य ज्ञानमा सीमित छ; यसलाई "शिक्षा कट-अफ मिति" भनिन्छ। RAG (Retrieval-Augmented Generation) ले ठ्याक्कै यो खाली ठाउँ भर्छ: यसले प्रश्नसँग सम्बन्धित कम्पनीका कागजातहरू फेला पार्छ, यसलाई सन्दर्भको रूपमा मोडेललाई दिन्छ (अर्थात, उत्तर उत्पादन गर्दा यसले पढ्ने अतिरिक्त पाठ) र यस सन्दर्भमा आधारित उत्तर उत्पादन गर्दछ।
यस एकाईमा, हामी स्पष्ट रूपमा देख्नेछौं कि RAG के हो, कुन विकल्पहरूमा यसलाई प्राथमिकता दिइन्छ, र सामान्य RAG पाइपलाइनको चरणहरू। सबै पछिल्ला एकाइहरूले यस नक्साका भागहरूलाई एक एक गरेर गहिरो बनाउनेछन्।
RAG को आधारभूत विचार: खुला पुस्तक परीक्षा
RAG लाई एक वाक्यमा व्याख्या गरौं: "पहिले सान्दर्भिक कागजात फेला पार्नुहोस्, त्यसपछि मोडेललाई त्यो कागजात पढ्नुहोस् र तदनुसार जवाफ छाप्नुहोस्।"
सबैभन्दा उपयोगी समानता यो हो: RAG ले मोडेललाई "बंद पुस्तक परीक्षा" बाट "खुला पुस्तक परीक्षा" मा सार्छ। बन्द पुस्तक परीक्षामा विद्यार्थीले स्मरणशक्तिबाट मात्रै जवाफ दिन्छन्; तपाईलाई सम्झना नहुने कुराहरू बनाउने उच्च जोखिम हुन्छ। खुला किताबको परीक्षामा विद्यार्थीले आफ्नो अगाडि राखिएको स्रोत हेरेर उत्तर दिन्छन् । RAG मा, मोडेलले अब आफ्नै मेमोरीबाट जवाफ दिँदैन, तर हालको र विशिष्ट पाठबाट तपाईंले यसलाई दिनुहुन्छ।
महत्वपूर्ण बिन्दु: RAG ले मोडेलको वजन परिवर्तन गर्दैन, अर्थात्, मोडेलले सिकेको अरबौं संख्यात्मक मापदण्डहरू। तपाईंले मोडेललाई पुन: तालिम दिनुहुन्न। प्रत्येक प्रश्नको लागि, तपाइँ त्यस प्रश्नसँग सान्दर्भिक पाठको टुक्राहरू प्रम्प्टमा इन्जेक्ट गर्नुहुन्छ (निर्देशन पाठ मोडेलमा पठाइयो)। त्यसैले कागजात अद्यावधिक हुँदा तपाईंले मोडेललाई पुन: तालिम दिनु पर्दैन; तपाइँ केवल खोज डाटाबेसमा सान्दर्भिक रेकर्ड ताजा गर्नुहोस्।
संकेत: दुई प्रश्नहरूले RAG को गुणस्तर निर्धारण गर्दछ: (1) के तपाईंले सही कागजात फेला पार्नुभयो? (2) के मोडेलले यसलाई सही रूपमा पढ्यो? पहिलो "पुनर्प्राप्ति गुणस्तर" हो, दोस्रो "पुस्ता गुणस्तर" हो। दुई अलग मापन र सुधार गरिएको छ।
RAG, फाइन-ट्यूनिङ वा लामो सन्दर्भ?
संगठनात्मक समस्याको समाधान खोज्दा तीनवटा मार्गहरू प्रायः भ्रमित हुन्छन्। तिनीहरूको भिन्नता स्पष्ट गरौं। फाइन-ट्युनिङले तपाइँको डेटाको साथ मोडेलको वजन अद्यावधिक गर्दैछ र यसलाई नयाँ व्यवहार/शैली सिकाउँदैछ। लामो सन्दर्भ भनेको कुनै पनि चयन बिना प्रम्प्टमा सबै कागजातहरू भर्नु हो।
दृष्टिकोण
के गर्छ
यो कहिले उपयुक्त छ?
लागत / जोखिम
RAG
सन्दर्भको रूपमा सान्दर्भिक कागजात इन्जेक्ट गर्दछ
बारम्बार परिवर्तन, व्यापक, विशिष्ट जानकारी
कम; अपडेट गर्न सजिलो, स्रोत उद्धृत गर्न सकिन्छ
फाइन ट्युनिङ
नयाँ डेटाको साथ वजनहरू अद्यावधिक गर्दछ
निश्चित शैली/ढाँचा/भाषा शिक्षण
उच्च; प्रत्येक अपडेटको साथ पुन: प्रशिक्षण आवश्यक छ
लामो सन्दर्भ मात्र
प्रम्प्टमा सबै कागजातहरू भर्नुहोस्
सानो, स्थिर कागजात सेट
टोकन लागत र "मध्य भाग गुमाउने" को जोखिम बढ्छ
नियमको रूपमा: फाइन-ट्यूनिङले मोडेललाई कसरी कुरा गर्ने भनेर सिकाउँछ; RAG ले मोडेललाई के जान्ने भनेर बताउँछ। धेरैजसो उद्यम परिदृश्यहरूमा, RAG लाई पहिले प्रयास गरिन्छ किनभने यो सस्तो, अपडेटयोग्य छ, र जवाफको स्रोत देखाउन सक्छ। लामो सन्दर्भ उचित छ यदि कागजात सेट साँच्चै सानो र निश्चित छ (जस्तै एकल 20-पृष्ठ म्यानुअल); तर हजारौं पृष्ठहरूको साथ, यो महँगो छ र मोडेलले लामो पाठको बीचमा जानकारी गुमाउन सक्छ।
एक विशिष्ट RAG पाइपलाइन
RAG मा दुई मुख्य चरणहरू हुन्छन्: अनुक्रमणिका (तयारी, एक पटक वा आवधिक रूपमा गरिएको) र क्वेरी (प्रत्येक प्रयोगकर्ता प्रश्नमा चल्छ)।
चरणबद्ध अनुक्रमणिका (अफलाइन, प्रयोगकर्ताको प्रतीक्षा बिना):
- सङ्कलन गर्नुहोस्: स्रोतहरू (पीडीएफ, विकी, टिकट प्रणाली, डाटाबेस, इमेल) बाट कागजातहरू तान्नुहोस्।
- Chunking: लामो पाठलाई साना व्यवस्थित टुक्राहरूमा तोड्नुहोस्।
- इम्बेड: प्रत्येक भागलाई इम्बेडिङमा रूपान्तरण गर्नुहोस् (पाठको अर्थ बोक्ने नम्बर भेक्टर)।
- बचत गर्नुहोस्: भेक्टर डाटाबेसमा पाठ र मेटाडाटा (स्रोत, मिति, प्राधिकरण जानकारी) संग भेक्टरहरू लेख्नुहोस्।
चरण-दर-चरण क्वेरी (अनलाइन, प्रयोगकर्ता पर्खिरहेको बेला):
- प्रयोगकर्ताको प्रश्नलाई इम्बेडिङमा रूपान्तरण गर्नुहोस्।
- भेक्टर डाटाबेसबाट सबैभन्दा समान भागहरू पुन: प्राप्त गर्नुहोस्।
- यी टुक्राहरू + प्रश्नलाई प्रम्प्ट टेम्प्लेटमा राख्नुहोस्।
- मोडेलबाट प्रासंगिक जवाफ र यसको स्रोतहरू प्राप्त गर्नुहोस्।
# सोधपुछ चरणको वैचारिक रूपरेखा (भाषामा निर्भर छैन) प्रश्न = "कति दिनको वार्षिक बिदा?" Question_vektor = एम्बेड(प्रश्न) भागहरू = vektor_db.search(question_vektor, top_k=4) # सबैभन्दा मिल्दो भाग प्रोम्प्ट = f"""" "प्रश्नको जवाफ दिनुहोस् सन्दर्भ प्रयोग गरेर प्रश्नको जवाफ दिनुहोस् यदि कुनै उत्तरको बारेमा जानकारी छैन भने CONTEXT मा भन्नुहोस्।" फिटिंग।CONTEXT:{parts}प्रश्न: {प्रश्न}"""उत्तर = model.uret(प्रम्प्ट) # उदाहरण। मोडेल: claude-opus-4-8
यो प्रवाह प्रत्येक चरणको नक्सा हो, जसलाई हामी अर्को एकाइहरूमा एक-एक गरेर अनप्याक गर्नेछौं।
कमजोर प्रम्प्ट / बलियो प्रम्प्ट
एउटै RAG सन्दर्भको साथ पनि, प्रम्प्टको गुणस्तरले जवाफ परिवर्तन गर्दछ।
कमजोर प्रम्प्ट (मोडल फिटिंगको लागि खुला, स्रोतहरू आवश्यक पर्दैन):
यो जानकारी प्रयोग गर्नुहोस् र वार्षिक बिदा भन्नुहोस्: {parts}। प्रश्न: {प्रश्न}
शक्तिशाली प्रम्प्ट (ग्राउन्डिङ + "मलाई थाहा छैन" अनुमति + संसाधन अनुरोध):
तलको CONTEXT मा आधारित मात्र जवाफ दिनुहोस्। यदि सन्दर्भमा कुनै स्पष्ट जवाफ छैन भने, "मैले कागजातमा यस बारे जानकारी फेला पार्न सकेन" लेख्नुहोस्; अनुमान नगर्नुहोस्। तपाईंले आफ्नो जवाफको अन्त्यमा भर परेको टुक्राको [स्रोत: फाइल_नाम] ट्याग थप्नुहोस्। CONTEXT: {pieces} प्रश्न: {प्रश्न}
तीन मिनी केसहरू
केस १ - मानव संसाधन सहायक (मानव संसाधन)। एक कम्पनीसँग 340-पृष्ठ HR ह्यान्डबुक छ र कर्मचारीहरूले एक दिन औसत 90 प्रश्नहरू सोध्छन्। फाइन-ट्युनिङ प्रयास गरिएको थियो, तर म्यानुअल मासिक अद्यावधिक भएकोले, प्रत्येक पटक पुन: प्रशिक्षण आवश्यक थियो; लागत प्रति महिना हजारौं डलर पुग्यो। RAG मा स्विच गरेपछि, अद्यावधिकलाई "कागजात पुन: अनुक्रमणिका" चरण (मिनेट) मा घटाइयो र सही-उत्तर दर 71% बाट म्यानुअल मापनमा 93% मा बढ्यो।
केस 2 - ग्राहक समर्थन। समर्थन टोलीसँग 12,000 समाधान गरिएका टिकटहरू र 800 मद्दत लेखहरू छन्। म्यानुअल रूपमा जवाफ खोज्न प्रतिनिधिलाई औसत ४ मिनेट लाग्छ। जब RAG सहायकले 5 सबैभन्दा सान्दर्भिक रेकर्डहरू ल्याए र ड्राफ्ट प्रतिक्रिया उत्पादन गरे, समय 40 सेकेन्डमा घटाइयो; तर टोलीले "गलत लेख ल्याएर अनिश्चित देखिने" जोखिम महसुस गर्यो र स्रोतलाई अनिवार्य रूपमा उद्धृत गर्यो।
मामला 3 - कानून। एक ठेक्का टोलीले सोध्यो "कुन सम्झौतामा 5 वर्ष सम्म गोप्यता खण्ड छ?" उसले प्रश्न सोध्छ। लामो सन्दर्भ परीक्षणमा, 60 अनुबंधहरू एकल प्रम्प्टमा भरिएका थिए; मोडेलले बीचको दुई अनुबंध छोड्यो। जब केवल सान्दर्भिक वस्तुहरू RAG सँग पेश गरियो, टोकन लागत 80% ले घट्यो र छुटेको छुटेको रिसेट गरियो।
RAG किन आवश्यक छ?
- वर्तमानता: तपाइँ प्रशिक्षण कट-अफ मिति पछि जानकारी पहुँच गर्नुहुन्छ।
- विशेष जानकारी: तपाईंको आन्तरिक कागजातहरू कुनै पनि मोडेलको प्रशिक्षणमा समावेश गरिएको छैन; तपाईं मात्र दिन सक्नुहुन्छ।
- प्रमाणीकरण: तपाईले उत्तरको स्रोत (उद्धरण) उद्धृत गर्न सक्नुहुन्छ - लेखा परीक्षा र विश्वासको लागि आवश्यक।
- हेलुसिनेशन नियन्त्रण: यो मोडेल बनाउनु भन्दा अगाडि राखिएको पाठमा निर्भर गर्दछ।
- लागत: यो फाइन-ट्यूनिंग भन्दा सञ्चालनमा राख्न धेरै सस्तो र छिटो छ।
सावधानी: RAG जादू होइन। यदि तपाईंले गलत टुक्रा ल्याउनुभयो भने, मोडेल "आत्मविश्वास" हेर्दै गलत जवाफमा आइपुग्छ। "Retrieval quality = RAG गुणस्तर" वाक्यांशलाई ध्यानमा राख्नुहोस्।
सामान्य गल्तीहरू
- फाइन-ट्युनिङको लागि RAG लाई गलत गर्दै: RAG ले तौल परिवर्तन गर्दैन; यसले प्रसंग मात्र थप्छ। यी दुईलाई भ्रमित गर्दा गलत वास्तुकला छनोट हुनेछ।
- "मलाई थाहा छैन" लाई अनुमति नदिईएको: यदि प्रम्प्टले खाली ठाउँ भर्नको लागि मोडेललाई खाली छोड्छ भने, यसले बनाउँछ।
- स्रोतहरू उद्धृत गर्दैन: स्रोत बिनाको जवाफ जाँच गर्न सकिँदैन; प्रयोगकर्ताले गल्ती याद गर्न सक्दैन।
- सबै कुरालाई एउटै प्रम्प्टमा क्र्याम गर्दै: लामो सन्दर्भ सस्तो देखिन्छ तर महँगो छ र मध्य जानकारी छुटेको छ।
- पुन: प्राप्ति मापन नगरी पुस्तामा अड्किने: यदि जवाफ खराब छ भने, पहिले सोध्नुहोस् "के सहि भाग आइपुग्यो?" सोध्नु पर्छ।
संक्षेपमा
- RAG एउटा दृष्टिकोण हो जसले प्रश्नसँग सान्दर्भिक कागजातहरूलाई सन्दर्भको रूपमा मोडेलमा इन्जेक्ट गर्छ; वजन परिवर्तन गर्दैन ("खुला पुस्तक परीक्षा")।
- फाइन-ट्यूनिंगले शैली/ढाँचा सिकाउँछ, RAG ले हालको र विशिष्ट जानकारी दिन्छ; लामो सन्दर्भ साना निश्चित सेटहरूको लागि राम्रोसँग काम गर्दछ। धेरैजसो परिदृश्यहरूमा, RAG पहिले प्रयास गरिन्छ।
- पाइपलाइनमा दुई चरणहरू छन्: अफलाइन अनुक्रमणिका (चङ्क + इम्बेडिङ + बचत) र अनलाइन क्वेरी (पुन: प्राप्ति + प्रम्प्ट + उत्पन्न)।
- RAG ले समयबद्धता, विशिष्ट जानकारी, प्रमाणीकरण, भ्रम नियन्त्रण, र कम लागत प्रदान गर्दछ।
- प्रणालीको गुणस्तर सीधा पुन: प्राप्तिको गुणस्तरमा निर्भर गर्दछ: गलत टुक्रा भनेको गलत जवाफ हो।
आवेदन कार्य
तपाईंको आफ्नै टोलीबाट जानकारीको वास्तविक स्रोत छनौट गर्नुहोस् (जस्तै प्रक्रिया कागजात वा FAQ पृष्ठ)। (1) यस स्रोतको बारेमा 5 तथ्यात्मक प्रश्नहरू लेख्नुहोस्। (२) कागजातको कुन भागमा प्रत्येक प्रश्नको सहि उत्तर समावेश छ भनेर ध्यान दिनुहोस् - यो तपाईंको "सुनौलो जवाफ" सूची बन्छ। (३) माथिको "बलियो प्रम्प्ट" टेम्प्लेट प्रयोग गरेर, म्यानुअल रूपमा सन्दर्भको रूपमा सान्दर्भिक खण्ड टाँस्नुहोस् र मोडेल सोध्नुहोस्। (४) मोडेलले दिएको जवाफलाई सुनौलो उत्तरसँग तुलना गर्नुहोस् र सही/गलतको रूपमा चिन्ह लगाउनुहोस्। यो मूल्याङ्कनको पहिलो म्यानुअल संस्करण हो जुन तपाईंले भविष्यका एकाइहरूमा स्वचालित गर्नुहुनेछ।
चेकलिस्ट
- [ ] म एक वाक्यमा व्याख्या गर्न सक्छु कि RAG ले तौल परिवर्तन गर्दैन, यसले केवल सन्दर्भ थप्छ।
- [ ] म RAG, फाइन ट्युनिङ र लामो सन्दर्भ र कुन बेला उपयुक्त छ भनी छुट्याउन सक्छु।
- [] म अनुक्रमणिका (कलेक्ट-श्रेड-एम्बेड-बचत) र क्वेरी (इम्बेड-फेच-प्रम्प्ट-जनरेट) चरणहरू क्रमबद्ध रूपमा गणना गर्न सक्छु।
- [ ] मलाई थाहा छ किन मैले प्रम्प्टमा "यदि यो सन्दर्भमा छैन भने, मलाई थाहा छैन" र "स्रोत उद्धृत गर्नुहोस्" निर्देशनहरू थपे।
- [ ] म "पुनप्राप्ति गुणस्तर = RAG गुणस्तर" को सिद्धान्तलाई मेरो आफ्नै मामलामा अनुकूलन गर्न सक्छु।