RAG vs. LLM: analisi tecnica (definizioni, differenze, casi d’uso)
RAG e LLM non sono scelte in competizione: questa analisi spiega come funziona ciascuno, in cosa differiscono e quando un LLM da solo è sufficiente rispetto a quando è necessario il recupero.

Gli LLM generano risposte utilizzando parametri appresi da schemi presenti nei dati di addestramento. Poiché tali parametri potrebbero non riflettere informazioni recenti o complete, il RAG, acronimo di retrieval-augmented generation, integra il processo aggiungendo dati da fonti esterne al contesto di input dell’LLM. Uno strumento IA recupera informazioni esterne per arricchire il processo di generazione dell’LLM.
In realtà, la tua scelta non è tra RAG o un LLM. È tra un approccio ibrido e uno che usa solo un LLM.
Il RAG è necessario quando un LLM richiede accesso alla documentazione aziendale, ai database o a informazioni in rapido cambiamento. Un approccio basato solo su LLM è adatto ad alcune attività amministrative, di elaborazione dei dati e di creazione di contenuti in cui tutti gli input possono essere forniti dall’utente.
RAG vs. LLM: quali sono le differenze chiave?
- RAG e LLM sono sistemi complementari. Puoi usare un modello di IA senza RAG (in cui si basa esclusivamente sui propri parametri esistenti), ma non puoi usare un sistema RAG senza un modello.
- Il RAG è stato introdotto per superare tre problemi chiave degli LLM: informazioni non aggiornate, risposte allucinate e mancanza di verifica rispetto a fonti di terze parti.
- Il RAG rende l’IA molto più efficace in scenari aziendali reali perché collega gli LLM a documentazione interna verificata, database ed endpoint API.
- Tra i principali casi d’uso del RAG ci sono i chatbot per l’assistenza clienti, le query basate su dati in rapido cambiamento (come le notizie di settore) e i settori specializzati, come medicina e diritto, in cui precisione e verifica delle fonti sono importanti.
- Esistono tre tipi principali di RAG: RAG ingenuo, RAG modulare e RAG avanzato. Il RAG ingenuo si comprende meglio come un recupero delle informazioni diretto, mentre il RAG modulare e quello avanzato aggiungono funzionalità supplementari come la riscrittura delle query e l’ottimizzazione dei chunk.
Che cos’è un large language model (LLM)?
Un LLM, o large language model, è un sistema che genera contenuti utilizzando parametri ottimizzati. Questi parametri determinano le probabilità assegnate a tutti i token nel vocabolario di un LLM, indicando quale token è più probabile che venga dopo in una determinata sequenza.
Per capire meglio come funziona il RAG (e in cosa differisce) dagli LLM, è utile esaminare il funzionamento dell’IA generativa a un livello di base:
- Tokenizzazione: Il prompt di un utente viene suddiviso in token, che possono essere parole, parti di parole o singoli caratteri.
- Embedding: I token vengono convertiti in embedding, rappresentazioni numeriche (stringhe di numeri) chiamate vettori, che la rete neurale, che include un decoder, può elaborare.
- Decodifica: I livelli del decoder (che costituiscono gran parte della rete neurale dell’LLM) manipolano questi vettori, usando un processo chiamato attenzione per catturare il significato. Questo processo determina quanto strettamente ogni token debba essere correlato agli altri token nella sequenza.
- Attribuzione del punteggio: Il modello assegna a ogni token del proprio vocabolario preesistente una probabilità di compatibilità e seleziona un probabile token successivo per la sequenza.
Il punto importante è che un LLM può produrre output solo sulla base dei parametri esistenti e dei token nella sua finestra di contesto. Durante l’addestramento, a un LLM viene chiesto di completare porzioni di testo incompleto miliardi di volte, e i suoi parametri vengono regolati finché non assegna in modo affidabile probabilità ai token (e quindi completa il testo).
Immagina, per esempio, di porre a un modello IA la domanda: “Cosa dice la politica di rimborso della nostra azienda per il 2026?” L’LLM può solo prevedere i token successivi in base ai suoi parametri esistenti, che non sono stati ottimizzati usando la tua documentazione di supporto. Se gli poni questa domanda senza alcun contesto aggiuntivo, semplicemente non sarà in grado di rispondere in modo significativo oppure allucinerà una risposta errata.
Che cos’è la generazione aumentata dal recupero (RAG)?
RAG (retrieval-augmented generation) è il processo con cui le informazioni provenienti da sistemi esterni vengono incluse nel prompt di un LLM.
Il processo LLM sottostante, che coinvolge l’embedding e il matching probabilistico dei token, rimane lo stesso. Il RAG introduce una fase preliminare in cui il prompt dell’utente viene ampliato con dati aggiuntivi.
Ecco una panoramica di come funziona il RAG:
- Preparazione della conoscenza: Viene predisposta una fonte di conoscenza. Può trattarsi di un insieme di documenti, di un database vettoriale, di un grafo di conoscenza o di un indice live (come per la ricerca IA).
- Prompting: Un utente inserisce un prompt, ad esempio: “Dovrei fare una passeggiata a Londra oggi?”
- Recupero: La fonte di informazioni esterna viene interrogata dal retriever dello strumento IA. Può embeddare il prompt, trasformandolo in un vettore, e poi interrogare un database vettoriale. In alternativa, può usare un metodo alternativo, come una chiamata API, la corrispondenza per parole chiave o l’attraversamento di un grafo di conoscenza.
- Inserimento: Queste informazioni vengono aggiunte al prompt originale dell’utente. Nell’esempio della domanda su una passeggiata a Londra, questo potrebbe includere informazioni meteo a Londra e l’accessibilità attuale dei percorsi pedonali più popolari.
- Generazione della risposta: L’LLM genera una risposta nel modo consueto usando il prompt ampliato.
Dietro le quinte, il testo recuperato viene aggiunto al contesto di input, tokenizzato ed embeddato. Il modello elabora quindi quel contesto aggiuntivo tramite il suo decoder, il che modifica le probabilità dei token in uscita.
In termini generali, il RAG può essere suddiviso in tre sottotipi. RAG ingenuo segue il processo RAG di base, recuperando informazioni e inserendole nel prompt. RAG avanzato aggiunge funzioni supplementari come la riscrittura delle query e più passaggi di query. RAG modulare si riferisce a un tipo di architettura in cui diverse funzionalità avanzate possono essere trattate come componenti e combinate secondo necessità.
RAG vs. LLM: panoramica dei casi d’uso
RAG offre agli utenti l’accesso a dati aggiornati. Questo si traduce in output degli LLM meno soggetti a allucinazioni e lacune informative. Se devi vedere le fonti delle informazioni usate in un output, il RAG è essenziale anche perché le risposte non ancorate degli LLM non includono attribuzioni.
Casi d’uso del RAG
- Richieste di informazioni sensibili al tempo: Qualsiasi richiesta di informazioni che diventano rapidamente obsolete, che può essere qualcosa di semplice come una previsione del tempo o complesso come un’analisi dettagliata di una notizia emergente, deve basarsi su fonti terze validate.
- Documentazione aziendale: I chatbot IA interni o rivolti ai clienti in cui gli utenti pongono domande relative alla documentazione aziendale o di prodotto dovrebbero essere abilitati al RAG, soprattutto se la documentazione viene aggiornata spesso.
- Assistenza clienti: I chatbot per i clienti hanno bisogno di accedere a documentazione di supporto aggiornata e dettagliata per fornire risposte accurate.
- Settori specializzati (medicina, diritto, finanza, ecc.): Gli LLM che non sono stati addestrati su corpora specifici per il dominio (soprattutto i modelli mainstream) in genere fanno fatica con le sfumature dei prompt specializzati.
Casi d’uso degli LLM
- Attività amministrative: Gli LLM possono completare attività di base con una latenza minima. Il RAG è superfluo per la scrittura di base e le attività amministrative, come il controllo ortografico o la sintesi, quando non sono richieste informazioni esterne.
- Attività creative: Alcune attività creative, come generare un racconto breve o un’immagine, richiedono solo le informazioni fornite nel prompt originale.
- Ragionamento e attività basate sui dati: Se stai lavorando con un ampio set di dati, un LLM non ha bisogno di accedere a informazioni esterne per applicare funzioni di ragionamento e analisi.
- Programmazione generale: Sebbene un workflow di programmazione possa richiedere l’accesso a una codebase privata o alla documentazione, gli LLM sono molto abili nell’eseguire attività di programmazione generali, come correggere bug e creare funzioni, senza ricorrere a fonti esterne.
RAG vs. LLM a contesto esteso, IA agentica e grounding
Esistono tre concetti correlati che sono rilevanti per la distinzione tra RAG e LLM. Si tratta degli LLM a contesto esteso, dell’IA agentica e del grounding.
Gli LLM a contesto esteso possono talvolta essere usati al posto di sistemi abilitati al RAG, mentre l’IA agentica e il grounding sono sinonimi di questi o lavorano insieme ad essi.
LLM a contesto esteso
Si tratta di modelli con ampie finestre di contesto, con alcuni modelli commerciali ampiamente disponibili che arrivano fino a un milione di token.
Se il materiale rilevante può rientrare nella finestra di contesto di un modello ed è disponibile in formato testuale, ci sono alcuni vantaggi nell’usare un approccio basato solo su LLM. Può ridurre la probabilità di errori di recupero, fornire un contesto più completo ed eliminare la necessità di un’ampia configurazione dell’architettura RAG.
IA agentica
Un agente è un sistema che si avvale di più strumenti, incluse le funzionalità RAG, per svolgere attività complesse. Il RAG è una componente dell’IA agentica, e un agente utilizzerà spesso diversi tipi di metodi di recupero (ad es. ricerca web vs. ricerca vettoriale) in base al contenuto di un prompt.
Grounding
Il grounding si riferisce al processo più ampio di utilizzare prove o dati per migliorare l’accuratezza della risposta di un LLM, o ancorarla. Il RAG è una forma di grounding, ma anche aggiungere un documento tecnico a una finestra di contesto costituirebbe grounding.
RAG vs. LLM: esempi reali
Per capire meglio come funziona il RAG rispetto all’uso degli LLM senza RAG, possiamo esaminare un semplice esempio reale usando Perplexity e un caso aziendale ipotetico in cui viene consultato un database vettoriale.
RAG vs. LLM con un prompt semplice
Ecco l’output (limitato a due frasi) quando a Perplexity viene chiesto, "Should I go for a walk in London today?" con la ricerca web IA (una forma di RAG) disattivata:
Sì, se il tempo è ragionevolmente asciutto e hai tempo, una passeggiata a Londra oggi potrebbe essere un piacevole cambio di scenario. Scegli un percorso lungo il South Bank, il Regent’s Canal o attraverso Hyde Park, e porta con te un impermeabile leggero per sicurezza.
Confrontalo con il prompt quando l’LLM può controllare fonti esterne:
Sì, è una buona giornata per una passeggiata a Londra: le previsioni indicano temperature miti intorno ai 19–21°C con schiarite e una probabilità di pioggia molto bassa. Con cieli parzialmente nuvolosi e una brezza leggera, le condizioni sono piacevoli per esplorare i parchi o i percorsi lungo il fiume come il South Bank.
Ci sono somiglianze tra i due, poiché l’LLM utilizza lo stesso processo sottostante di assegnazione dei punteggi ai token. Tuttavia, il secondo esempio include informazioni meteo dettagliate, il che lo rende molto più utile.
RAG vs. LLM con un database vettoriale aziendale
Immagina che un utente ponga al chatbot integrato di un’app bancaria la seguente domanda: “Dove posso scaricare il mio estratto conto più recente?”
La banca che gestisce l’app ha creato un database contenente gli embedding della documentazione aggiornata dei suoi prodotti e lo ha collegato alla pipeline RAG del chatbot. La documentazione consiste in circa 1.000 documenti sorgente, suddivisi in chunk più piccoli e convertiti in vettori per il recupero.
La query dell’utente viene inviata a un modello di embedding e l’applicazione invia quel vettore al database, che restituisce i chunk pertinenti.
Il modello di embedding riceverebbe una richiesta del tipo:
{
"input": "Where can I download my most recent statement?"
}Il modello di embedding restituisce il seguente embedding vettoriale:
{
"embedding": [0.12, -0.44, 0.87, 0.31]
}Il database vettoriale riceve quindi una richiesta come la seguente:
{
"vector": [0.12, -0.44, 0.87, 0.31],
"top_k": 5
}In questo esempio (molto semplificato), il database restituisce i cinque chunk più pertinenti alla query dell’utente, che vengono inviati all’applicazione e inclusi nel prompt dell’LLM.
Quando scegliere RAG vs. un LLM, e quando combinarli
Gli LLM e il RAG sono sistemi complementari. Per questo motivo, la domanda “Quando dovrei scegliere un LLM e quando il RAG?” è posta male. Piuttosto, dovresti chiedere: “Quando un LLM è sufficiente e quando il RAG è ottimale?”
Quando usare un LLM senza RAG abilitato
- Il modello IA scelto ha una finestra di contesto ampia: Se è più semplice includere nel prompt tutte le informazioni o i dati necessari per una risposta accurata, ad esempio caricando un documento, farlo può ridurre la latenza e prevenire problemi legati al recupero.
- Workflow di ragionamento e analisi dei dati: I workflow di analisi e ragionamento che fanno riferimento solo ai dati forniti in un prompt non necessitano delle funzionalità RAG.
- Generazione di codice: In genere il RAG non è necessario per il lavoro di programmazione generale, anche se di solito viene impiegato per attività specifiche di un progetto, come recuperare correzioni precedenti oppure API e documentazione di fornitori.
Quando usare un LLM con RAG abilitato
- Hai bisogno di accedere a informazioni aggiornate: Se un’applicazione IA deve accedere a fonti esterne di informazioni aggiornate per generare una risposta accurata, assicurati sempre che le funzionalità RAG siano abilitate.
- Stai lavorando in un settore specializzato: Per domini come medicina, diritto, istruzione e così via, in cui accuratezza, dettaglio e verifica delle fonti sono importanti, l’uso del solo LLM sarà spesso insufficiente.
- L’output deve fare riferimento a file aziendali interni: Se usi l’IA, internamente o in un’app rivolta ai clienti, per generare contenuti basati su documenti aziendali interni, che si tratti di dati, brand kit, documentazione o file, il RAG fornisce accesso a tali informazioni.
RAG e LLM sono tecnologie complementari ed evolutive
Il RAG ha segnato una grande innovazione nell’evoluzione dell’IA. Affronta tre problemi principali: informazioni obsolete, memoria limitata del modello e lacune informative dovute alla mancanza di dati di addestramento pertinenti, che spesso davano luogo ad allucinazioni. Naturalmente, gli LLM non hanno superato del tutto questi problemi, ma la loro incidenza si è notevolmente ridotta con l’avvento del RAG.
Il RAG non è una tecnologia statica. Si prevede che migliori in diversi ambiti, tra cui il reranking, la latenza durante il recupero e l’uso dei token, le difese di sicurezza contro fonti di dati pericolose, l’integrazione di dati recuperati da più fonti e altro ancora. Man mano che gli LLM e l’IA agentica continueranno a svilupparsi, lo faranno anche i sistemi RAG che li supportano.