RAG g‘oyasi: avval topib, keyin javob berish
Model hamma narsani bilmaydi va ba’zan to‘qib chiqaradi. RAG (qidiruv bilan boyitilgan javob) g‘oyasi: avval savolga mos hujjat bo‘lagi qidirib topiladi, so‘ng u so‘rovga qo‘shib, modelga «faqat shu matn asosida javob ber» deyiladi. Bu xatoni kamaytiradi, lekin butunlay yo‘qotmaydi: manba va javobni baribir tekshirish kerak.
Haqiqiy tizimlarda qidiruv uchun embedding kabi usullar ishlatiladi. Biz soddalashtirib, savol va hujjatdagi umumiy so‘zlarni sanaymiz. set takrorlanmaydigan to‘plam, & esa ikki to‘plamning umumiy qismini beradi.
a = "python dasturlash tili"
b = "python nima"
umumiy = set(a.split()) & set(b.split())
print(len(umumiy))Natija1Keyingi bosqich: topilgan matnni prompt shabloniga joylash. Shablon modelga manba va savolni aniq ajratib ko‘rsatadi. Bu darsdagi qidiruv juda sodda: real hayotda sifatli qidiruv alohida ish.
Esda tuting
- RAG: avval qidirish, keyin topilgan matn asosida javob.
- Bu xatoni kamaytiradi, lekin yo‘qotmaydi: tekshirishda davom eting.
- Prompt shabloni manba va savolni ajratadi.
Mashq
RAG yondashuvi nimaga xizmat qiladi?
Javob va izoh
- Model javobini topilgan manba matniga tayantirib, to‘qib chiqarish xavfini kamaytirishga. (to‘g‘ri javob)javob berishdan oldin mos matn so‘rovga qo‘shiladi.
- Modelni butunlay xatosiz qilishga.kafolat yo‘q: manba noto‘g‘ri yoki qidiruv yomon bo‘lishi mumkin.
- Dasturni internetsiz ishlatishga.RAG internetga bog‘liq emas, boshqa narsa.
Kod mashqlari
eng_mos(savol, hujjatlar)savol bilan eng ko‘p umumiy so‘zi bor hujjatni qaytarsin. Tayyorumumiy(a, b)funksiyasidan foydalaning; teng bo‘lsa birinchisi qolsin.
Maslahat: Eng yaxshi hujjatni birinchisidan boshlang va tsikldaumumiykattaroq bo‘lsa almashtiring.rag_prompt(savol, hujjat)uch qatorli matn qaytarsin:Faqat quyidagi matn asosida javob ber.,Matn: ...,Savol: ....
Maslahat: Qatorlar orasiga\nqo‘ying va f-string ishlating.
Mashqni ilovada bajaring.
Amaliy vazifa
3 ta qisqa matn yozing va ikki xil savol uchun qaysi matn eng mos kelishini qo‘lda aniqlang; keyin funksiya bilan solishtiring.
- 3 ta matn yozdim
- Qo‘lda aniqladim
- Funksiya bilan solishtirdim
Lug‘at
Interaktiv rejim: qidiruv, progress va Python mashqlari.
