Cos’è la RAG (Retrieval-Augmented Generation)?

La RAG (Retrieval-Augmented Generation), in italiano spesso resa come generazione aumentata dal recupero di informazioni, è una tecnica che permette a un sistema di intelligenza artificiale generativa di cercare informazioni in fonti esterne e di usarle per costruire una risposta. Invece di basarsi soltanto sulle conoscenze acquisite durante l’addestramento, il modello può consultare documenti, database o altre fonti pertinenti alla domanda.

Il termine è stato introdotto nel 2020 da un gruppo di ricercatori di Facebook AI Research (oggi Meta) nell’articolo “Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks”.

La RAG viene usata soprattutto con i modelli linguistici di grandi dimensioni (LLM), come quelli alla base degli assistenti conversazionali: è utile quando servono informazioni aggiornate, specialistiche o contenute in documenti che il modello non ha incontrato durante l’addestramento.

Per esempio, un’azienda può usare la RAG per creare un assistente che risponda alle domande dei dipendenti consultando procedure interne, manuali e documentazione aziendale. Se qualcuno chiede “Come funziona la procedura per richiedere un rimborso spese?”, l’assistente cerca la procedura pertinente e la usa per formulare la risposta.

Come funziona la RAG?

La RAG funziona in tre passaggi: il sistema cerca le informazioni pertinenti alla domanda, le aggiunge alla richiesta e il modello le usa per generare la risposta.

  1. Recupero delle informazioni (retrieval): il sistema cerca nelle fonti disponibili i documenti o i passaggi più pertinenti alla domanda. La ricerca può usare parole chiave, somiglianze semantiche o una combinazione di tecniche.
  2. Arricchimento del contesto (augmentation): le informazioni recuperate vengono aggiunte alla richiesta inviata al modello linguistico, insieme alle istruzioni necessarie per usarle.
  3. Generazione della risposta (generation): il modello costruisce la risposta tenendo conto della domanda e delle informazioni ricevute. Se il sistema è progettato per farlo, può anche indicare i documenti da cui ha ricavato le informazioni.

La RAG non richiede di riaddestrare il modello perché le informazioni vengono fornite al momento della richiesta, per questo un’azienda può aggiornare la documentazione consultata dall’assistente senza addestrare di nuovo l’LLM ogni volta che cambia una procedura.

Che differenza c’è tra RAG e addestramento di un modello?

Con l’addestramento il modello apprende dai dati durante il suo sviluppo; con la RAG recupera informazioni da fonti esterne al momento della domanda, senza che i suoi parametri vengano modificati.

Durante l’addestramento, un modello apprende schemi e relazioni dai dati usati per svilupparlo mentre, con la RAG, può usare anche informazioni che non facevano parte di quei dati, comprese quelle pubblicate dopo l’addestramento.

La RAG è diversa anche dal fine-tuning, che consiste nell’addestrare ulteriormente un modello su dati specifici per adattarne il comportamento o le prestazioni a determinati compiti. RAG e fine-tuning non si escludono: un modello sottoposto a fine-tuning può usare anche la RAG.

La RAG elimina le allucinazioni dell’IA?

No: la RAG può ridurre il rischio di alcune allucinazioni, ma non le elimina.

Fornire al modello documenti pertinenti aiuta a costruire risposte basate su informazioni verificabili: un sistema RAG, però, può recuperare un documento sbagliato, interpretare male una fonte, ignorare un’informazione importante o aggiungere dettagli che nei materiali consultati non ci sono.

Anche le citazioni non garantiscono che una risposta generata con la RAG sia corretta: bisogna verificare che le fonti citate contengano davvero le informazioni attribuite loro.

Progettare un sistema RAG, quindi, non significa soltanto collegare un modello a un archivio di documenti, perché bisogna valutare la qualità delle fonti, l’efficacia della ricerca, la correttezza delle risposte e la capacità del sistema di riconoscere quando le informazioni disponibili non bastano per rispondere.

Quali sono i vantaggi e i limiti della RAG per le aziende?

La RAG permette a un’azienda di rendere consultabile il proprio patrimonio di conoscenze attraverso un assistente di IA, senza dover riaddestrare un modello; in cambio, richiede documenti aggiornati e ben organizzati, una gestione attenta dei permessi e una maggiore complessità tecnica.

Un sistema RAG può aiutare il servizio clienti a consultare manuali e schede tecniche, assistere i dipendenti nella ricerca delle procedure interne oppure rendere più accessibili cataloghi e documentazione commerciale.

Un esempio concreto è A.R.I.A.N.N.A., l’assistente basato sulla RAG che abbiamo sviluppato in Axura per Unimec, azienda italiana specializzata nella produzione di componenti per la trasmissione meccanica.

Unimec dispone di un ampio patrimonio di cataloghi, schede tecniche e documentazione sui propri prodotti e, con A.R.I.A.N.N.A. abbiamo reso queste informazioni consultabili attraverso una conversazione: chi ha bisogno di un’informazione tecnica può fare una domanda nella propria lingua e l’assistente cerca nella documentazione ufficiale Unimec gli elementi necessari per rispondere.

Per esempio, un progettista può chiedere informazioni sulle configurazioni disponibili per un determinato prodotto, sugli accessori compatibili o sulle indicazioni per la manutenzione: invece di cercare manualmente tra cataloghi e schede tecniche, può partire direttamente dalla propria domanda.

A.R.I.A.N.N.A. è disponibile gratuitamente, 24 ore su 24, in diverse lingue e senza registrazione e, quando la richiesta richiede un approfondimento, l’assistente permette anche di entrare in contatto con gli specialisti Unimec.

Il progetto mostra uno dei vantaggi più concreti della RAG: rendere più accessibili le conoscenze che un’azienda ha costruito nel tempo, senza sostituire le competenze delle persone che le hanno prodotte.


Postato il

in