La RAG standard recupera sempre, indipendentemente dal fatto che il recupero sia utile o meno. Self-RAG di Asai et al. (ICLR 2024 Oral) pone una domanda diversa: e se fosse il modello stesso a decidere quando cercare qualcosa, e poi a valutare il risultato? Questo si rivela piuttosto importante, e il meccanismo è abbastanza pulito da meritare uno studio attento.
Il documento
La lamentela principale con la Generazione Potenziata da Recupero (RAG) vanilla è che è indiscriminata: recupera un numero fisso di passaggi per ogni input, li prepone e genera. Funziona abbastanza bene quando il recupero aiuta, ma danneggia attivamente quando i passaggi sono irrilevanti o quando il modello ha già la risposta nei suoi pesi. Il documento introduce Self-Reflective Retrieval-Augmented Generation (Self-RAG), scritto da Akari Asai, Zeqiu Wu, Yizhong Wang, Avirup Sil e Hannaneh Hajishirzi (Università di Washington e IBM Research).
Il meccanismo chiave è un insieme di quattro token di riflessione speciali incorporati nel vocabolario del modello durante l'addestramento. Retrieve decide se chiamare o meno il recuperatore. IsRel (rilevanza) valuta se un passaggio recuperato contiene effettivamente informazioni utili per la query. IsSup (supporto) verifica se l'affermazione generata è completamente, parzialmente o per nulla supportata dal passaggio. IsUse (utilità) assegna un punteggio alla qualità complessiva della risposta da 1 a 5. Il modello impara a emettere questi token in linea con il suo output normale — quindi critica il proprio recupero e generazione in un unico passaggio in avanti.
L'addestramento è in due fasi: prima, un modello critico (LLaMA 2, 7B fine-tuned) viene addestrato su circa 4.000–20.000 esempi etichettati per tipo di token, raggiungendo oltre il 90% di accordo con le previsioni di GPT-4. Quel critico annota quindi offline un corpus di 150.000 esempi di istruzioni-output, e il generatore viene addestrato su questi dati annotati con i token di riflessione trattati come vocabolario ordinario. Non è richiesto apprendimento per rinforzo.
Idee chiave
- I quattro token di riflessione (Retrieve, IsRel, IsSup, IsUse) forniscono al modello un dialogo interno strutturato sul fatto che le prove siano degne di fiducia — non solo una decisione binaria recupera/non recuperare.
- Self-RAG 13B raggiunge il 55,8% su PopQA, 69,3% su TriviaQA, 74,5% su PubHealth, 73,1% su ARC-Challenge e un FactScore di Biografia di 80,2 — superando ChatGPT e Llama2-chat potenziato da recupero su ciascuno di questi.
- Le ablazioni su PopQA mostrano che la rimozione del recupero al momento del test costa 20,8 punti percentuali, mentre la rimozione del solo critico costa solo 2,9 pp — il recuperatore è portante; la critica aggiunge calibrazione sopra.
- Al momento dell'inferenza, i pesi sui token di critica possono essere regolati per bilanciare la precisione delle citazioni con la fluidità senza alcun riaddestramento. Ciò rende il comportamento del modello configurabile per diverse applicazioni a valle.
- Il comitato di programma ICLR 2024 ha assegnato a Self-RAG lo status di presentazione orale (top 1%), che riflette un genuino riconoscimento tra pari del contributo tecnico.
Cosa regge — e cosa no
I risultati delle ablazioni sono convincenti. Il divario tra recupero-sempre e nessun-recupero è ampio (20,8 pp); il modello ha chiaramente imparato a discriminare il recupero utile dal rumore. I token IsRel e IsSup aggiungono un valore misurabile oltre al solo recupero adattivo. Questo è un risultato significativo, non solo una riformulazione.
Ciò di cui sono meno convinto è l'affermazione sulla generalizzazione. Tutti e cinque i compiti di valutazione (PopQA, TriviaQA, PubHealth, ARC-Challenge, ASQA) sono domande a risposta breve o a scelta multipla — l'esatta impostazione in cui un singolo passaggio recuperato può fornire un segnale decisivo. La generazione di lunghi testi su contesti multi-documento, che è dove risiedono i compiti finanziari, riceve meno attenzione. Il FactScore di Biografia (80,2) è il proxy più vicino, ma le biografie sono relativamente ben strutturate rispetto a un vasto registro spese pluriennale.
C'è anche un problema di riproducibilità: le etichette di addestramento del modello critico provengono da GPT-4. Ciò rende la qualità delle etichette dipendente da un sistema proprietario e introduce costi API che non vengono riportati. CRAG (arXiv:2401.15884) ha successivamente mostrato che un valutatore di recupero da 0,77B — molto più leggero del critico 7B di Self-RAG — poteva correggere la qualità del recupero e guadagnare 19,0 pp rispetto alla RAG standard su PopQA, suggerendo che il critico pesante fine-tuned potrebbe non essere necessario. Questa è una sfida significativa al design, anche se l'intuizione centrale sul recupero selettivo rimane valida.
Infine, il confronto di base è importante. Superare ChatGPT (probabilmente GPT-3.5-turbo, fine 2023) e Llama2-chat è un parametro di riferimento ragionevole per un modello open 13B, ma i modelli all'avanguardia si sono mossi sostanzialmente da allora. Se il recupero adattivo di Self-RAG batterebbe un GPT-4o ben istruito con una semplice configurazione di recupero-sempre sugli stessi benchmark non è affrontato.
Perché questo è importante per l'IA finanziaria
Gli agenti finanziari che operano su registri Beancount affrontano esattamente il problema di discriminazione del recupero affrontato da Self-RAG. Quando un utente chiede "qual è il mio reddito netto questo mese?", l'agente può calcolarlo dal suo contesto caricato — il recupero potrebbe solo aggiungere rumore. Quando lo stesso utente chiede "ho registrato la fattura dell'appaltatore del terzo trimestre?" l'agente deve scansionare potenzialmente anni di voci. Recuperare sempre spreca contesto e rischia di iniettare vecchie transazioni irrilevanti; non recuperare mai perde la ricerca.
I token IsRel e IsSup si mappano chiaramente alla logica di convalida del registro. IsRel: la voce di transazione recuperata si riferisce effettivamente alla query? IsSup: il contesto recuperato supporta effettivamente la cifra del saldo generato, o il numero è allucinato? Il punteggio di utilità (1–5) potrebbe informare la fiducia nella scrittura: impegnare una voce di giornale proposta solo quando il modello dà al proprio ragionamento un 4 o 5, e contrassegnare il resto per la revisione umana.
Anche il problema della riproducibilità è importante qui. Per un agente contabile di produzione, dipendere da GPT-4 per generare etichette di addestramento è un vincolo operativo. Se un valutatore più leggero (alla CRAG) può ottenere un recupero selettivo comparabile, questo è il percorso più implementabile. I principi di progettazione di Self-RAG — decidere prima di recuperare, criticare dopo il recupero — rimangono preziosi anche se la specifica ricetta di addestramento dei token viene sostituita.
Cosa leggere dopo
- CRAG: Corrective Retrieval Augmented Generation (arXiv:2401.15884) — si basa sull'idea di recupero adattivo di Self-RAG con un valutatore più leggero e un fallback di ricerca web quando il recupero locale fallisce; vale la pena confrontarlo direttamente con Self-RAG su benchmark sovrapposti.
- RQ-RAG: Learning to Refine Queries for Retrieval Augmented Generation (arXiv:2404.00610) — si concentra specificamente sulla scomposizione delle query per complesse domande a più salti, che è lo scenario che Self-RAG gestisce con meno eleganza.
- FRAMES: Retrieval and Augmentation for Multi-Hop Evaluation (arXiv:2409.12941) — benchmark Google DeepMind per RAG multi-documento che richiede l'incatenamento di diversi fatti recuperati; un test più difficile naturale per i modelli in stile Self-RAG.