Cosa significa Generazione migliorata tramite recupero?

Cosa significa Rigenerazione per una Generazione Migliorata?

Per capire gli ultimi progressi nell’intelligenza artificiale generativa, immaginiamo una aula di tribunale.

Giudici sentono e decidono casi in base alla loro comprensione generale della legge. A volte un caso – come una causa per negligenza professionale o una disputa sul lavoro – richiede competenze specifiche, quindi i giudici inviano gli impiegati di tribunale in una biblioteca di legge, alla ricerca di precedenti e casi specifici che possono citare.

Come un buon giudice, i grandi modelli di linguaggio (LLM) possono rispondere a una vasta gamma di domande umane. Ma per fornire risposte autorevoli che citano fonti, il modello ha bisogno di un assistente che faccia alcune ricerche.

L’impiegato di tribunale dell’Intelligenza Artificiale è un processo chiamato generazione con recupero potenziato, abbreviato in RAG.

La Storia del Nome

Patrick Lewis, autore principale del documento del 2020 che ha coniato il termine, si è scusato per l’acronimo poco lusinghiero che ora descrive una crescente famiglia di metodi in centinaia di articoli e decine di servizi commerciali che rappresentano il futuro dell’intelligenza artificiale generativa.

Immagine di Patrick Lewis, autore principale del documento RAG
Patrick Lewis

“Avremmo sicuramente pensato di più al nome se avessimo saputo che il nostro lavoro sarebbe diventato così diffuso”, ha detto Lewis in un’intervista da Singapore, dove stava condividendo le sue idee con una conferenza regionale di sviluppatori di database.

“Abbiamo sempre pianificato di avere un nome più gradevole, ma quando è arrivato il momento di scrivere il documento, nessuno aveva una migliore idea”, ha detto Lewis, che ora guida un team RAG presso la startup di intelligenza artificiale Cohere.

Quindi, Cos’è la Generazione con Recupero Potenziato?

La generazione con recupero potenziato è una tecnica per migliorare l’accuratezza e l’affidabilità dei modelli di intelligenza artificiale generativa con fatti presi da fonti esterne.

In altre parole, colma una lacuna di come funzionano gli LLM. All’interno, gli LLM sono reti neurali, misurate tipicamente dal numero di parametri che contengono. I parametri di un LLM rappresentano essenzialmente i modelli generali di come gli esseri umani usano le parole per formare frasi.

Questa profonda comprensione, talvolta chiamata conoscenza parametrica, rende gli LLM utili nel rispondere rapidamente a quesiti generali. Tuttavia, non è utile per gli utenti che vogliono approfondire un argomento attuale o più specifico.

Combina Risorse Interne ed Esterne

Lewis e colleghi hanno sviluppato la generazione con recupero potenziato per collegare i servizi di intelligenza artificiale generativa a risorse esterne, soprattutto quelle ricche di dettagli tecnici aggiornati.

Il documento, con coautori dalla ex Facebook AI Research (ora Meta AI), University College London e New York University, chiamato RAG “una ricetta di fine-tuning ad uso generale” perché può essere utilizzato da quasi tutti gli LLM per connettersi a praticamente tutte le risorse esterne.

Costruire la Fiducia dell’Utente

La generazione con recupero potenziato fornisce ai modelli fonti che possono citare, come note a piè di pagina in un articolo di ricerca, in modo che gli utenti possano verificare qualsiasi affermazione. Ciò costruisce fiducia.

Inoltre, la tecnica può aiutare i modelli a chiarire l’ambiguità in una richiesta dell’utente. Riduce anche la possibilità che un modello faccia una congettura sbagliata, un fenomeno chiamato a volte allucinazione.

Un altro grande vantaggio di RAG è che è relativamente facile. Un blog di Lewis e tre dei coautori del documento hanno affermato che gli sviluppatori possono implementare il processo con soli cinque righe di codice.

Ciò rende il metodo più veloce e meno costoso rispetto a rieducare un modello con set di dati aggiuntivi. E consente agli utenti di cambiare facilmente le nuove fonti al volo.

Come la Generazione con Recupero Potenziato VIene Utilizzata dalle Persone

Con la generazione con recupero potenziato, gli utenti possono essenzialmente conversare con i repository di dati, aprendo nuovi tipi di esperienze. Ciò significa che le applicazioni di RAG potrebbero essere molte volte il numero di set di dati disponibili.

Ad esempio, un modello AI generativo integrato con un indice medico potrebbe essere un ottimo assistente per un medico o un infermiere. Gli analisti finanziari trarrebbero vantaggio da un assistente collegato ai dati di mercato.

In effetti, quasi ogni azienda può trasformare i propri manuali tecnici o politici, video o registri in risorse chiamate basi di conoscenza che possono migliorare LLM. Queste fonti possono consentire casi d’uso come il supporto clienti o sul campo, la formazione dei dipendenti e la produttività degli sviluppatori.

Il potenziale ampio è la ragione per cui aziende tra cui AWS, IBM, Glean, Google, Microsoft, NVIDIA, Oracle e Pinecone stanno adottando RAG.

Guida all’inizio con la generazione potenziata dal recupero

Per aiutare gli utenti a iniziare, NVIDIA ha sviluppato un’architettura di riferimento per la generazione potenziata dal recupero. Include un chatbot di esempio e gli elementi necessari agli utenti per creare le proprie applicazioni con questo nuovo metodo.

Il flusso di lavoro utilizza NVIDIA NeMo, un framework per lo sviluppo e la personalizzazione di modelli AI generativi, nonché software come NVIDIA Triton Inference Server e NVIDIA TensorRT-LLM per l’esecuzione di modelli AI generativi in produzione.

I componenti software fanno tutti parte di NVIDIA AI Enterprise, una piattaforma software che accelera lo sviluppo e la distribuzione di AI pronta per la produzione, con la sicurezza, il supporto e la stabilità di cui le aziende hanno bisogno.

Per ottenere le migliori prestazioni per i flussi di lavoro RAG sono necessarie enormi quantità di memoria e calcolo per spostare e elaborare i dati. Il NVIDIA GH200 Grace Hopper Superchip, con i suoi 288 GB di rapida memoria HBM3e e 8 petaflop di calcolo, è l’ideale: può fornire un aumento di velocità del 150x rispetto all’utilizzo di una CPU.

Una volta che le aziende si familiarizzano con RAG, possono combinare una varietà di LLM pronti all’uso o personalizzati con basi di conoscenza interne o esterne per creare una vasta gamma di assistenti che aiutano dipendenti e clienti.

RAG non richiede un data center. I LLM stanno debuttando su PC Windows, grazie al software NVIDIA che consente di accedere a tutti i tipi di applicazioni anche sui laptop.

Grafico mostra l'esecuzione di RAG su un PC
Un’applicazione di esempio per RAG su un PC.

I PC dotati di GPU NVIDIA RTX possono ora eseguire alcuni modelli AI localmente. Utilizzando RAG su un PC, gli utenti possono collegarsi a una fonte di conoscenza privata, che siano email, note o articoli, per migliorare le risposte. L’utente può quindi essere sicuro che la sua fonte di dati, i suggerimenti e la risposta rimangano tutti privati e sicuri.

Un recente articolo fornisce un esempio di RAG accelerato da TensorRT-LLM per Windows per ottenere risultati migliori rapidamente.

La storia del recupero potenziato dalla generazione

Le radici di questa tecnica risalgono almeno agli anni ’70. In quel periodo, i ricercatori del recupero delle informazioni prototiparono ciò che chiamarono sistemi di domande e risposte, applicazioni che utilizzano l’elaborazione del linguaggio naturale (NLP) per accedere al testo, inizialmente su argomenti specifici come il baseball.

I concetti dietro a questo tipo di estrazione di testo sono rimasti abbastanza costanti nel corso degli anni. Ma i motori di apprendimento automatico che li guidano sono cresciuti notevolmente, aumentando la loro utilità e popolarità.

Nel metà degli anni ’90, il servizio Ask Jeeves, ora Ask.com, ha reso popolare la risposta alle domande con la sua mascotte di un valletto ben vestito. IBM Watson è diventato una celebrità televisiva nel 2011 quando ha battuto facilmente due campioni umani nello show televisivo Jeopardy!

Immagine di Ask Jeeves, un servizio web simile a RAG

Oggi, le LLM stanno portando i sistemi di risposta alle domande a un livello completamente nuovo.

Intuizioni da un laboratorio di Londra

Il paper seminale del 2020 è arrivato mentre Lewis stava conseguendo un dottorato in NLP presso l’University College London e lavorando per Meta presso un nuovo laboratorio di intelligenza artificiale a Londra. Il team stava cercando modi per inserire più conoscenza nei parametri di una LLM e utilizzando un benchmark che aveva sviluppato per misurarne i progressi.

Basandosi su metodi precedenti e ispirandosi a un paper dei ricercatori di Google, il gruppo “aveva questa visione convincente di un sistema addestrato che avesse un indice di recupero al suo interno, così da poter imparare e generare qualsiasi output di testo desiderato”, ha ricordato Lewis.

Immagine di IBM Watson che vince allo show televisivo "Jeopardy", popolarizzando un servizio AI simile a RAG
Il sistema di risposta alle domande di IBM Watson è diventato una celebrità quando ha vinto grosso nello show televisivo Jeopardy!

Quando Lewis ha collegato ai lavori in corso un promettente sistema di recupero di un altro team di Meta, i primi risultati sono stati sorprendentemente impressionanti.

“Ho mostrato tutto al mio supervisore e lui ha detto, ‘Wow, prendi la vittoria. Questo tipo di cose non accade spesso’, perché queste flussi di lavoro possono essere difficili da impostare correttamente la prima volta”, ha detto.

Lewis attribuisce anche importanti contributi da parte dei membri del team Ethan Perez e Douwe Kiela, rispettivamente dell’Università di New York e del Facebook AI Research.

Al termine del lavoro, che è stato eseguito su un cluster di GPU NVIDIA, è stato dimostrato come rendere i modelli di intelligenza artificiale generativi più autorevoli e affidabili. Da allora è stato citato da centinaia di paper che hanno ampliato ed esteso i concetti in quella che continua ad essere un’area di ricerca attiva.

Come funziona il processo di generazione con recupero

A livello alto, ecco come un breve tecnico NVIDIA descrive il processo RAG.

Quando gli utenti pongono una domanda a una LLM, il modello di intelligenza artificiale invia la query a un altro modello che la converte in un formato numerico in modo che le macchine possano leggerla. La versione numerica della query viene talvolta chiamata embedding o vettore.

Diagramma NVIDIA su come funziona RAG con LLMs
La generazione con recupero combina LLMs con modelli di embedding e database di vettori.

Il modello di embedding quindi confronta questi valori numerici con vettori presenti in un indice leggibile dalle macchine di una base di conoscenza disponibile. Quando trova una corrispondenza o più corrispondenze, recupera i dati correlati, li converte in parole leggibili dall’uomo e li restituisce alla LLM.

Infine, la LLM combina le parole recuperate con la propria risposta alla query in una risposta finale che presenta all’utente, citando eventualmente le fonti trovate dal modello di embedding.

Mantenere le fonti aggiornate

In background, il modello di embedding crea e aggiorna continuamente indici leggibili dalle macchine, chiamati a volte database di vettori, per le nuove e aggiornate basi di conoscenza man mano che diventano disponibili.

Grafico di un processo RAG descritto da LangChain
La generazione con recupero combina LLMs con modelli di embedding e database di vettori.

Molti sviluppatori trovano LangChain, una libreria open-source, particolarmente utile per concatenare gli LLM, incorporare modelli e basi di conoscenza. NVIDIA utilizza LangChain nella sua architettura di riferimento per la generazione potenziata dalla ricerca.

La comunità di LangChain fornisce la propria descrizione di un processo RAG.

Guardando avanti, il futuro dell’AI generativa sta nel concatenare creativamente tutti i tipi di LLM e basi di conoscenza per creare nuovi tipi di assistenti che forniscono risultati autorevoli verificabili dagli utenti.

Prova concretamente l’utilizzo della generazione potenziata dalla ricerca con un chatbot AI in questo laboratorio NVIDIA LaunchPad.