RAG — modelga bilim berish

Model sizning hujjatlaringizni, kompaniyangiz bazasini yoki kechagi yangilikni bilmaydi — u faqat o'qitilgan ma'lumotgacha biladi (nega). Yechim — RAG (Retrieval-Augmented Generation): javob berishdan oldin modelga tegishli ma'lumotni topib berish. Bu qo'llanma — RAG qanday ishlaydi va qachon kerak.
Muammo: model sizning ma'lumotingizni bilmaydi
Modelga butun bazani har safar yuborib bo'lmaydi — kontekst oynasi cheklangan va qimmat. Kerak — faqat tegishli bo'lakni topib berish.
RAG qanday ishlaydi
Oddiy qilib: savolga mos hujjat bo'laklarini topamiz va modelga "mana shu asosida javob ber" deymiz. Model endi to'qib chiqarmaydi — oldida haqiqiy manba turadi.
Asosiy tushunchalar
Embedding — matnni model tushunadigan raqamlar vektoriga aylantirish. Ma'no jihatdan yaqin matnlar — yaqin vektorlar. Shu orqali "o'xshashlik" o'lchanadi.
Vektor baza (vector DB) — embedding'larni saqlab, savolga eng yaqinlarini tez topadigan baza (masalan, qator ochiq va bulutli yechimlar bor).
Chunking (bo'laklarga bo'lish) — uzun hujjatni qidirsa bo'ladigan kichik bo'laklarga ajratish. Bo'lak hajmi muhim — juda katta bo'lsa shovqin, juda kichik bo'lsa kontekst yo'qoladi.
Bosqichma-bosqich qurish
- Tayyorlash (bir marta): hujjatlarni bo'laklarga bo'l → har biriga embedding ol → vektor bazaga saqla
- Har so'rovda: savolni embeddingga aylantir → bazadan eng o'xshash N bo'lakni top → ularni savol bilan birga modelga ber → model manbaga asoslanib javob beradi
RAG vs boshqa yondashuvlar
| Yondashuv | Qachon |
|---|---|
| Promptga qo'yish | Kam, kichik ma'lumot — to'g'ridan-to'g'ri kontekstga |
| RAG | Ko'p, o'zgaruvchan hujjat — qidirib kerakligini olish |
| Fine-tuning | Uslub/format o'rgatish; yangi faktlar uchun emas → Fine-tuning |
| Uzun kontekst | Hujjat sig'sa — RAGsiz ham mumkin, lekin qimmat |
Muhim: RAG — bilim uchun, fine-tuning — xulq-atvor uchun. Yangi faktlarni fine-tuning bilan emas, RAG bilan beriladi.
Sifatga ta'sir qiluvchi narsalar
- Chunking strategiyasi — bo'lak hajmi va o'zaro kesishuv (overlap)
- Qancha bo'lak olish (top-k) — kam bo'lsa kontekst yetmaydi, ko'p bo'lsa shovqin
- Embedding sifati — yaxshi embedding = yaxshi qidiruv
- Reranking — topilgan bo'laklarni qayta saralash, eng aniqlarini tepaga
- Manba ko'rsatish — javobda qaysi hujjatdan olinganini ko'rsatish (ishonch + tekshirish)
Qachon RAG kerak emas
- Ma'lumot kichik va promptga sig'adi — RAG ortiqcha murakkablik
- Savollar umumiy bilimga tegishli (modelda bor)
- Bir martalik vazifa — infratuzilma qurish arzimaydi
Anti-paternlar
- Fine-tuning bilan fakt o'rgatish: yangi ma'lumot uchun fine-tuning emas, RAG. Aralashtirmang
- Butun hujjatni promptga tiqish: kontekst portlaydi, qimmat. Faqat kerakli bo'lakni
- Manba ko'rsatmaslik: foydalanuvchi tekshirolmaydi, ishonch tushadi. Manba bering
- Chunkingga e'tibor bermaslik: yomon bo'laklar → yomon qidiruv → yomon javob
- Tekshirmaslik: RAG ham xato qilishi mumkin — topilmasa yoki noto'g'ri topsa
Keyingi qadamlar
- Agent xotirasi — RAG xotira qatlamining bir qismi
- Ikkinchi miya — shaxsiy bilim bazasi
- Kontekst oynasi — nega hammasi promptga sig'maydi
- Lug'at — embedding, vektor baza va boshqa atamalar