RAG શું છે? Retrieval-Augmented Generation સરળ રીતે સમજાવ્યું
RAG (retrieval-augmented generation) એ AI મૉડેલને તમારી પોતાની માહિતીનો ઉપયોગ કરીને પ્રશ્નોના જવાબ આપવા માટેની એક રીત છે. જ્યારે કોઈ પ્રશ્ન પૂછે છે, ત્યારે તમારી એપ પહેલાં તમારા દસ્તાવેજોમાં સૌથી સંબંધિત ફકરા શોધે છે, પછી તે ફકરા પ્રશ્ન સાથે મૉડેલને આપે છે. મૉડેલ તાલીમ દરમિયાન જે શીખ્યું હોય તેના પર જ આધાર રાખવાને બદલે તે લખાણ પરથી જવાબ લખે છે.
AI સાથે બનાવતી વખતે RAG શા માટે મહત્વનું છે
એક મોટું ભાષા મૉડેલ દુનિયા વિશે સામાન્ય રીતે ઘણું જાણે છે, પરંતુ તમારા બિઝનેસ વિશે કંઈ જાણતું નથી: તમારી કિંમતો, તમારી નીતિઓ, તમારું પ્રોડક્ટ મેન્યુઅલ, ગયા અઠવાડિયાની સપોર્ટ ટિકિટો. તેની તાલીમની એક મર્યાદા પણ હોય છે, તેથી તેને તાજેતરની કોઈ વાત ખબર નથી. છતાં જો તમે પૂછો, તો તે આત્મવિશ્વાસભર્યો, વાજબી લાગતો પણ ખોટો જવાબ આપી શકે છે.
તેને સુધારવા માટે તમારી પાસે ત્રણ મુખ્ય વિકલ્પો છે:
| અભિગમ | તે શું કરે છે | શાના માટે સારું |
|---|---|---|
| બધું પ્રોમ્પ્ટમાં નાખો | દરેક પ્રશ્ન સાથે તમારા બધા દસ્તાવેજ મોકલો | થોડું લખાણ — થોડાં પાનાં |
| RAG | તમારા દસ્તાવેજ શોધો, ફક્ત સંબંધિત ભાગ મોકલો | મોટા અથવા બદલાતા સંગ્રહો: હેલ્પ સેન્ટર, મેન્યુઅલ, નોંધો |
| ફાઇન-ટ્યુનિંગ | ઉદાહરણો પર મૉડેલને વધુ તાલીમ આપો | ટોન, ફોર્મેટ અને વારંવારના કાર્યો — બદલાતી હકીકતો નહીં |
આધુનિક મૉડેલ લાંબા પ્રોમ્પ્ટ સ્વીકારે છે, તેથી નાના FAQ માટે પહેલો વિકલ્પ ઘણી વાર ચાલે છે. જ્યારે તમારી પાસે દરેક વખતે મોકલવા માગતા હો તેના કરતાં વધુ લખાણ હોય ત્યારે RAG ઉપયોગી બને છે — કારણ કે તમે મોકલેલો દરેક શબ્દ ખર્ચ અને સમય લે છે (જુઓ LLM APIs કેવી રીતે ચાર્જ કરે છે).
જો તમે “અમારા દસ્તાવેજો સાથે ચેટ કરો” ફીચર, સપોર્ટ આસિસ્ટન્ટ અથવા આંતરિક નૉલેજ ટૂલ બનાવી રહ્યા હો, તો તમે લગભગ ચોક્કસપણે કોઈ રૂપમાં RAG બનાવી રહ્યા છો.
રોજિંદા જીવનનું ઉદાહરણ
એક ઓપન-બુક પરીક્ષાની કલ્પના કરો. જે વિદ્યાર્થીએ યાદશક્તિથી જવાબ આપવાના હોય તે ભૂલી શકે છે અથવા ઊંધું-સીધું બોલી શકે છે. જે વિદ્યાર્થીને પહેલાં સાચાં પાનાં ફેરવીને વાંચવાની છૂટ હોય અને પછી જવાબ આપવાનો હોય તે ઘણો વધુ વિશ્વસનીય હોય છે — જો તે સાચાં પાનાં શોધી શકે તો.
- વિદ્યાર્થી એ ભાષા મૉડેલ છે.
- પાઠ્યપુસ્તક એ તમારા દસ્તાવેજો છે.
- સાચાં પાનાં ફેરવવા એ શોધ (retrieval) છે.
- તે પાનાં પરથી જવાબ લખવો એ જનરેશન (generation) છે.
RAG એ ઓપન-બુક વર્ઝન છે. અને પરીક્ષાની જેમ, જવાબની ગુણવત્તા મોટા ભાગે એ વાત પર આધારિત છે કે સાચાં પાનાં મળ્યાં કે નહીં.
RAG કેવી રીતે કામ કરે છે, પગલું દર પગલું
સામાન્ય RAG સેટઅપમાં બે તબક્કા હોય છે.
તમારા દસ્તાવેજ તૈયાર કરવા (અગાઉથી થાય છે):
- એકત્ર કરો સ્રોત સામગ્રી — હેલ્પ લેખો, PDF, નીતિઓ, પ્રોડક્ટ ડેટા.
- ચંક કરો: લાંબા દસ્તાવેજોને નાના ટુકડામાં વહેંચો, ઘણી વાર દરેકમાં થોડા ફકરા, જેથી શોધ ફક્ત સંબંધિત ભાગ પાછો આપી શકે.
- દરેક ચંકને એમ્બેડ કરો: તેને એમ્બેડિંગ મૉડેલ પર મોકલો, જે લખાણને એમ્બેડિંગ — સંખ્યાઓની લાંબી યાદી જે તેનો અર્થ પકડે છે — માં ફેરવે છે. સમાન વિષયોનાં લખાણોની સંખ્યાઓ પણ સમાન હોય છે.
- સંગ્રહ કરો ચંક અને તેમના એમ્બેડિંગ એવા ડેટાબેઝમાં જે સમાનતા દ્વારા શોધી શકે (જેને ઘણી વાર વેક્ટર ડેટાબેઝ અથવા વેક્ટર ઇન્ડેક્સ કહેવાય છે).
પ્રશ્નનો જવાબ આપવો (દરેક વખતે થાય છે):
- પ્રશ્નને એમ્બેડ કરો એ જ એમ્બેડિંગ મૉડેલથી.
- શોધો એવા ચંક જેના એમ્બેડિંગ પ્રશ્નના સૌથી નજીક હોય — ધારો કે ટોચના પાંચ.
- પ્રોમ્પ્ટ બનાવો: સૂચનાઓ, શોધેલા ચંક અને પ્રશ્ન.
- જનરેટ કરો: ભાષા મૉડેલ તે ચંકના આધારે જવાબ લખે છે, આદર્શ રીતે કયા ચંક વાપર્યા તે ટાંકીને.
અર્થ દ્વારા શોધ એ જ આ કામ કરાવે છે: “મારા પૈસા પાછા મેળવવા” વિશેનો પ્રશ્ન “રિફંડ નીતિ” શીર્ષકવાળો ચંક શોધી શકે છે, ભલે તેમાં એક પણ શબ્દ સરખો ન હોય.
એક કાર્યરત ઉદાહરણ: જિમનો હેલ્પ આસિસ્ટન્ટ
ધારો કે એક જિમ પાસે 40 હેલ્પ લેખ છે અને તેની વેબસાઇટ પર ચેટ આસિસ્ટન્ટ જોઈએ છે. એક સભ્ય પૂછે છે: “હું પ્રવાસ કરતો હોઉં ત્યારે મારી મેમ્બરશિપ થોભાવી શકું?”
એપ પ્રશ્નને એમ્બેડ કરે છે અને સૌથી નજીકના ત્રણ ચંક શોધે છે. તેમાંનો એક આવું વાંચે છે:
મેમ્બરશિપ ફ્રીઝ: માસિક પ્લાન પરના સભ્યો વર્ષમાં 2 મહિના સુધી
તેમની મેમ્બરશિપ ફ્રીઝ કરી શકે છે. ફ્રીઝ શરૂ થાય તેના
ઓછામાં ઓછા 7 દિવસ પહેલાં ફ્રન્ટ ડેસ્ક પર અથવા એપમાં વિનંતી કરો.
ત્યારબાદ મૉડેલને મોકલાતો પ્રોમ્પ્ટ કંઈક આવો દેખાય છે:
તમે Northside Gym માટેના હેલ્પ આસિસ્ટન્ટ છો.
ફક્ત નીચેના સ્રોતોમાંથી જ જવાબ આપો. જો જવાબ તેમાં ન હોય,
તો કહો કે તમને ખબર નથી અને ફ્રન્ટ ડેસ્કનો સંપર્ક કરવા સૂચવો.
તમે કયો સ્રોત વાપર્યો તે જણાવો.
[સ્રોત 1: મેમ્બરશિપ ફ્રીઝ] માસિક પ્લાન પરના સભ્યો ફ્રીઝ કરી શકે છે...
[સ્રોત 2: તમારી મેમ્બરશિપ રદ કરવી] ...
[સ્રોત 3: ગેસ્ટ પાસ] ...
પ્રશ્ન: શું હું પ્રવાસ દરમિયાન મારી મેમ્બરશિપ થોભાવી શકું?
અને મૉડેલ જવાબ આપે છે: “હા — માસિક પ્લાન પર તમે વર્ષમાં બે મહિના સુધી મેમ્બરશિપ ફ્રીઝ કરી શકો છો. ફ્રીઝ શરૂ થાય તેના ઓછામાં ઓછા 7 દિવસ પહેલાં ફ્રન્ટ ડેસ્ક પર અથવા એપમાં વિનંતી કરો (સ્રોત: મેમ્બરશિપ ફ્રીઝ).”
જિમે કંઈ ફરીથી તાલીમ આપી નથી. જ્યારે તે ફ્રીઝ નીતિ બદલે છે, ત્યારે તે લેખ અપડેટ કરે છે, એપ તે ચંકને ફરીથી એમ્બેડ કરે છે, અને આગલો જવાબ તેને દર્શાવે છે.
મુખ્ય શબ્દો
| શબ્દ | અર્થ |
|---|---|
| LLM | લાર્જ લેંગ્વેજ મૉડેલ — જવાબ લખતું AI. જુઓ LLM એટલે શું. |
| એમ્બેડિંગ | લખાણના અર્થને દર્શાવતી સંખ્યાઓની યાદી. |
| એમ્બેડિંગ મૉડેલ | એમ્બેડિંગ બનાવતું મૉડેલ. સામાન્ય રીતે ચેટ મૉડેલથી અલગ અને ઘણું સસ્તું હોય છે. |
| ચંક | દસ્તાવેજનો એક ભાગ, જે અલગથી શોધી શકાય તેટલા કદનો. |
| વેક્ટર ડેટાબેઝ / વેક્ટર શોધ | સમાન એમ્બેડિંગ ધરાવતી વસ્તુઓ શોધતો સંગ્રહ. કેટલાક સામાન્ય ડેટાબેઝ પણ આ આપે છે — ઉદાહરણ તરીકે Postgres, pgvector એક્સટેન્શન દ્વારા. |
| Top-k | દરેક પ્રશ્ન માટે કેટલા ચંક શોધાય છે. |
| હાઇબ્રિડ શોધ | અર્થ આધારિત શોધને સામાન્ય કીવર્ડ શોધ સાથે જોડવી, જે પ્રોડક્ટ કોડ જેવા ચોક્કસ શબ્દો માટે મદદ કરે છે. |
| કૉન્ટેક્સ્ટ વિન્ડો | એક વિનંતીમાં મૉડેલ વધુમાં વધુ કેટલું લખાણ લઈ શકે. |
| ગ્રાઉન્ડિંગ / ટાંકણો | જવાબને ચોક્કસ શોધેલા સ્રોતો સાથે જોડવો અને તે બતાવવા. |
સામાન્ય ગેરસમજો
- “RAG મૉડેલને મારા ડેટા પર તાલીમ આપે છે.” એવું નથી. મૉડેલમાં કંઈ બદલાતું નથી; તે પ્રશ્ન સમયે ફક્ત વધારાનું લખાણ વાંચે છે.
- “RAG નો અર્થ એ કે હવે ભ્રમણા નહીં.” તેનો અર્થ ઓછી ભ્રમણા છે. જો શોધ સાચો ચંક ચૂકી જાય, અથવા જવાબ તમારા દસ્તાવેજોમાં ન હોય, તો મૉડેલ હજી અનુમાન કરી શકે છે. તેને “મને ખબર નથી” કહેવા સૂચના આપો અને જેના જવાબ તમે જાણો છો તેવા પ્રશ્નો વડે ટેસ્ટ કરો.
- “મને ખાસ વેક્ટર ડેટાબેઝની જરૂર છે.” ઘણી વાર જરૂર નથી. મર્યાદિત ડેટા માટે, તમારા પહેલેથી ધરાવતા ડેટાબેઝ પર વેક્ટર એક્સટેન્શન, અથવા સાદી કીવર્ડ શોધ પણ પૂરતી હોઈ શકે.
- “મોટા ચંક વધુ સારા.” ખૂબ મોટા હોય તો ઘણું અપ્રસ્તુત લખાણ જાય (વધુ ખર્ચ, વધુ ગૂંચવણ); ખૂબ નાના હોય તો ચંક તેને અર્થપૂર્ણ બનાવતો સંદર્ભ ગુમાવે છે. ગોઠવણ કરવી પડશે.
- “બધું અપલોડ કરી દો.” જૂના, ડુપ્લિકેટ કે વિરોધાભાસી દસ્તાવેજો વિરોધાભાસી જવાબો આપે છે. સ્રોત સામગ્રી સાફ કરવી એ ઘણી વાર સૌથી મોટો સુધારો હોય છે.
- “કોઈપણ દસ્તાવેજ કોઈ પણ જોઈ શકે.” ફક્ત જો તમે તે રીતે બનાવ્યું હોય તો. જો કેટલાક દસ્તાવેજો ચોક્કસ વપરાશકર્તાઓ માટે ખાનગી હોય, તો શોધે પૂછનારને જોઈને ફિલ્ટર કરવું જ જોઈએ — નહીંતર આસિસ્ટન્ટ એક ગ્રાહકનો ડેટા બીજા ગ્રાહકને ટાંકી શકે.
તેનો ખર્ચ
RAG સુવિધાના સામાન્ય રીતે ત્રણ ચાલુ ખર્ચ હોય છે: તમારા દસ્તાવેજોનું એમ્બેડિંગ (નાનો, અને મોટે ભાગે એક વખતનો), દરેક પ્રશ્નનું એમ્બેડિંગ (ખૂબ નાનું), અને ભાષા મૉડેલ કૉલ (મુખ્ય ખર્ચ, જે તમે કેટલા ચંક મોકલો છો તેના પ્રમાણમાં વધે છે). ઉપરાંત તમારા ડેટાબેઝ માં સંગ્રહ. તમારો AI પ્રોવાઇડર આ બધું તમારા પોતાના ખાતામાં ચાર્જ કરે છે, તેથી ત્યાં ખર્ચ મર્યાદા સેટ કરો.
તમારા AI બિલ્ડરને શું પૂછવું
- “RAG બનાવતાં પહેલાં તપાસો: શું અમારી સામગ્રી એટલી નાની છે કે તેને સીધી પ્રોમ્પ્ટમાં સમાવી શકાય?”
- “હેલ્પ લેખોને થોડા ફકરાના ચંકમાં વહેંચો, દરેક ચંકનું શીર્ષક અને સ્રોત લિંક રાખો, અને એમ્બેડિંગ અમારા ડેટાબેઝમાં સંગ્રહ કરો.”
- “હાઇબ્રિડ શોધ વાપરો — અર્થ આધારિત અને કીવર્ડ — જેથી પ્રોડક્ટ કોડ હજી મેળ ખાય.”
- “મૉડેલને ફક્ત શોધેલા સ્રોતો પરથી જ જવાબ આપવા, ક્યારે ખબર ન હોય તે કહેવા, અને દરેક જવાબ નીચે સ્રોતો બતાવવા કહો.”
- “ફક્ત તે જ દસ્તાવેજો શોધો જે સાઇન-ઇન થયેલો વપરાશકર્તા જોઈ શકે છે.”
- “જ્યારે પણ દસ્તાવેજ સંપાદિત થાય ત્યારે તેને આપમેળે ફરીથી એમ્બેડ કરો.”
- “AI પ્રોવાઇડર કી સર્વર પર સિક્રેટમાં રાખો, બ્રાઉઝરમાં ક્યારેય નહીં.”
- “દરેક પ્રશ્ન, શોધેલા ચંક અને જવાબ લૉગ કરો, જેથી ખરાબ જવાબોની સમીક્ષા કરી શકાય.”
Mythex માં RAG
Mythex માં તૈયાર નૉલેજ-બેઝ અથવા RAG પ્રોડક્ટ શામેલ નથી. તે તમારી એપની અંદર તેના માટે કોડ લખે છે: તમે તમારા દસ્તાવેજો અને તમારી પોતાની AI પ્રોવાઇડર કી લાવો છો, જે પ્રોજેક્ટ સિક્રેટ તરીકે સંગ્રહાય છે, અને એજન્ટ શોધ તથા ચેટના ભાગો બનાવે છે, સંગ્રહ માટે પ્રોજેક્ટના Postgres ડેટાબેઝ નો ઉપયોગ કરીને. પ્રોવાઇડર વપરાશ તમારા પ્રોવાઇડર ખાતામાં ચાર્જ થાય છે, Mythex ક્રેડિટમાં નહીં. ડૉક્સ એક સરળ AI ફીચરથી શરૂ કરીને, એકવાર તે કામ કરે પછી RAG ઉમેરવાનું સૂચવે છે — જુઓ AI એપ બનાવવી, અને અમારી માર્ગદર્શિકાઓ AI ચેટબોટ એપ કેવી રીતે બનાવવી અને તમારી એપમાં AI ફીચર્સ ઉમેરવા.
પ્રશ્નો
સરળ શબ્દોમાં RAG એટલે શું?
RAG (retrieval-augmented generation) એ AI મૉડેલને તમારી પોતાની માહિતી પરથી જવાબ આપવા બનાવવાની એક રીત છે. મૉડેલ જવાબ આપે તે પહેલાં, તમારી એપ તમારા દસ્તાવેજોમાં પ્રશ્ન સાથે સૌથી વધુ સંબંધિત ફકરા શોધે છે અને તેમને પ્રોમ્પ્ટમાં સામેલ કરે છે, જેથી જવાબ ફક્ત તાલીમ દરમિયાન મૉડેલે જે શીખ્યું હોય તેના પર નહીં, પરંતુ તે લખાણ પર આધારિત હોય.
શું RAG મારા ડેટા પર AI ને તાલીમ આપે છે?
ના. RAG મૉડેલમાં કંઈ બદલતું નથી. પ્રશ્ન પૂછાય ત્યારે તે સંબંધિત લખાણ શોધે છે અને પ્રશ્ન સાથે મૉડેલને આપે છે. તમે કોઈ દસ્તાવેજ અપડેટ કરો તો આગલો જવાબ તરત જ નવું વર્ઝન વાપરી શકે છે.
શું RAG એ ફાઇન-ટ્યુનિંગ જેવું જ છે?
ના. ફાઇન-ટ્યુનિંગ ઉદાહરણો પર વધુ તાલીમ આપીને મૉડેલનું વર્તન બદલે છે, જે ધીમું હોય છે અને શૈલી કે ફોર્મેટ માટે વધુ સારું છે. RAG મૉડેલને પ્રશ્ન સમયે વાંચવા માટે હકીકતો આપે છે, જે બદલાતી માહિતી કે ચોક્કસ રીતે ટાંકવી પડતી માહિતી માટે વધુ સારું છે.
શું RAG AI ની ભ્રમણાઓ (hallucinations) અટકાવે છે?
તે તેમને ઘટાડે છે, પણ સંપૂર્ણપણે દૂર કરતું નથી. જો શોધ ખોટા ફકરા શોધે, અથવા જવાબ તમારા દસ્તાવેજોમાં ન હોય, તો મૉડેલ હજી પણ અનુમાન કરી શકે છે. સારી RAG એપ મૉડેલને કહે છે કે ક્યારે ખબર ન હોય તે જણાવે, અને વપરાયેલા સ્રોતો બતાવે છે.