Uno studio recente ha evidenziato le difficoltà che i modelli di intelligenza artificiale (IA) continuano ad affrontare quando si tratta di eseguire il debug del software, un compito tradizionalmente gestito con successo dagli esseri umani. Sebbene l’intelligenza artificiale abbia fatto enormi progressi in molti ambiti, nel debug la sua capacità di risolvere problemi complessi si è rivelata inferiore alle aspettative. Secondo una ricerca condotta da Microsoft (MS) Research, i più recenti modelli IA hanno mostrato risultati deludenti nei benchmark di debug del software.
Il team di ricerca ha progettato un esperimento utilizzando un “agente basato su prompt”, che ha accesso a vari strumenti di debug, tra cui il debugger Python. L’agente è stato testato su nove modelli di intelligenza artificiale, tra cui alcuni dei più avanzati, e ha dovuto risolvere 300 attività di debug accuratamente selezionate dal benchmark ‘SWE-bench Lite’. I risultati sono stati piuttosto insoddisfacenti. Il modello con il tasso di successo più alto è stato ‘Claude 3.7 Sonnet’ di Antropic, che ha ottenuto un tasso di successo medio del 48,4%. Altri modelli, come ‘o1’ di OpenAI e ‘o3-mini’, hanno raggiunto rispettivamente il 30,2% e il 22,1%. La maggior parte dei modelli testati non è riuscita a risolvere nemmeno la metà delle attività proposte.
Questi risultati mettono in luce una lacuna significativa nell’addestramento dei modelli di IA per compiti complessi come il debug. I ricercatori hanno identificato la mancanza di dati come la causa principale delle scarse prestazioni. In particolare, c’è una carenza di dati che includano processi decisionali sequenziali, come quelli necessari per il debug, dove ogni passo è il risultato di un giudizio e di un’azione che si costruiscono gradualmente.
Questo studio suggerisce che, per migliorare le capacità di IA nel debug, sarà necessario un approccio di addestramento che si basi sulla “traiettoria” degli agenti, ovvero sulla sequenza di interazioni con gli strumenti di debug per raccogliere informazioni necessarie alla risoluzione dei problemi. Nonostante il crescente utilizzo dell’intelligenza artificiale nella generazione di codice e nel supporto alla programmazione, come sottolineato dai CEO di Google e Meta, questa ricerca mostra chiaramente che l’intelligenza artificiale ha ancora molta strada da fare prima di raggiungere le capacità decisionali degli esseri umani in contesti di sviluppo software reali.