Intelligenza artificiale

Far rispondere un’AI sui tuoi documenti: la RAG spiegata semplice

Illustrazione: documenti trasformati in vettori e le risposte di un assistente AI

Prova a chiedere a un assistente AI generico qual è la tua procedura interna per i resi, o cosa prevede l’ultima versione di un capitolato: non può saperlo, perché quei documenti non li ha mai visti. Nel migliore dei casi lo ammette, nel peggiore inventa una risposta plausibile.

La tecnica che risolve il problema si chiama RAG, da retrieval-augmented generation: generazione aumentata dal recupero di informazioni. Prima di rispondere, il sistema cerca nei tuoi documenti i passaggi pertinenti e li consegna al modello linguistico (LLM, il motore di strumenti come ChatGPT, Claude o Gemini) insieme alla domanda. Il modello non deve “ricordare” nulla: legge, al momento, le pagine giuste.

Vediamo come funziona passo per passo, perché di solito conviene più del riaddestramento di un modello e cosa distingue un prototipo che fa bella figura in una demo da un sistema su cui le persone possono contare ogni giorno.

Come funziona, passo per passo

Schema: un documento diviso in pezzi, trasformati in vettori e salvati in un database, da cui il modello di intelligenza artificiale ricava la risposta.

Il lavoro si divide in due fasi: la preparazione dei documenti, che si fa una volta e poi si tiene aggiornata, e la risposta, che avviene a ogni domanda.

  1. Raccolta: PDF, pagine di wiki, manuali, ticket, email. Si estrae il testo e si conservano i metadati utili: titolo, data, versione, chi può leggerlo.
  2. Divisione in pezzi (chunking): ogni documento viene diviso in porzioni di qualche paragrafo, abbastanza piccole da essere precise e abbastanza grandi da avere senso da sole.
  3. Embedding: un modello apposito trasforma ogni pezzo in un vettore, una lunga sequenza di numeri che ne rappresenta il significato. Testi che parlano della stessa cosa hanno vettori vicini, anche se usano parole diverse.
  4. Archiviazione: vettori, testo e metadati finiscono in un database vettoriale come Milvus, progettato per trovare in fretta gli elementi più simili anche tra milioni di voci.
  5. Recupero: quando arriva una domanda, anche lei diventa un vettore e il database restituisce i pezzi più vicini, cioè i più pertinenti.
  6. Risposta: il modello linguistico riceve la domanda e i pezzi trovati, con l’istruzione di rispondere solo sulla base di quelli. Poiché ogni pezzo porta con sé il documento di origine, la risposta può citare le fonti e chi legge può verificarle.

Perché non “insegnare” i documenti al modello

L’alternativa che viene in mente per prima è il fine-tuning, cioè riaddestrare un modello sui propri documenti. Per la conoscenza aziendale, nella maggior parte dei casi la RAG è la scelta migliore:

  • Aggiornamento: un documento nuovo o corretto entra nell’indice in pochi minuti, mentre un modello riaddestrato andrebbe riaddestrato di nuovo.
  • Fonti: la RAG mostra da dove viene la risposta; un modello che ha “imparato” un contenuto non sa dire dove l’ha letto.
  • Permessi: si può filtrare cosa recuperare in base a chi chiede. Un’informazione assorbita dal modello, invece, non si può nascondere a un utente.
  • Costi e libertà: non c’è un addestramento da pagare, e si può cambiare modello linguistico senza rifare il lavoro sui documenti.

Il fine-tuning resta utile per altro: insegnare uno stile, un formato di risposta o un compito molto specifico. Quando serve, le due tecniche si combinano.

Cosa decide la qualità delle risposte

La parte che colpisce è il modello, ma la qualità si decide quasi tutta prima, nella preparazione e nel recupero. Questi sono i fattori da curare:

  • Documenti in ordine: versioni superate, duplicati e PDF scansionati senza testo producono risposte vecchie, contraddittorie o vuote. Spesso il primo lavoro è fare pulizia.
  • Divisione ragionata: tagliare a metà una tabella o separare un titolo dal suo paragrafo peggiora il recupero. Conviene seguire la struttura del documento (sezioni, titoli, elenchi), non solo il numero di caratteri.
  • Recupero ben tarato: affiancare alla ricerca per significato quella per parole chiave (ricerca ibrida) aiuta con codici, sigle e nomi propri; un secondo passaggio che riordina i risultati (reranking) sceglie meglio i pezzi da passare al modello.
  • Permessi rispettati: il sistema deve applicare gli stessi diritti di accesso dei documenti originali. Il filtro va fatto nel recupero, non affidato alle istruzioni date al modello.
  • Indice aggiornato: quando un documento cambia o viene eliminato, l’indice deve seguirlo con una procedura automatica, non a mano.
  • Valutazione con domande vere: serve un elenco di domande raccolte da chi userà il sistema, con le risposte attese. Si misura se il recupero trova i pezzi giusti e se la risposta è corretta e fedele alle fonti, e si ripete la prova a ogni modifica.

Gli strumenti tipici

Un sistema RAG si costruisce con pochi mattoni, e per ognuno esistono componenti open source e servizi gestiti:

  • Orchestrazione: framework come LangChain collegano i passaggi (caricamento, divisione, recupero, chiamata al modello) e permettono di sostituire un componente senza riscrivere il resto.
  • Database vettoriale: Milvus è open source e si può installare sui propri server o usare come servizio gestito.
  • Modelli di embedding: su Hugging Face se ne trovano molti, anche multilingue, da eseguire in casa; OpenAI e Google li offrono anche via API.
  • Modello linguistico: OpenAI, Claude di Anthropic o Gemini di Google via API, oppure un modello eseguito sui tuoi server, per esempio con Ollama. La scelta dipende da riservatezza, qualità e costi, ed è il tema del nostro articolo sui modelli in casa o in cloud.

Una nota pratica: se cambi il modello di embedding, i vettori vanno ricalcolati per tutti i documenti. Il modello linguistico, invece, si può sostituire senza toccare l’indice.

Da dove cominciare

Il primo progetto dovrebbe avere un perimetro piccolo e chiaro: un insieme di documenti con un responsabile, un gruppo di utenti che oggi perde tempo a cercare, una lista di domande di prova. Con questi tre elementi si costruisce un pilota, lo si misura e si decide se allargarlo. Indicizzare tutto l’archivio aziendale dal primo giorno, al contrario, è il modo più rapido per ottenere risposte mediocri.

Se hai manuali, procedure, contratti o ticket che le persone faticano a consultare, possiamo partire insieme da un pilota su un perimetro ristretto e misurarlo con le tue domande reali. Scrivici e ne parliamo.

Contattaci

Hai un progetto da realizzare? Parliamone insieme.

Contattaci per una consulenza strategica per trasformare le tue idee in successi concreti.

Chiama subito: +39 081 526 9325

Benefici per te

  • Oltre 20 sviluppatori esperti
  • Metodologia Agile SCRUM
  • Microservizi e container
  • Cloud AWS e Azure
  • Team dedicati
  • Codice su misura

Cosa succede dopo?

  1. Pianifichiamo una chiamata a tuo piacimento
  2. Facciamo un incontro di scoperta e consulenza
  3. Prepariamo una proposta

Fissa una consulenza

I campi contrassegnati con * sono obbligatori.