The Pulse
Opera verifica se gli agenti di programmazione danno seguito alle correzioni
I ricercatori hanno presentato Opera, un framework di revisione critica che tiene traccia delle proprie correzioni mentre gli agenti di programmazione lavorano. Su tre benchmark, lo studio riporta tassi di risoluzione dei compiti più elevat

AI.info Team · Scritto con l’IA ·
Una versione rivista dello studio, pubblicata l’8 ottobre, descrive Opera, un framework che mantiene aperta una correzione rivolta a un agente di programmazione finché non emergono prove che il problema sottostante è stato risolto. Invece di formulare una critica una tantum e passare oltre, Opera verifica le azioni successive dell’agente rispetto al problema individuato inizialmente. I ricercatori riportano un miglioramento dei tassi di risoluzione dei compiti su tre benchmark di programmazione e mostrano che le esecuzioni guidate da Opera possono anche fornire dati per addestrare un modello più piccolo.
Opera è il nome del framework di ricerca descritto nello studio, non l’annuncio di una funzionalità da parte dell’azienda produttrice del browser Opera. Il lavoro affronta un limite comune nei compiti di programmazione lunghi: un agente può ripetere un comando che fallisce, modificare il codice sbagliato o dichiarare concluso il lavoro prima di aver verificato le proprie modifiche. Anche un suggerimento può creare problemi se scambia un passaggio non ancora completato, ma ragionevole, per un errore.
Una correzione resta aperta finché non cambiano le prove
«Presentiamo Opera, un framework di revisione critica verbale che tratta ogni correzione come una nota persistente, seguita finché il problema diagnosticato non viene risolto». Kai Mei et al., «Opera: A Verbal Critic Framework for Long-horizon Coding Agents»
Il framework combina revisioni programmate con controlli immediati in occasione di eventi come azioni ripetute, chiamate agli strumenti non riuscite, dichiarazioni di completamento o una consegna finale. Una revisione non comporta necessariamente un riscontro: Opera può restare in silenzio se non trova motivi che giustifichino un intervento. Quando segnala un problema, usa uno di nove operatori tipizzati per identificare il tipo di errore e indicare le prove, le istruzioni per correggerlo e un criterio di risoluzione.
Opera mantiene aperta al massimo una correzione alla volta. Una verifica di ammissione controlla se le prove sostengono la diagnosi e se la correzione proposta è necessaria; una distinta verifica di chiusura stabilisce se il criterio di risoluzione prestabilito è stato soddisfatto. Il sistema tiene traccia separatamente del fatto che l’agente abbia provato a seguire il suggerimento e del fatto che il problema sia stato effettivamente risolto: un tentativo di modifica, da solo, non chiude la nota.
I risultati variano su tre benchmark di programmazione
Il gruppo ha testato Opera su Terminal-Bench 2.1, un sottoinsieme di 100 compiti di SWE-Bench Pro e DeepSWE v1.1, usando quattro modelli di policy. Lo studio riporta incrementi massimi rispetto agli agenti senza un sistema di revisione critica di 12,4 punti percentuali su Terminal-Bench, 15,0 punti su SWE-Bench Pro e 8,9 punti su DeepSWE. Sono i miglioramenti migliori tra i modelli testati, non i risultati di un unico agente su tutti i benchmark.
In un confronto che usa Qwen3.8-27B come modello di policy per la programmazione, Opera porta il tasso di risoluzione dal 65,9% al 73,8% su Terminal-Bench 2.1, dal 75,3% al 79,3% sul sottoinsieme di SWE-Bench Pro e dal 32,4% al 41,3% su DeepSWE v1.1. Registra il tasso medio più alto tra i metodi di revisione critica testati su tutti e tre, ma su SWE-Bench Pro il suo vantaggio rispetto al metodo di riferimento più efficace è di soli 0,6 punti percentuali. Gli autori riferiscono inoltre che i miglioramenti tendono a ridursi quando un agente riesce già a risolvere più compiti senza aiuto.
Le esecuzioni guidate possono addestrare un modello più piccolo
I ricercatori hanno anche sottoposto Qwen3.5-9B a fine-tuning usando esecuzioni riuscite in cui il modello stesso aveva ricevuto le correzioni di Opera. Su repository di SWE-Bench Pro esclusi dall’addestramento, il tasso di risoluzione del modello è salito dal 28,7% al 38,9% senza un sistema di revisione critica durante l’inferenza. Il risultato è vicino al 39,5% ottenuto con il fine-tuning su esecuzioni riuscite del modello più grande Qwen3.8-27B.
La differenza è emersa su Terminal-Bench 2.1, un benchmark con un formato dei compiti e un’infrastruttura di esecuzione diversi. L’addestramento sulle esecuzioni del modello più grande ha ridotto il tasso di Qwen3.5-9B su quel benchmark dal 23,6% al 7,9%, mentre l’addestramento guidato da Opera ha prodotto un tasso del 25,8%. Secondo la spiegazione fornita nello studio, gli esempi di addestramento di Opera conservano le azioni compiute dal modello più piccolo e aggiungono correzioni mirate, invece di sostituire la sua esperienza con il comportamento di un altro modello.
Un sistema di revisione critica non può colmare la mancanza di capacità
I risultati hanno limiti chiari. Qwen3.5-9B non ha risolto alcun compito di DeepSWE nelle esecuzioni riportate, con o senza Opera, e lo studio osserva che l’autocritica aggiunge calcolo durante l’inferenza, un fattore che il confronto non pareggia. I sistemi di revisione critica più capaci sono stati generalmente più utili quando il modello di programmazione incontrava difficoltà, mentre un modello che valutava criticamente il proprio operato funzionava meglio quando aveva già capacità sufficienti per mettere in pratica i suggerimenti.
Opera migliora dunque, in questi test, il modo in cui un agente di programmazione riceve e verifica le correzioni; non garantisce che ogni diagnosi sia giusta né che i riscontri possano aiutare un agente incapace di risolvere il compito. Su DeepSWE, il tasso di risoluzione di Qwen3.5-9B è rimasto a zero con e senza il sistema di revisione critica.