Sentry introduce Autofix AI: la rivoluzione nel debug del codice
25/03/2024
Sentry è da tempo un alleato prezioso per gli sviluppatori, fornendo strumenti per il monitoraggio e il debug del codice di produzione. Tuttavia, l’azienda ha deciso di portare questa esperienza a un livello superiore aggiungendo l’intelligenza artificiale al processo. Con il lancio di AI Autofix, Sentry offre ora una nuova funzionalità che sfrutta tutti i dati contestuali disponibili sull’ambiente di produzione di un’azienda per suggerire soluzioni ogni volta che si verifica un errore.
Come funziona AI Autofix di Sentry
AI Autofix di Sentry è uno strumento che, come suggerisce il nome, offre la possibilità di risolvere automaticamente gli errori del codice. Tuttavia, a differenza di altri sistemi completamente automatizzati, Autofix è un sistema che coinvolge anche gli sviluppatori. Sentry lo ha progettato come uno strumento “come avere un giovane sviluppatore pronto ad aiutare su richiesta“. Invece di limitarsi a pensare alla prestazione dell’applicazione o agli errori dal punto di vista dell’infrastruttura del sistema, Autofix si concentra sull’analisi e sulla risoluzione dei problemi dal punto di vista del codice.
Tillman Elser, responsabile dell’ingegneria di Sentry, ha spiegato che molti strumenti di codifica basati sull’IA sono ottimi per completare automaticamente il codice nell’IDE, ma non essendo a conoscenza dell’ambiente di produzione di un’azienda, non possono cercare attivamente problemi. La proposta di valore principale di Autofix, ha spiegato Elser, è quella di aiutare gli sviluppatori a velocizzare il processo di individuazione e risoluzione degli errori di produzione, grazie alla conoscenza del contesto in cui viene eseguito il codice. “Cerchiamo di risolvere i problemi di produzione nel modo più rapido possibile. Non cerchiamo di renderti uno sviluppatore più veloce durante la creazione dell’applicazione“, ha affermato Elser.
Architettura basata su agenti
Autofix utilizza un’architettura basata su agenti per monitorare gli errori e utilizza l’agente di discovery per verificare se un cambiamento di codice può risolvere quell’errore. È importante notare che gli sviluppatori rimangono sempre coinvolti nel processo. Ad esempio, possono aggiungere ulteriori contesti agli agenti di intelligenza artificiale se hanno già un’idea del problema. Oppure possono optare per il pulsante “gimme fix” per vedere cosa suggerisce l’intelligenza artificiale.
Una volta che l’intelligenza artificiale ha valutato l’errore e creato un piano d’azione per risolverlo, Autofix fornisce agli sviluppatori una differenza che spiega le modifiche apportate al codice. Se tutto sembra corretto, Autofix crea una richiesta di pull per unire le modifiche.
Supporto per tutti i principali linguaggi di programmazione
Autofix supporta tutti i principali linguaggi di programmazione, anche se il team di sviluppo ha testato principalmente il codice JavaScript e Python. È importante sottolineare che Autofix non è infallibile. Ci possono essere casi in cui l’IA non ha abbastanza contesto o non sono state impostate strumentazioni sufficienti per raccogliere i dati necessari per il funzionamento di Autofix.
Sentry sta lavorando sia sulla costruzione dei propri modelli che sull’utilizzo di modelli di terze parti come OpenAI ed Anthropic. Tuttavia, gli utenti devono scegliere di inviare i loro dati a questi servizi di terze parti per utilizzare Autofix. Sentry ha annunciato che in futuro potrebbe offrire un modello interno LLM calibrato sui propri dati.