Apple studia come l’IA possa prevedere bug, scrivere test e correggere codice

Apple studia come l’IA possa prevedere bug, scrivere test e correggere codice

Apple guarda al futuro dello sviluppo software e lo fa con tre nuove ricerche che raccontano un approccio sorprendentemente concreto all’uso dell’intelligenza artificiale. I risultati mostrano come i modelli di nuova generazione possano individuare bug, scrivere test e persino correggere il codice in modo autonomo, con miglioramenti significativi in termini di efficienza e qualità.

Le pubblicazioni, firmate dai ricercatori di Apple, aprono una finestra su come l’IA possa diventare una vera alleata degli ingegneri, non solo come strumento di automazione, ma come parte integrante del ciclo di sviluppo.

Il modello ADE-QVAET e la previsione dei bug

Nel primo studio, i ricercatori presentano ADE-QVAET, un modello di intelligenza artificiale progettato per superare i limiti dei grandi modelli linguistici attuali, spesso soggetti a “allucinazioni, generazione povera di contesto e perdita di relazioni critiche durante il recupero delle informazioni”.

ADE-QVAET combina quattro tecniche avanzate: Adaptive Differential Evolution (ADE), Quantum Variational Autoencoder (QVAE), Transformer Layer e Adaptive Noise Reduction and Augmentation (ANRA). Ognuna svolge un ruolo specifico. ADE regola il modo in cui il modello apprende, QVAE aiuta a riconoscere schemi complessi nei dati, la componente Transformer mantiene le relazioni tra le variabili e ANRA pulisce e bilancia i dati per risultati più coerenti.

A differenza dei classici LLM, il modello non analizza il codice in sé, ma studia metriche e dati strutturali, come complessità, dimensione e architettura, per prevedere dove potrebbero nascondersi i bug.

Secondo i risultati pubblicati, le prestazioni sono state notevoli.

“Durante l’addestramento con una percentuale di dati del 90%, ADE-QVAET raggiunge accuratezza, precisione, richiamo e F1-score rispettivamente di 98,08%, 92,45%, 94,67% e 98,12%, rispetto al modello di Machine Learning Differential Evolution (DE)”, scrivono i ricercatori.

In altre parole, il sistema è riuscito a individuare bug reali con un’affidabilità e una precisione estremamente elevate.

L’IA che scrive e gestisce i test software

Nel secondo studio, gli stessi ricercatori si sono concentrati su un’altra sfida dello sviluppo moderno: la creazione e la gestione dei test. Hanno realizzato un sistema che utilizza LLM e agenti autonomi per generare e mantenere in modo automatico piani di test, casi e report di validazione, garantendo la tracciabilità completa tra requisiti, logica di business e risultati.

Gli ingegneri spiegano che gli strumenti di Quality Assurance dedicano in media “dal 30 al 40% del loro tempo alla creazione di artefatti di test, come piani, casi e script di automazione”. L’IA proposta da Apple riduce drasticamente questo carico.

I numeri parlano chiaro:

“Il sistema raggiunge miglioramenti di accuratezza dal 65% al 94,8%, mantenendo una tracciabilità completa dei documenti durante l’intero ciclo di qualità. I test su progetti enterprise e migrazioni SAP mostrano una riduzione dell’85% dei tempi di test, un miglioramento dell’85% nell’efficienza delle suite e un risparmio del 35% sui costi, con un’accelerazione del go-live di due mesi”, scrive il team.

Gli stessi autori riconoscono tuttavia alcune limitazioni, poiché lo studio si è concentrato esclusivamente su ambienti aziendali specifici come Employee Systems, Finance e SAP, riducendo per ora la generalizzabilità dei risultati.

SWE-Gym, l’IA che impara a correggere il codice

Il terzo studio è probabilmente il più ambizioso. Dopo aver esplorato come prevedere i bug e automatizzare i test, i ricercatori hanno creato un ambiente in cui gli agenti di intelligenza artificiale imparano a correggere il codice da soli.

Il progetto si chiama SWE-Gym e utilizza 2.438 task reali in Python provenienti da 11 repository open source, ognuno con un ambiente eseguibile e una suite di test. In questo modo, gli agenti possono esercitarsi a leggere, modificare e validare il codice in condizioni realistiche.

Per velocizzare i tempi di addestramento, Apple ha anche realizzato SWE-Gym Lite, una versione semplificata con 230 compiti più brevi e autonomi, utile per ridurre il costo computazionale mantenendo risultati comparabili.

I test hanno mostrato risultati impressionanti:

“Gli agenti addestrati con SWE-Gym hanno risolto correttamente il 72,5% dei task, superando i benchmark precedenti di oltre 20 punti percentuali”, si legge nello studio.

SWE-Gym Lite ha dimezzato i tempi di addestramento, offrendo prestazioni simili, sebbene su problemi più semplici e meno rappresentativi di scenari complessi.

Le tre ricerche offrono una visione coerente e ambiziosa in cui un’IA è in grado di collaborare attivamente con gli sviluppatori, non solo come assistente testuale, ma anche come sistema intelligente in grado di comprendere il codice, prevedere gli errori, scrivere i test e intervenire per correggere i problemi.