Vai al contenuto
AI.info

The Pulse

Amazon afferma che agenti di IA autonomi hanno scritto il suo AWS Emulator

AWS Emulator consente agli sviluppatori di testare applicazioni cloud sui propri computer, senza costi aggiuntivi per il servizio. Amazon afferma che agenti autonomi ne hanno scritto tutto il codice senza revisione umana, usando test verifi

Amazon afferma che agenti di IA autonomi hanno scritto il suo AWS Emulator

AI.info Team · Scritto con l’IA · verificato ·

Un nuovo strumento per testare localmente le applicazioni di Amazon Web Services è stato scritto interamente da agenti di IA autonomi, secondo un post di Amazon firmato dal senior principal engineer Matthew Goldberg. AWS ha rilasciato l’emulatore l’11 novembre, rendendolo disponibile per il download.

Goldberg ha dichiarato che il suo team non ha né scritto né revisionato alcuna parte del codice. L’emulatore non comporta costi aggiuntivi per il servizio, anche se i clienti pagano per le risorse AWS che distribuiscono nel cloud.

Il codice sorgente e i test di fedeltà sono disponibili su GitHub. Il codice è pubblicato come dedica al pubblico dominio sotto la licenza Creative Commons CC0.

Test locali e limiti

Gli sviluppatori possono installare l’emulatore da pacchetti RPM o Debian su Linux, oppure eseguirlo in Docker su macOS e Windows. L’interfaccia a riga di comando di AWS, i kit di sviluppo software e gli agenti di coding comunicano con l’emulatore attraverso un endpoint HTTPS locale.

All’avvio, l’emulatore genera credenziali, un file di configurazione e un certificato. Il prodotto dispone anche di una modalità integrata per AWS SDK for Rust, che consente di eseguire un’istanza all’interno di un processo di test anziché come server di rete separato.

AWS avverte che l’emulatore non valuta le policy di gestione delle identità e degli accessi e quelle basate sulle risorse nello stesso modo del suo cloud, perciò una richiesta rifiutata da AWS potrebbe andare a buon fine localmente. L’azienda sconsiglia di usarlo per verificare se un’applicazione è sicura e raccomanda di testare le impostazioni di sicurezza e l’intera applicazione su AWS prima della messa in produzione.

Ogni emulatore opera come un singolo account, senza funzionalità tra account o tra regioni. Un’operazione non ancora implementata restituisce un errore HTTP 501.

Da esperimento a prodotto

Goldberg ha ricondotto l’origine del progetto a un esperimento condotto in precedenza quest’anno con Kiro, un agente di coding. Il prompt chiedeva a Kiro di scrivere test basati sull’interfaccia a riga di comando di AWS, ripeterli e perfezionarli fino al loro superamento sul cloud reale, quindi costruire un’implementazione in memoria che superasse gli stessi test.

Goldberg ha dichiarato che Kiro ha prodotto una prima versione accettabile di Amazon Simple Queue Service, o SQS, dopo 15 minuti. Dopo che Goldberg ha perfezionato il prompt, l’agente ha costruito un’implementazione più ampia nel corso di un fine settimana; presentava delle lacune, ma il suo team ha iniziato a usarla per testare il proprio software il lunedì successivo.

Trasformare l’esperimento in un prodotto ha richiesto più tempo e un lavoro di ingegneria sui meccanismi di controllo, ha scritto Goldberg. Il processo attuale divide il lavoro tra tre gruppi di agenti: quelli che scrivono i test, quelli che individuano i problemi e quelli che li correggono.

Test, correzioni e controlli per il rilascio

Il primo gruppo crea scenari a partire dagli AWS API Models pubblici e li verifica sul cloud reale. Un test SQS, per esempio, può creare una coda, inviare e ricevere un messaggio, confermarne la ricezione e cancellare la coda. Amazon afferma che la suite contiene decine di migliaia di test di fedeltà per AWS e continua a crescere.

Un secondo gruppo ripete i test sull’emulatore e segnala i problemi quando i test non vengono superati. Ogni segnalazione passa poi a un agente del terzo gruppo, che indaga e modifica il codice. Le modifiche devono superare un controllo che verifica la compilazione e comprende revisioni da parte degli agenti sugli standard di programmazione, sulla sicurezza e sull’eventuale riduzione della fedeltà causata dalla modifica.

Le modifiche che non superano il controllo vengono rimandate indietro per essere rielaborate; quelle che lo superano vengono integrate nel codice principale. Goldberg ha dichiarato che il sistema ha corretto migliaia di problemi al giorno mentre centinaia di agenti lavoravano contemporaneamente.

Le modifiche integrate passano attraverso una pipeline di rilascio che usa gli strumenti per sviluppatori di AWS, con CodeCommit come repository principale degli agenti. Le build vengono testate nuovamente prima di essere integrate in un ramo di rilascio, confezionate come file binari scaricabili e pubblicate su GitHub. Il repository pubblico contiene le segnalazioni dei problemi, comprese quelle relative a problemi risolti e a quelli ancora in attesa di essere affrontati.

AWS afferma che per ogni rilascio viene pubblicato il numero di test di fedeltà superati per ciascun servizio, insieme al numero totale di test eseguiti. L’azienda osserva che il punteggio può scendere quando vengono aggiunti test, anche se l’emulatore migliora.

Fonti

Notizie correlate

Esplora

Altri articoli