Paper / 038

RAG: dare al modello una biblioteca

lettura: 11 minper: pro, builderpdf ↗arXiv ↗
PAPER ORIGINALE“Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks”

Un modello linguistico sa quello che ha visto in addestramento, e niente di quello che è successo dopo o di quello che sta nei tuoi file. Se gli chiedi del tuo manuale aziendale, o inventa o si arrende. RAG, retrieval-augmented generation, è la mossa che risolve questo: prima di rispondere, il sistema va a cercare i pezzi giusti in una raccolta di documenti e li mette sotto gli occhi del modello. Nel 2020 un gruppo di Facebook AI (Patrick Lewis e colleghi) ha formalizzato l’idea, e da lì discende ogni prodotto che oggi promette di far «chattare con i tuoi documenti».

Perché conta per te

È il meccanismo dietro gli assistenti che rispondono sul tuo materiale: il manuale, i verbali, la base di conoscenza dell’azienda. Capire come funziona ti dice dove si rompe. Un assistente RAG è bravo quanto la ricerca che sta sotto: se recupera il pezzo giusto, risponde bene; se recupera il pezzo sbagliato, risponde male con la stessa sicurezza. Sapere questo sposta la tua attenzione dal modello alla domanda che conta davvero: ha trovato le pagine giuste prima di rispondere?

Cosa dice il paper

Il paper distingue due tipi di memoria. C’è la memoria parametrica, quella che il modello ha nei suoi pesi, appresa una volta in addestramento e poi fissa. E c’è la memoria non parametrica, un archivio esterno di testi (nel paper, Wikipedia) che si può cercare al momento e aggiornare senza riaddestrare niente. RAG unisce le due: davanti a una domanda, un componente di ricerca pesca dall’archivio i passaggi più pertinenti, e il modello genera la risposta avendoli nel contesto, non solo la sua memoria.

Il risultato, all’epoca, era lo stato dell’arte su una serie di compiti che richiedono conoscenza precisa, come rispondere a domande di cultura generale dove serve il fatto giusto e non uno plausibile. Ma la parte che è rimasta non è il punteggio, è l’architettura: separare quello che il modello sa in generale da quello che deve andare a prendere per il caso specifico. Da quella separazione discende tutta la famiglia di prodotti che incolla i tuoi documenti nella risposta.

Quanto fidarsi

Il paper è del 2020, e il RAG di oggi è spesso più semplice di quello originale (nel paper l’intero sistema era addestrato insieme; nella pratica comune oggi si combinano una ricerca e un modello già pronti). Tre cose da sapere.

La prima, decisiva: la ricerca è il collo di bottiglia. Se il pezzo giusto non viene recuperato, il modello non può usarlo, e o inventa o dice di non sapere. Gran parte della qualità di un sistema RAG non sta nel modello, sta in quanto bene trova i passaggi pertinenti. Un assistente che sbaglia le risposte sui tuoi documenti quasi sempre sta sbagliando la ricerca, non la scrittura.

La seconda: avere il pezzo giusto nel contesto non garantisce che il modello lo usi bene. Può ignorarlo, leggerlo male, o mescolarlo con la sua memoria e produrre un ibrido sbagliato. Il recupero riduce le allucinazioni, non le azzera.

La terza: RAG lavora su ciò che gli metti nell’archivio. Se l’archivio è incompleto o vecchio, le risposte lo saranno. Non è una fonte di verità, è uno specchio dei documenti che gli hai dato.

Cosa farne

La lezione pratica: quando hai bisogno di risposte su materiale tuo, non affidarti alla memoria del modello, dagli i documenti pertinenti nel contesto. E quando valuti un assistente sui tuoi documenti, controlla per prima cosa il recupero: fagli mostrare da quale pezzo ha tratto la risposta. Se non sa indicarlo, o indica il pezzo sbagliato, il problema è lì, prima ancora della risposta.

Cosa non concludere: che «RAG» sia sinonimo di «affidabile». Sposta il problema della verità dai pesi del modello alla qualità della ricerca e dei documenti. È un miglioramento reale e la base di gran parte del lavoro utile con l’AI, ma va verificato dove ora vive il rischio: nel recupero.

Dove approfondire

Lo scaffolding dell’agente di ricerca tra i materiali del corso mette in pratica il principio recupera-poi-rispondi in uno script che puoi leggere ed eseguire, per vedere dal vivo cosa succede quando la ricerca trova o non trova il pezzo giusto.

Scrivi per cercare fra corso, playbook, skill, paper…