Naive RAG: punctul de plecare
Naive RAG este un baseline clar: caută semantic, construiește contextul și generează.
Ce vei învăța
- Explici: rag este acces la dovezi, nu reantrenare
- Aplici ideea într-un exemplu: Naive RAG: punctul de plecare
- Recunoști limitele și verifici rezultatul exercițiului
Naive RAG este un baseline clar: caută semantic, construiește contextul și generează. Complexitatea mică îl face ușor de diagnosticat.
Pașii se referă la funcționalități identificate în codul aplicației. Validarea pe o instanță live nu a fost efectuată pentru acest material; verifică documentația și opțiunile din versiunea ta.
Cum funcționează, pas cu pas
RAG este acces la dovezi, nu reantrenare
RAG înseamnă retrieval-augmented generation: căutarea furnizează fragmente relevante modelului înainte de răspuns. Ingestia pregătește documentele, iar interogarea caută în index și construiește contextul. Modelul de embeddings reprezintă textul numeric; modelul de răspuns redactează. Rerankerul, vision, graph și router au roluri diferite, când sunt necesare. RAG ajută pentru informație privată sau schimbătoare, dar nu garantează adevărul. Pentru solduri, stoc exact sau permisiuni folosește un API autorizat; un document vechi nu este sursă sigură pentru starea curentă.
Coordonate ale sensului
Un embedding este un vector de numere calculat de un model. Texte cu sens apropiat tind să fie apropiate în spațiul acelui model, dar similaritatea nu garantează relevanța. Întrebarea și documentele trebuie reprezentate într-un spațiu compatibil: model și dimensiune potrivite. O hartă cu două axe este doar o ilustrare; vectorii reali pot avea sute sau mii de dimensiuni. Când schimbi modelul ori dimensiunea, reconstruiește indexul și retestează. Similaritatea cosinus compară direcția vectorilor; nu este probabilitatea ca un răspuns să fie adevărat.
Definește succesul înainte de optimizare
Pregătește un set de cereri reprezentative și răspunsuri sau proprietăți așteptate. Include cazuri obișnuite, ambigue, fără date și cu erori de unelte. Pentru RAG măsoară separat găsirea dovezii și corectitudinea răspunsului. Recall@k urmărește proporția dovezilor relevante găsite în primele k rezultate; precision@k urmărește proporția rezultatelor relevante. Pentru agenți urmărește și acțiunile, accesul și oprirea. Un LLM-as-judge poate accelera evaluarea, dar se calibrează față de oameni. Nu modifica simultan promptul, modelul și indexul dacă vrei să înțelegi cauza îmbunătățirii.
Laborator detaliat
Testează retrieval înainte de redactare
Folosește aceleași fixtures pentru catalog, livrare și politică. După indexare, întreabă „Care este termenul pentru un produs nefolosit?”. Pasajul cu termenul și condițiile trebuie să apară în rezultatele căutării. Verifică apoi dacă răspunsul reproduce condițiile fără a crea excepții.
A doua întrebare este „Ce garanție comercială are produsul?”. Nu există acea informație în corpus. Rezultatul bun spune că documentele nu o precizează. Dacă retrieval nu găsește politica, diagnostichează sursa și indexul; dacă o găsește, dar răspunsul o ignoră, investighează contextul și generarea.
Harta vizuală
Urmărește săgețile continue pentru fluxul principal. Săgețile albastre punctate furnizează date sau context; cele roz punctate arată feedback sau rezultate care revin. Culorile și formele disting modelele, stocările, deciziile și rezultatele. Recuperarea întoarce dovezi. Dacă este activat un model de răspuns, acesta compune și un răspuns; dovezile recuperate trebuie verificate. Pe ecrane mici, derulează orizontal pentru a urmări întreaga diagramă.
Un exemplu complet
Ai politica, catalogul și livrarea. Începi cu top_k=4 și întrebi termenul de retur. Verifici dacă pasajul corect intră în context înainte să modifici promptul.
template: Naive
top_k: 4
Încearcă tu
- Creează RAG Naive, selectează embedding și model de răspuns, încarcă datele și testează după indexare.
- Notează intrarea, sursa și rezultatul așteptat înainte să rulezi experimentul. Folosește doar datele fictive din exemplu.
- Urmărește etapele din diagramă. La fiecare pas scrie ce informație primește și ce produce; nu confunda rezultatul intermediar cu rezultatul final.
- Repetă cazul după eliminarea unei informații necesare sau după o intrare ambiguă. Verifică dacă sistemul cere clarificare, se oprește sau inventează.
- Compară cu soluția comentată. Păstrează configurația, data, rezultatul și o explicație pentru orice diferență. Schimbă un singur lucru și retestează.
Soluție comentată
Pasajul politicii este recuperat și răspunsul păstrează 14 zile și condițiile. Pentru a considera exercițiul reușit, poți arăta legătura dintre intrare, etapele parcurse și rezultat. Dacă lipsesc date, un răspuns prudent este mai util decât o completare inventată. Nu compara doar stilul: verifică și condițiile, sursele și operațiile efectuate.
Când merită și ce poate merge prost
top_k mai mare poate adăuga și context irelevant. Alege această abordare când îmbunătățește o nevoie măsurată. Păstrează o variantă simplă ca referință și compară rezultatele pe aceleași intrări. Un singur exemplu reușit nu stabilește fiabilitatea în toate situațiile.
Verifică ce ai înțeles
RAG modifică parametrii LLM-ului?
Nu. Furnizează context la cerere; schimbarea parametrilor aparține antrenării.
Poți compara direct vectori de la două modele diferite?
În general nu; spațiile lor nu sunt automat compatibile.
Ce rezultat trebuie să obții în acest exercițiu?
Pasajul politicii este recuperat și răspunsul păstrează 14 zile și condițiile.
Cuvinte de ținut minte
- Retrieval: Căutarea informației relevante în surse accesibile.
- Embedding: Reprezentare numerică folosită pentru compararea conținutului.
- Regresie / Regression: O schimbare care strică un caz anterior corect.
Surse și următorul pas
Pentru pregătire: R02 — Embeddings și căutare vectorială