Un modello di IA generico sa moltissimo sul mondo e nulla sulla tua azienda. Non ha mai visto i manuali dei tuoi prodotti, le tue policy interne o i report dell’ultimo trimestre. La retrieval-augmented generation (RAG) è la tecnica che colma questo divario: consente a un modello di rispondere alle domande usando i tuoi documenti, in modo accurato e con le fonti, senza riaddestrare il modello. Questa guida spiega cos’è la RAG, come funziona e quando usarla.

In sintesi

  • La RAG recupera gli estratti pertinenti dai tuoi contenuti e li include nel prompt, così il modello risponde a partire dalle tue conoscenze e non solo dai suoi dati di addestramento
  • Funziona convertendo i documenti in embeddings, memorizzandoli in un vector database e recuperando le corrispondenze più vicine a ogni domanda
  • La RAG riduce le allucinazioni e permette di citare le fonti, ed è più semplice ed economica da mantenere aggiornata rispetto al fine-tuning
  • È il pattern giusto per la maggior parte dei casi d’uso del tipo “un’IA che conosce i nostri dati”: bot di supporto, assistenti di conoscenza interni e Q&A sui documenti

Il problema che la RAG risolve

I modelli linguistici hanno due limiti per l’uso aziendale: conoscono solo ciò che era nei loro dati di addestramento (quindi nulla di privato e nulla di recente), e possono inventarsi cose con sicurezza. Inserire tutti i tuoi documenti in ogni prompt non è praticabile; ce ne sono troppi, e sarebbe lento e costoso. La RAG risolve entrambi i problemi recuperando solo le parti pertinenti per ogni domanda e ancorando la risposta a esse.

Come funziona la Retrieval-Augmented Generation

Ci sono due fasi.

Indicizzazione (eseguita una volta e aggiornata man mano che i contenuti cambiano):

  1. Suddividi i tuoi documenti in chunk gestibili.
  2. Converti ogni chunk in un embedding , un vettore numerico che ne cattura il significato.
  3. Memorizza questi vettori in un vector database.

Recupero e generazione (al momento della query):

  1. Converti la domanda dell’utente in un embedding.
  2. Cerca nel vector database i chunk il cui significato è più vicino alla domanda.
  3. Inserisci questi chunk recuperati nel prompt come contesto.
  4. Il modello genera una risposta ancorata a quel contesto, idealmente citando le fonti utilizzate.

Poiché il recupero si basa sul significato anziché su parole chiave esatte, la RAG trova contenuti pertinenti anche quando la formulazione è diversa.

Perché la RAG batte il fine-tuning nella maggior parte dei casi

Il fine-tuning regola i pesi del modello sui tuoi dati. Ha il suo posto, ma per rispondere a partire dalla conoscenza la RAG è di solito la scelta migliore:

  • Aggiornabilità: Aggiorna un documento e reindicizzalo; la risposta si aggiorna immediatamente. Il fine-tuning richiede un riaddestramento per riflettere i cambiamenti.
  • Costo: L’indicizzazione è molto più economica di ripetuti cicli di fine-tuning.
  • Controllo e fiducia: La RAG può mostrare le sue fonti, quindi le risposte sono verificabili e più facili da fidarsi. La conoscenza ottenuta con il fine-tuning è opaca.
  • Meno allucinazioni: Ancorare il modello al testo recuperato lo mantiene più vicino ai fatti.

Il fine-tuning è migliore per insegnare uno stile o un formato coerente, o un comportamento ristretto e specializzato, non per mantenere aggiornato un corpo di conoscenze.

Cosa rende buono un sistema RAG

La RAG è semplice nel concetto e facile da fare male. La qualità dipende da:

  • Strategia di chunking: Chunk troppo grandi diluiscono la pertinenza; troppo piccoli perdono il contesto. Farlo bene conta.
  • Qualità del recupero: La risposta è buona solo quanto i chunk recuperati. Buoni embeddings, un ranking sensato e a volte un re-ranking fanno la differenza.
  • Progettazione del prompt: Il modo in cui istruisci il modello a usare il contesto recuperato (e a dire “non lo so” quando l’informazione non c’è) determina l’affidabilità.
  • Mantenere l’indice aggiornato: Una pipeline per reindicizzare i contenuti modificati mantiene le risposte accurate nel tempo.

Casi d’uso comuni

  • Bot di assistenza clienti che rispondono a partire dalla tua documentazione.
  • Assistenti di conoscenza interni su policy, wiki e report.
  • Q&A sui documenti per contratti, manuali o ricerca.
  • Qualsiasi assistente che deve rispondere a partire da informazioni private o che cambiano di frequente.

Punti chiave

  • La RAG ancora le risposte dell’IA ai tuoi documenti recuperando estratti pertinenti al momento della query.
  • Funziona tramite embeddings e un vector database: indicizza una volta, recupera e genera per ogni domanda.
  • Per mantenere aggiornata la conoscenza, la RAG batte il fine-tuning su aggiornabilità, costo, controllo e fiducia.
  • La qualità nasce dal chunking, dal recupero, dalla progettazione del prompt e dal mantenere aggiornato l’indice.

Aggiungi un’IA consapevole della conoscenza alla tua azienda

Un sistema RAG in produzione ha bisogno del giusto chunking, recupero, prompting e di una pipeline di indicizzazione che resti aggiornata. I servizi di integrazione IA integrano basi di conoscenza basate sulla RAG e altre funzionalità intelligenti nelle tue applicazioni esistenti, con prompt progettati su misura e controlli sui costi, e il servizio di integrazione dell’API OpenAI copre nello specifico gli assistenti basati sulla RAG. Se stai partendo con un’interfaccia conversazionale, vedi creare un chatbot IA con l’API OpenAI . Per una visione più ampia dell’adozione dell’IA, la guida all’integrazione dell’IA per le PMI britanniche è un buon punto di partenza.

Domande frequenti (FAQ)

Cos’è la retrieval-augmented generation (RAG)? La RAG è una tecnica che consente a un modello di IA di rispondere usando i tuoi documenti. Recupera gli estratti più pertinenti dai tuoi contenuti e li include nel prompt, così il modello risponde basandosi sulle tue conoscenze anziché solo sui suoi dati di addestramento.

In cosa la RAG è diversa dal fine-tuning? La RAG recupera contenuti pertinenti al momento della query e vi ancora la risposta, così gli aggiornamenti sono istantanei e le fonti possono essere citate. Il fine-tuning modifica i pesi del modello e richiede un riaddestramento per riflettere nuove informazioni. La RAG è migliore per la conoscenza aggiornata; il fine-tuning per uno stile coerente o un comportamento ristretto.

La RAG elimina le allucinazioni dell’IA? Le riduce in modo significativo ancorando le risposte a fatti recuperati, e permette di citare le fonti così le risposte sono verificabili. Non elimina del tutto le allucinazioni, quindi un buon prompting resta importante (compreso istruire il modello a dire quando non sa qualcosa).

Cos’è un vector database e perché la RAG ne ha bisogno? Un vector database memorizza gli embeddings, le rappresentazioni numeriche dei chunk dei tuoi documenti, e trova quelli il cui significato è più vicino a una domanda. La RAG lo usa per recuperare rapidamente il contesto pertinente in base al significato anziché a corrispondenze esatte di parole chiave.

Cosa mi serve per costruire un sistema RAG? I tuoi documenti di origine, una pipeline di chunking ed embedding, un vector database e un’applicazione che recupera i chunk pertinenti e li usa per il prompt del modello. Le parti più difficili sono la strategia di chunking, la qualità del recupero e il mantenere aggiornato l’indice.