હું કંઈ જ ન સમજવાથી RAG એપ બનાવવાની સફર સુધી
મેં ગઈકાલનો સમય મારા પોતાના NLP નોટ્સના 31 પાના વાંચવામાં વિતાવ્યો.
મને કંઈ જ સમજાયું નહીં.
મને લાગ્યું કે સમસ્યા મારામાં હતી. પણ એવું નહોતું. સમસ્યા મારી પદ્ધતિમાં હતી. નોટ્સ વાંચવી એટલે શીખવું એવું નથી. મારી પાસે નિષ્ણાતો માટેની નોટ્સ હતી, શરૂઆત કરનારાઓ માટેની નહીં.
મેં મારો અભિગમ બદલ્યો. મેં વાંચવાનું બંધ કર્યું. તેના બદલે, મેં પ્રશ્નો પૂછ્યા. મેં સરળ ઉદાહરણોનો ઉપયોગ કર્યો. જ્યાં સુધી મને ખ્યાલ ન સમજાય ત્યાં સુધી મેં ટેકનિકલ શબ્દોનો ઉપયોગ કરવાનો ઇનકાર કર્યો.
દિવસના અંત સુધીમાં, મેં એક RAG એપ બનાવી. NLP ના ચાર સ્તંભો મેં કેવી રીતે શીખ્યા તે અહીં છે.
- Bag of Words કોમ્પ્યુટર ફક્ત ગણિત સમજે છે. ટેક્સ્ટ પ્રોસેસ કરવા માટે, તમારે શબ્દોને નંબરમાં ફેરવવા પડે છે.
કલ્પના કરો કે તમે ઈમેલને સ્પામ અથવા નોટ સ્પામમાં વર્ગીકૃત કરવા માંગો છો. તમે તમારા ઈમેલમાં આવતા દરેક શબ્દની યાદી બનાવો છો. દરેક શબ્દ કેટલી વાર આવે છે તેની તમે ગણતરી કરો છો. આ રીતે એક ઈમેલ નંબરોની હારમાળામાં ફેરવાઈ જાય છે.
ખામી શું છે? તે શબ્દોના ક્રમને અવગણે છે. "Dog bites man" અને "man bites dog" આ પદ્ધતિ માટે સમાન લાગે છે.
- TF-IDF Bag of Words દરેક શબ્દ સાથે સમાન રીતે વર્તે છે. પરંતુ "the" એ "viagra" જેટલું મહત્વનું નથી.
TF-IDF બે નિયમોનો ઉપયોગ કરે છે:
- Term Frequency (TF): એક ઈમેલમાં શબ્દ કેટલી વાર આવે છે.
- Inverse Document Frequency (IDF): બધા ઈમેલ વચ્ચે કોઈ શબ્દ કેટલો દુર્લભ છે.
આ ગણિત "the" જેવા ફિલર શબ્દોને અવગણે છે અને મહત્વના, દુર્લભ શબ્દોને હાઇલાઇટ કરે છે.
- Embeddings Bag of Words વિચારે છે કે "money" અને "cash" વચ્ચે કોઈ સંબંધ નથી. Embeddings આ સમસ્યા સુધારે છે.
એક વિશાળ નકશા વિશે વિચારો. દરેક શબ્દ તે નકશા પર એક ટપકું છે. સમાન અર્થ ધરાવતા શબ્દો એકબીજાની નજીક હોય છે. "Money" અને "cash" પડોશી છે. "Banana" ઘણું દૂર છે.
કોમ્પ્યુટર શબ્દની આસપાસના શબ્દો જોઈને આ સ્થાન શીખે છે. જો "money" અને "cash" બંને "bank" અને "pay" ની નજીક દેખાય, તો કોમ્પ્યુટર તેમને એકબીજાની નજીક રાખે છે.
- RAG (Retrieval-Augmented Generation) અહીં બધું એકસાથે જોડાય છે.
જો તમારી ફાઇલોમાં દરેક નોટ નકશા પર એક ટપકું હોય, તો તમે સૌથી નજીકના ટપકાં શોધીને જવાબો મેળવી શકો છો.
RAG પ્રક્રિયા:
- પ્રશ્નને એક ટપકાંમાં ફેરવો.
- નકશા પર સૌથી નજીકની નોટ-ટપકાં શોધો.
- તે નોટ્સ AI ને આપો.
- AI ને ફક્ત તે નોટ્સનો ઉપયોગ કરીને જવાબ આપવા કહો.
આ AI ને અનુમાન લગાવતા અથવા ખોટું બોલતા અટકાવે છે. તે AI ને તમારા વાસ્તવિક ડેટાનો ઉપયોગ કરવા માટે મજબૂર કરે છે.
મેં આ પગલાંનો ઉપયોગ કરીને મારી એપ, Synapse બનાવી. હું એક દિવસમાં શૂન્યથી કાર્યરત સિસ્ટમ સુધી પહોંચી ગયો.
પાઠ: વાંચવાનું બંધ કરો. પ્રશ્નો પૂછવાનું શરૂ કરો. જો તમે કોઈ ખ્યાલને સરળ ઉદાહરણ દ્વારા સમજાવી શકતા નથી, તો તમે હજુ તેને સમજ્યા નથી. તમે સમજી ગયા છો તે સાબિત કરવા માટે કંઈક બનાવો.
સ્ત્રોત: https://dev.to/sabimantock/from-i-understood-nothing-to-building-a-rag-app-4033
વૈકલ્પિક લર્નિંગ કોમ્યુનિટી: https://t.me/GyaanSetuAi