युनिट 3 / 12

नॉलेज बेसमधून उत्तरे तयार करणे (आरएजीचा परिचय)

नफा:

  • ज्ञान-आधारित पिढी (RAG) चे तर्क समजून घेणे आणि ते भ्रम का कमी करते
  • केवळ प्रदान केलेल्या स्त्रोत दस्तऐवजांच्या आधारावर मॉडेलला उद्धरणासह प्रतिसाद देण्याची क्षमता
  • प्रश्न न बनवता ते सुरक्षितपणे हस्तांतरित करून स्त्रोतामध्ये नसलेले प्रश्न व्यवस्थापित करण्याची क्षमता

भाषा मॉडेलला बरेच काही "माहित" असते, परंतु त्याला तुमच्या कंपनीचे आजचे रिटर्न पॉलिसी, तुमची सध्याची किंमत सूची किंवा काल बदललेला तुमचा शिपिंग करार माहित नाही. वाईट म्हणजे, जेव्हा त्याला माहित नसते, तेव्हा तो बरेचदा ते तयार करतो आणि अत्यंत आत्मविश्वासाच्या स्वरात लिहितो. ग्राहक सेवेतील ही एक घातक त्रुटी आहे: मॉडेल म्हणते "30 दिवसांच्या आत परतावा जारी केला जातो" तर तुमची पॉलिसी 14 दिवसांची असू शकते. हे अंतर बंद करणाऱ्या दृष्टिकोनाला RAG: Retrieval-Augmented Generation, म्हणजेच "Retrieval-Augmented Production" असे म्हणतात.

कल्पना सोपी आहे: मॉडेल प्रश्नाचे उत्तर मेमरीमधून नाही, परंतु त्या क्षणी समोर ठेवलेल्या योग्य स्त्रोत दस्तऐवजांवरून देते. प्रथम, प्रश्नाशी संबंधित दस्तऐवजाचा योग्य तुकडा "पुनर्प्राप्ती" आहे, त्यानंतर मॉडेल फक्त त्या तुकड्यावर आधारित उत्तर "व्युत्पन्न" करते. या युनिटमध्ये, तुम्हाला RAG चे तर्क समजतील आणि मॉडेलला कसे लगाम द्यायचा ते शिकाल जेणेकरुन ते फक्त तुम्ही प्रदान केलेल्या सत्यापित स्त्रोताला चिकटून राहतील.

टीप: हे युनिट RAG ची कार्यरत तर्कशास्त्र आणि प्रॉम्प्ट बाजू शिकवते. एंटरप्राइझ-स्केल स्वयंचलित दस्तऐवज पुनर्प्राप्ती प्रणाली (वेक्टर डेटाबेस, इ.) साठी तांत्रिक स्थापना आवश्यक आहे; त्या प्रणालीला योग्य प्रतिसाद देण्यासाठी येथे शिस्त हा आधार आहे.

RAG हेल्युसिनेशन का कमी करते?

हेलुसिनेशन म्हणजे जेव्हा मॉडेल अवास्तव माहिती तयार करते जसे की ती वास्तविक आहे. मॉडेल एक अंतर पाहिल्यावर "शक्य" वाटणारा प्रतिसाद तयार करण्यासाठी प्रोग्राम केलेले आहे; ते खरे आहे की नाही माहीत नाही. RAG ही पोकळी भरते: तुम्ही मॉडेलला प्रश्नासह वास्तविक संबंधित मजकूर द्या आणि "फक्त येथूनच उत्तर द्या" असे म्हणा. अशा प्रकारे मॉडेलला फिट होण्याची "आवश्यकता" नाही.

तीन घटक आहेत:

  • नॉलेज बेस: FAQ, पॉलिसी दस्तऐवज, उत्पादन पुस्तिका, किंमत सूची यासारखे विश्वसनीय मजकूर.
  • पुनर्प्राप्ती: प्रश्नाचे उत्तर असलेले कागदपत्र शोधणे आणि ते मॉडेलला देणे.
  • मर्यादित आवृत्ती: मॉडेल केवळ पुरवलेल्या भागावर आधारित कोटसह प्रतिसाद देते.

स्टेप बाय स्टेप: स्त्रोताला विश्वासू प्रतिसाद

  1. स्त्रोत तयार करा. ज्या मजकूरावर प्रतिसाद आधारित असेल (धोरण, FAQ) स्पष्ट आणि अद्ययावत स्वरूपात शोधा.
  2. प्रॉम्प्टमध्ये स्त्रोत एम्बेड करा. मजकूर <source> सारख्या टॅगमध्ये ठेवा.
  3. निष्ठा नियम लिहा. "फक्त स्त्रोताकडून मिळालेली माहिती वापरा; स्त्रोतापासून दूर जाऊ नका."
  4. हवाला द्यावा. उत्तर कोणत्या विभागावर आधारित आहे हे त्याला/तिला सूचित करू द्या.
  5. संसाधन नसलेले वर्तन ओळखा. जर उत्तर स्त्रोतामध्ये नसेल, तर त्याला "माझ्याकडे ही माहिती नाही" असे म्हणू द्या आणि पुढे द्या.
  6. सत्यापित करा. ज्याच्यावर आधारित आहे त्या मूळ वाक्याशी उत्तराची तुलना करून त्याची पुष्टी करा.

कॉपी करण्यायोग्य प्रॉम्प्ट्स

मूळ स्त्रोतावर आधारित प्रतिसाद प्रॉम्प्ट:

भूमिका: तुम्ही ग्राहक समर्थन सहाय्यक आहात. खालील <स्रोत>ब्लॉकमधील माहितीच्या आधारेच प्रश्नाचे उत्तर द्या. तुमच्या सामान्य ज्ञानातून स्रोत, अंदाज किंवा उत्तरात नसलेली कोणतीही माहिती जोडू नका. तुमच्या उत्तराच्या शेवटी तुम्ही विसंबून असलेला विभाग "[स्रोत: ...]" या स्वरूपात जोडा. जर उत्तर स्त्रोतामध्ये नसेल तर खालील लिहा: "माझ्याकडे या विषयावर निश्चित माहिती नाही, मी तुम्हाला योग्य उत्तर देऊ शकेल अशा अधिकाऱ्याकडे पाठवत आहे."<source>{{policy_or_faq_text }}</source>प्रश्न: {{ customer_question }}

मल्टी-सोर्सच्या बाबतीत, ते कोणत्या दस्तऐवजावर आधारित आहे हे दर्शविण्याची सूचना:

खाली क्रमांकित अनेक संसाधने आहेत. प्रश्नाचे उत्तर देताना, तुम्ही वापरलेल्या स्त्रोताची संख्या सांगा, जसे की [स्रोत 2]. एकापेक्षा जास्त स्रोत तुमचा विरोध करत असल्यास, स्पष्टपणे सांगा आणि सांगा की तुम्ही कोणते अधिक अद्ययावत आहे ते विचारावे.<sources>1) {{ source_1 }}2) {{ source_2 }}3) {{ source_3 }}</sources>प्रश्न: {{ customer_question }}

विना-स्रोत प्रश्न सुरक्षितपणे व्यवस्थापित करणारी सूचना:

जर प्रश्नाचे उत्तर अंशतः स्त्रोतामध्ये सापडले असेल तर: स्त्रोताने कव्हर केलेल्या भागाचे उत्तर द्या आणि उर्वरित भागासाठी "हा तपशील स्त्रोतामध्ये नाही" असे म्हणा. अंदाज करून गहाळ भाग कधीही भरू नका.

प्रॉम्प्ट जे प्रतिसादाचे क्लायंट भाषेत भाषांतर करते, परंतु स्त्रोताशी सत्य राहते:

स्त्रोतातील अधिकृत/तांत्रिक अभिव्यक्ती ग्राहकाला समजेल अशा सोप्या भाषेत अनुवादित करा, परंतु अर्थ आणि संख्यात्मक मूल्ये (दिवस, रक्कम, दर) बदलू नका. उदाहरणार्थ, "14 कॅलेंडर दिवस" ​​ते "सुमारे दोन आठवडे" पूर्ण करणे; पूर्ण मूल्य ठेवा.

कमकुवत प्रॉम्प्ट / मजबूत प्रॉम्प्ट

कमकुवत प्रॉम्प्ट

शक्तिशाली प्रॉम्प्ट

"आमच्या रिटर्न पॉलिसीबद्दल सांगा"

एम्बेड स्त्रोत + "केवळ येथे उत्तर द्या" + विनंती कोट

मॉडेलच्या मेमरीमधून उत्तर (कदाचित चुकीचे)

तुमच्या वर्तमान दस्तऐवजातून उत्तर द्या

जर ते स्त्रोतामध्ये नसेल तर तो ते तयार करतो

"माझ्याकडे ही माहिती नाही" असे तो म्हणतो आणि पुढे करतो.

संख्या गोलाकार आणि विकृत करू शकतात

दिवस/रक्कम/दर तंतोतंत राखतो

फरक असा आहे की मजबूत प्रॉम्प्ट मॉडेलला अँकर (स्रोत मजकूर) आणि बंदी (स्त्रोत सोडणे) देते. मॉडेल आता स्मृतीतून बोलत नाही, तर त्याच्या समोरील वास्तवातून बोलतो.

तीन मिनी केसेस

केस 1 - जुना पॉलिसी ट्रॅप. "30 दिवसांत परतावा स्वीकारला," एका स्टोअरच्या बॉटने क्रेडिटशिवाय चालवताना सांगितले; मात्र, कंपनीने हा कालावधी 14 दिवसांवर आणला. RAG इंस्टॉलेशनमधील स्रोतामध्ये अपडेट केलेला पॉलिसी मजकूर जोडला गेल्यावर, बॉट आता "१४ कॅलेंडर दिवस [स्रोत: रिटर्न पॉलिसी, लेख २]" प्रतिसाद देतो. खोट्या आश्वासनांमुळे निर्माण होणारे परताव्याचे वाद पुन्हा सेट करण्यात आले आहेत.

केस 2 - विरोधाभास पकडणे. एका ग्राहकाने शिपिंग खर्चाबद्दल विचारले. जुन्या आणि नवीन दोन्ही किंमत याद्या स्त्रोत म्हणून सिस्टममध्ये प्रविष्ट केल्या गेल्या. मल्टी-सोर्स प्रॉम्प्टबद्दल धन्यवाद, मॉडेलने म्हटले, "दोन स्त्रोत वेगवेगळ्या किंमती देतात (49 TL आणि 59 TL); मला सध्याची पुष्टी करणे आवश्यक आहे" आणि समस्या मानवापर्यंत पोहोचवली. ग्राहकाला चुकीची रक्कम सांगण्याऐवजी त्यांनी अनिश्चितता प्रामाणिकपणे सांगितली.

केस 3 - आंशिक प्रतिसाद शिस्त. "तुम्ही उत्पादन परदेशात पाठवता आणि सीमाशुल्क कोण भरतो?" प्रश्नात, स्त्रोताने फक्त एवढेच सांगितले की शिपमेंट केले आहे, कर कोणी भरला याबद्दल काहीही नाही. मॉडेल म्हणाली, "होय, परदेशात शिपिंग केले जाते [स्रोत: कार्गो FAQ]. तथापि, सीमा शुल्क कोण भरतो हे या दस्तऐवजात नमूद केलेले नाही; हे स्पष्ट करण्यासाठी मी तुम्हाला अधिकाऱ्याकडे पाठवत आहे." अर्ध-सत्य, अर्धवट बनावट उत्तराऐवजी, त्याने एक प्रामाणिक आणि आत्मविश्वासपूर्ण आउटपुट तयार केले.

टीप: तुमच्या नॉलेज बेसच्या सत्य आवृत्तीचा सर्वात वर्तमान आणि एकमेव स्रोत ठेवा. तीन स्वतंत्र कागदपत्रांमध्ये समान माहिती (उदा. परतावा कालावधी) वेगळ्या पद्धतीने लिहिणे हा RAG चा सर्वात मोठा शत्रू आहे; मॉडेल कोणत्याकडे पाहते यावर अवलंबून भिन्न प्रतिसाद देते. प्रथम तुमचे दस्तऐवज डुप्लिकेट करा, नंतर ते स्वयंचलित करा.

पडताळणी: स्त्रोत अस्तित्त्वात असल्याने आराम करू नका

RAG मोठ्या प्रमाणात भ्रम कमी करते परंतु ते रीसेट करत नाही. मॉडेल कधीकधी स्त्रोताचा चुकीचा अर्थ लावू शकतो, दोन वाक्ये मिसळू शकतो किंवा स्त्रोतामध्ये नसलेले "निष्कर्ष" काढू शकतो. म्हणूनच उद्धरणाची आवश्यकता महत्त्वाची आहे: ज्या विभागावर उत्तर आधारित असल्याचा दावा केला आहे तो विभाग उघडा आणि ते प्रत्यक्षात तसे म्हणते का ते तपासा. विशेषत: संख्या (दिवस, रक्कम, दर) आणि अटी (अपवाद, अट) असलेल्या प्रतिसादांमध्ये हे नियंत्रण नॉन-निगोशिएबल आहे.

खबरदारी: जर स्रोत स्वतःच चुकीचा किंवा जुना असेल तर, RAG विश्वासूपणे त्या चुकीची पुनरावृत्ती करते. "मॉडेल स्त्रोताकडून बोलतो" असे म्हणण्याचा अर्थ "मॉडेल बरोबर बोलतो" असा होत नाही; तुम्ही तुमच्या स्रोताच्या चलन आणि अचूकतेसाठी जबाबदार आहात.

प्रतिसादासाठी नॉलेज बेस तयार ठेवणे

स्त्रोत मजकूर कसा लिहिला जातो यावर RAG ची गुणवत्ता मुख्यत्वे अवलंबून असते. मॉडेल सु-संरचित, शीर्षक, एकल-विषय मजकुरापेक्षा अधिक अचूक प्रतिसाद देते. व्यावहारिक सल्ला: तुमची धोरणे लांब, नेस्टेड परिच्छेदांऐवजी लहान, शीर्षक असलेल्या विभागात लिहा; प्रत्येक विभागाला एकाच प्रश्नाचे उत्तर द्या ("रिटर्न कालावधी किती दिवस आहे?", "कोणती उत्पादने परत केली जाऊ शकत नाहीत?"). वारंवार विचारले जाणारे प्रश्न (FAQ) प्रश्न-उत्तर स्वरूपात ठेवल्याने मॉडेलला योग्य भाग शोधणे सोपे होते. राज्य मूल्ये जसे की तारीख, रक्कम आणि दर स्पष्टपणे आणि मजकूरात एकाच ठिकाणी; वेगवेगळ्या विभागात समान संख्या वेगळ्या पद्धतीने लिहिणे मॉडेलला गोंधळात टाकते.

दुसरी महत्त्वाची सवय म्हणजे ज्ञानाचा आधार जिवंत ठेवणे. धोरणे, किंमती आणि जाहिराती बदलतात; स्त्रोत अद्यतनित न केल्यास, मॉडेल सुरक्षितपणे जुन्या सत्याची पुनरावृत्ती करणे सुरू ठेवते. प्रत्येक पॉलिसी बदलासह, स्त्रोत अपडेट करा आणि मॉडेलला बदललेल्या विषयाबद्दल काही चाचणी प्रश्न पुन्हा विचारा की ते योग्य उत्तर देते याची पुष्टी करा. ही लहान परंतु नियमित देखभाल RAG प्रणालीला कालांतराने "शांतपणे चुकीचे" होण्यापासून प्रतिबंधित करते.

सामान्य चुका

  • स्त्रोत दफन न करता आणि मॉडेलच्या स्मरणशक्तीवर अवलंबून न राहता "आमचे धोरण स्पष्ट करा" असे म्हणणे.
  • "फक्त स्त्रोताकडून प्रत्युत्तर" सीमा आणि स्त्रोत नसलेले वर्तन परिभाषित न करणे.
  • कोट/स्रोत संदर्भाची विनंती न करणे आणि उत्तर पडताळण्यायोग्य न सोडणे.
  • एकाच माहितीच्या परस्परविरोधी आवृत्त्या अनेक दस्तऐवजांमध्ये नॉलेज बेसमध्ये ठेवणे.
  • मॉडेलला संख्यात्मक मूल्यांचा गोल/अर्थ सांगण्याची अनुमती देत ​​आहे.
  • स्त्रोत अद्यतनित करणे विसरणे, ज्यामुळे मॉडेलने जुन्या माहितीची विश्वासूपणे पुनरावृत्ती केली.

सारांशात

  • RAG म्हणजे मॉडेल मेमरी ऐवजी वर्तमान स्त्रोत दस्तऐवजातून त्याचे उत्तर तयार करते.
  • भ्रम कमी करण्याचा सर्वात व्यावहारिक मार्ग: स्त्रोत दफन करा, म्हणा "फक्त येथे उत्तर द्या", उद्धरण विचारा.
  • जर उत्तर स्त्रोतामध्ये नसेल, तर एखाद्याने मॉडेलमध्ये बसू नये; त्याने "माझ्याकडे ते नाही" म्हणावे आणि ते दिले पाहिजे.
  • मॉडेलला विरोधाभासी स्त्रोतांची जाणीव करून द्या; तुम्ही संख्यात्मक मूल्ये तंतोतंत जपली आहेत.
  • RAG अचूकता तुमच्या स्रोताच्या वेळेवर अवलंबून असते; नेहमी कोट पुष्टी करा.

अर्ज कार्य

तुमच्या स्वतःच्या व्यवसायातून वास्तविक धोरण मजकूर (रिटर्न, शिपिंग किंवा सदस्यत्व) घ्या आणि वरील मूलभूत RAG प्रॉम्प्टमध्ये स्त्रोत म्हणून एम्बेड करा. नंतर तीन प्रश्न विचारा: (१) एक प्रश्न ज्याचे उत्तर स्त्रोतामध्ये स्पष्ट आहे, (२) एक प्रश्न ज्याचे उत्तर स्त्रोतामध्ये अजिबात नाही, (३) एक प्रश्न ज्याचे उत्तर स्त्रोतामध्ये फक्त अपूर्ण आहे. मॉडेल योग्यरित्या उत्तर देत असल्याचे सत्यापित करा, "माझ्याकडे ते नाही" असे म्हणते आणि प्रामाणिकपणे अंशतः उत्तर आणि गहाळ चिन्हांकित करते. प्रॉम्प्टमध्ये निष्ठा आणि संसाधन नसलेले नियम मजबूत करून विचलित वर्तन सुधारा.

चेकलिस्ट

  • [ ] मी वर्तमान स्त्रोत एम्बेड केला आहे ज्यावर प्रतिसाद प्रॉम्प्टमध्ये आधारित असेल.
  • [ ] मी "फक्त स्त्रोताकडून उत्तर, पलीकडे जाऊ नका" हा नियम जोडला आहे.
  • [ ] मी स्त्रोत संदर्भ / उद्धरण आवश्यक ठेवले आहे.
  • जर उत्तर स्त्रोतामध्ये उपलब्ध नसेल तर मी प्रतिनिधीत्व वर्तन परिभाषित केले आहे.
  • [ ] मला संख्यात्मक मूल्ये तंतोतंत जतन करणे आवश्यक आहे.
  • [ ] मी ज्या स्त्रोत वाक्यावर आधारित आहे त्यावरून उत्तराची पुष्टी केली.