Naive RAG: la tua linea di base
Naive RAG è una linea di base chiara: recupero semantico, assemblaggio e generazione del contesto.
Cosa imparerai
- Spiegare: lo straccio accede alle prove, non si riqualifica
- Applica l'idea in un esempio: Naive RAG: la tua linea di base
- Riconoscere i limiti e verificare il risultato dell'esercizio
Naive RAG è una linea di base chiara: recupero semantico, assemblaggio e generazione del contesto. La bassa complessità facilita la diagnosi.
Questi passaggi si riferiscono alle funzionalità identificate nel codice dell'applicazione. Questo materiale non è stato convalidato su un'istanza live; controlla la documentazione e le opzioni nella tua versione.
Come funziona, passo dopo passo
RAG accede alle prove, non riqualifica
RAG significa generazione aumentata dal recupero: il recupero fornisce passaggi rilevanti prima che il modello risponda. L'inserimento prepara i documenti, mentre l'esecuzione delle query ricerca nell'indice e crea il contesto. Un modello di incorporamento rappresenta il testo numericamente; il modello di risposta scrive la risposta. I modelli di riclassificazione, visione, grafico e router svolgono ruoli diversi quando necessario. RAG aiuta con informazioni private o mutevoli ma non garantisce la verità. Utilizzare un'API autorizzata per saldi, inventario esatto o autorizzazioni; un vecchio documento non è una fonte affidabile per lo stato attuale.
Coordinate di significato
Un incorporamento è un vettore numerico calcolato da un modello. I testi con significati correlati tendono a trovarsi uno vicino all’altro nello spazio di quel modello, ma la somiglianza non garantisce la rilevanza. Le query e i documenti devono condividere uno spazio compatibile: modello e dimensioni corrispondenti. Una mappa a due assi è illustrativa; i vettori reali possono avere centinaia o migliaia di dimensioni. Ricostruisci e riprova l'indice quando cambi modello o dimensioni. La somiglianza del coseno confronta le direzioni dei vettori; non è la probabilità che una risposta sia vera.
Definire il successo prima di ottimizzare
Preparare richieste rappresentative e risposte o proprietà previste. Includere casi ordinari, ambiguità, dati mancanti ed errori dello strumento. Per RAG, misurare il recupero delle prove separatamente dalla correttezza della risposta. Recall@k misura la quota di prove rilevanti trovate nei primi k risultati; Precision@k misura la quota di risultati restituiti che sono rilevanti. Per gli agenti, monitora anche azioni, autorizzazioni e arresti. Un LLM come giudice può accelerare la valutazione ma necessita di una calibrazione rispetto agli esseri umani. Non modificare prompt, modello e indice contemporaneamente se vuoi capire quali risultati migliorati.
Laboratorio dettagliato
Testare il recupero prima di scrivere
Utilizza gli stessi dispositivi di catalogo, consegna e polizza. Dopo l'indicizzazione, chiedi "Qual è la scadenza per un prodotto non utilizzato?". Il recupero dovrebbe includere la scadenza e le condizioni. Allora controlla che la risposta li preservi senza inventare eccezioni.
Chiedi “Quale garanzia commerciale si applica?”. Il corpus non contiene tali informazioni. Un buon risultato riconosce tale assenza. Se il recupero non rispetta i criteri, diagnosticare la fonte e l'indice; se trova una politica ma la risposta la ignora, ispeziona il contesto e la generazione.
Lo schema esplicativo
Seguire le frecce continue per il flusso principale. Le frecce blu tratteggiate forniscono dati o contesto; le frecce rosa tratteggiate mostrano feedback o risultati restituiti. Colori e forme distinguono modelli, negozi, decisioni e risultati. Il recupero restituisce prove. Se un modello di risposta è abilitato, compone anche una risposta; le prove recuperate devono ancora essere verificate. Su schermi piccoli, scorri in orizzontale per seguire l’intero schema.
Un esempio completo
Hai polizza, catalogo e documenti di consegna. Inizia con top_k=4 e chiedi la scadenza per la restituzione. Verificare che il passaggio corretto raggiunga il contesto prima di modificare il prompt.
template: Naive
top_k: 4
Provalo tu stesso
- Crea Naive RAG, scegli i modelli di incorporamento e di risposta, carica i dati ed esegui test dopo l'indicizzazione.
- Registrare l'input, la fonte e il risultato atteso prima di eseguire l'esperimento. Utilizzare solo i dati fittizi nell'esempio.
- Seguire le fasi del diagramma. Ad ogni passaggio registrare quali informazioni vengono ricevute e prodotte; non confondere il risultato intermedio con il risultato finale.
- Ripetere dopo aver rimosso le informazioni necessarie o reso ambiguo l'input. Controlla se il sistema chiarisce, ferma o inventa una risposta.
- Confrontare con la soluzione spiegata. Conserva la configurazione, la data, il risultato e una spiegazione delle differenze. Cambia una cosa e riprova.
Una soluzione spiegata
Il passaggio di polizza viene recuperato e la risposta conserva 14 giorni e condizioni. Un esercizio riuscito ti consente di mostrare la connessione tra input, fasi e risultato. Quando mancano le informazioni, una risposta cauta è più utile dei dettagli inventati. Confrontare non solo stile: verificare anche condizioni, fonti e operazioni.
Quando è utile e quali sono i suoi limiti
top_k più grande può anche aggiungere contesto irrilevante. Scegli questo approccio quando migliora un bisogno misurato. Mantieni una linea di base semplice e confronta i risultati utilizzando input identici. Un esempio di successo non stabilisce l’affidabilità in ogni situazione.
Verifica ciò che hai imparato
RAG modifica i parametri LLM?
No. Fornisce il contesto della richiesta-ora; le modifiche ai parametri appartengono all'addestramento.
Puoi confrontare direttamente i vettori di diversi modelli?
Generalmente no; i loro spazi non sono automaticamente compatibili.
Quale risultato dovrebbe produrre questo esercizio?
Il passaggio di polizza viene recuperato e la risposta conserva 14 giorni e condizioni.
Termini da ricordare
- Recupero: trovare informazioni rilevanti in fonti accessibili.
- Incorporamento: una rappresentazione numerica utilizzata per confrontare il contenuto.
- Regresia/Regressione: una modifica che interrompe un caso precedentemente corretto.
Fonti e il prossimo passo
Per preparare: R02 — Incorporamenti e ricerca vettoriale