Many-shot in-context learning (2024): centinaia di esempi nel prompt

Per anni abbiamo istruito i modelli con due o tre esempi nel prompt. Un lavoro di Google DeepMind del 2024 mostra cosa succede quando gli esempi diventano centinaia o migliaia: guadagni netti, a volte competitivi col fine-tuning, e la capacità di scavalcare i pregiudizi appresi in addestramento.

Per spiegare a qualcuno un compito nuovo avete due strade. Potete mostrargli tre esempi svolti e dirgli «fai così», sperando che colga la regola al volo. Oppure potete dargli un intero quaderno con centinaia di esercizi già risolti, lasciando che se ne impregni prima di provare da solo. Fino a poco tempo fa, con i modelli linguistici, eravamo costretti alla prima strada: nel prompt entravano due, tre, forse cinque esempi, e li chiamavamo few-shot. Non per scelta didattica, ma per limite tecnico — il contesto era troppo corto per il quaderno intero. Un paper di Google DeepMind del 2024, Many-Shot In-Context Learning di Rishabh Agarwal e colleghi, presentato a NeurIPS, studia cosa cambia quando quel limite cade e nel prompt possiamo infilare centinaia o migliaia di esempi.

Da pochi esempi a centinaia, perché solo ora

L’in-context learning è la capacità, emersa nei grandi modelli, di imparare un compito al momento, senza aggiornare i pesi: bastano alcuni esempi dentro il prompt e il modello si adegua. È una forma di apprendimento che vive interamente nella finestra di contesto e svanisce quando la conversazione finisce. Il numero di esempi che ci stavano era però minuscolo, perché le finestre di contesto arrivavano a poche migliaia di token. Con l’arrivo di modelli capaci di leggere finestre lunghissime — nel paper si usa Gemini 1.5 Pro — il tetto si alza di ordini di grandezza. La domanda diventa allora empirica: se possiamo mettere mille esempi invece di tre, il modello impara davvero di più, o dopo una manciata la curva si appiattisce?

La risposta del paper è che il regime many-shot porta guadagni netti su una varietà ampia di compiti, sia generativi sia di classificazione, e che l’effetto è particolarmente marcato sui compiti di ragionamento complesso. Su un caso concreto e ostico — la traduzione automatica verso lingue a basse risorse come il bemba e il curdo — riempire il contesto di esempi arriva a competere con il fine-tuning, cioè con il riaddestramento vero e proprio del modello, senza toccarne i pesi.

Riempire il contesto: da pochi esempi a centinaia Few-shot esempio 1 esempio 2 esempio 3 domanda → ? ··· Many-shot centinaia / migliaia di esempi domanda → ? modello a contesto lungo stessa struttura del prompt, ma il quaderno di esempi passa da tre righe a centinaia — senza toccare i pesi

Il few-shot e il many-shot condividono la forma: alcuni esempi svolti, poi la domanda. Cambia la scala. La finestra di contesto lunga permette di passare da una manciata di esempi a centinaia o migliaia, e il modello impara di più senza alcun riaddestramento.

Quando gli esempi scritti a mano non bastano più

C’è un problema pratico evidente. Tre esempi svolti a mano si trovano; cinquecento, con ragionamento passo-passo scritto da persone, costano tempo e denaro e spesso non esistono affatto. Il paper propone due modi per aggirarlo. Il primo è il Reinforced ICL: invece di pretendere spiegazioni umane, si lascia che sia il modello a generare da sé i propri ragionamenti sui problemi, tenendo poi solo quelli che arrivano alla risposta corretta. È l’equivalente di far svolgere gli esercizi alla classe e archiviare come materiale di studio solo i compiti risultati giusti — la fatica di produrre gli esempi si sposta dall’uomo alla macchina.

Il secondo è ancora più spartano: l’Unsupervised ICL, in cui nel contesto si mettono soltanto i problemi del dominio, senza alcuna soluzione. Sorprendentemente, su certi compiti di ragionamento aiuta comunque: è come se la sola esposizione alla forma delle domande — il tipo di problema, il vocabolario, la struttura — orientasse il modello nella direzione giusta, prima ancora di vedere una risposta. Entrambe le tecniche, secondo il paper, possono essere efficaci nel regime many-shot, in particolare proprio dove il ragionamento conta.

Scavalcare i pregiudizi del pre-addestramento

Il risultato concettualmente più interessante riguarda i pregiudizi appresi in addestramento. Un modello arriva al prompt con convinzioni radicate: certe associazioni, certe etichette, certi automatismi che ha assorbito dai dati. Nel few-shot questi pregiudizi tendono a vincere — pochi esempi contrari non bastano a smuoverli. Nel many-shot, invece, il paper mostra che con abbastanza esempi il modello arriva a sovrascrivere quei pregiudizi, seguendo la regola mostrata nel contesto anche quando contraddice ciò che aveva imparato prima. È la differenza tra un aneddoto e una mole di prove: un caso isolato non cambia idea a nessuno, cinquecento casi coerenti sì. C’è di più: il regime many-shot permette di insegnare al modello associazioni del tutto nuove, che nel pre-addestramento non ha mai visto, come classificare dati numerici in molte dimensioni a partire dai soli esempi. Sono compiti dove il few-shot fallisce quasi per definizione, perché tre casi non bastano a suggerire una regola in uno spazio così grande. E i guadagni non riguardano solo la generazione di testo: si vedono anche sui compiti discriminativi, cioè di pura classificazione, dove il modello deve solo scegliere l’etichetta giusta.

Con pochi esempi il modello segue ciò che ha imparato in addestramento; con centinaia, comincia a seguire ciò che gli mostri adesso.

Un’ultima osservazione del paper è di metodo, e vale per chiunque valuti questi sistemi. La perdita sulla predizione del token successivo — la metrica che misura quanto il modello è «sicuro» della parola che sta per scrivere — si rivela un indicatore inaffidabile della qualità reale nel regime many-shot. In pratica il termometro di sicurezza del modello e la sua bravura effettiva sul compito possono divergere: giudicarlo dal primo può ingannare. Va aggiunto un costo che cresce in modo lineare con il numero di esempi: più quaderno significa più token da elaborare a ogni richiesta, quindi inferenza più cara.

Perché ti riguarda

Per chi lavora con gli LLM, il many-shot ridisegna un compromesso quotidiano. Davanti a un compito ostico, la prima mossa non deve essere per forza il fine-tuning — costoso, lento, che richiede competenze e infrastruttura. Spesso basta riempire il contesto di esempi buoni, magari generati dal modello stesso e filtrati per correttezza, e restare a costo zero di addestramento. Il prezzo si sposta sull’inferenza, che cresce con il numero di esempi, e va messo nel conto. Ma il messaggio di fondo è che la finestra di contesto lunga non serve solo a leggere documenti giganti: è anche uno spazio didattico, un quaderno in cui insegnare al modello un compito su misura, sul momento e senza toccarne i pesi. È una leva che vale la pena provare prima di quelle più pesanti.

Il paper

Rishabh Agarwal, Avi Singh, Lei M. Zhang, Bernd Bohnet, Luis Rosias, Stephanie Chan, Biao Zhang, Ankesh Anand, Zaheer Abbas, Azade Nova, John D. Co-Reyes, Eric Chu, Feryal Behbahani, Aleksandra Faust, Hugo Larochelle, Many-Shot In-Context Learning, NeurIPS 2024. Disponibile su arXiv: arxiv.org/abs/2404.11018.

I commenti sono riservati agli iscritti.

Accedi per commentare