Can AI Agents Generate Microservices? How Far are We?

Lo studio valuta la capacità di agenti AI di generare microservizi funzionali, rivelando che, sebbene producano codice mantenibile con elevate percentuali di successo nei test di integrazione, la generazione completamente autonoma non è ancora realizzabile a causa di incoerenze nella correttezza e della necessità di supervisione umana.

Bassam Adnan, Matteo Esposito, Davide Taibi, Karthik Vaidhyanathan

Pubblicato Wed, 11 Ma
📖 5 min di lettura🧠 Approfondimento

Each language version is independently generated for its own context, not a direct translation.

Immagina di voler costruire una città moderna. Invece di costruire un unico enorme grattacielo (il vecchio modo di fare software), decidi di costruire tanti piccoli edifici indipendenti: un bar, una farmacia, una banca, una biblioteca. Ognuno di questi edifici è un microservizio. Se la farmacia va in tilt, il bar continua a funzionare. È un sistema flessibile, ma molto complesso da coordinare: la farmacia deve sapere esattamente come parlare con la banca, e la biblioteca deve avere le stesse regole di apertura della banca.

Ora, immagina di assumere un architetto robotico (l'AI Agent) per costruire questi edifici per te. La domanda è: questo robot è abbastanza bravo a costruire intere città da solo, o ha bisogno di una guida umana?

Questo studio scientifico ha messo alla prova tre diversi "robot architetti" (Claude Code, Codex e Code Qwen) per vedere se potevano scrivere il codice necessario per creare questi microservizi. Ecco cosa hanno scoperto, spiegato in modo semplice:

1. Due Modi di Costruire: "Ristrutturare" vs. "Costruire da Zero"

Gli scienziati hanno testato i robot in due scenari molto diversi:

  • Scenario A: La Ristrutturazione (Incremental Generation)

    • L'analogia: Immagina di dover aggiungere una nuova stanza a una casa già esistente. Devi rispettare i muri, i tubi e i cavi che sono già lì. Devi "parlare la stessa lingua" degli altri ambienti.
    • Cosa è successo: Qui i robot hanno avuto un po' di confusione. Quando gli si dava un manuale di istruzioni molto dettagliato (con tutti i dettagli della casa esistente), i robot tendevano a farsi prendere dall'ansia e a dimenticare i dettagli importanti.
    • Il trucco: Funzionavano meglio quando gli si diceva solo: "Ehi, costruisci una cucina qui" e lasciavi che il robot esplorasse la casa da solo per capire come collegarsi. Meno istruzioni, più successo (circa il 75% di successo).
  • Scenario B: Il Terreno Libero (Clean State Generation)

    • L'analogia: Immagina di avere un foglio bianco e un progetto su carta. Non c'è nessuna casa esistente. Devi inventare tutto da zero: le fondamenta, i tubi, i cavi.
    • Cosa è successo: Qui i robot sono stati sorprendenti! Hanno costruito quasi tutto perfettamente (circa il 95% di successo). Poiché non c'era una casa esistente con cui "collidere", potevano usare il loro stile. Hanno rispettato le regole del contratto (come la forma delle finestre) anche se l'interno era leggermente diverso da quello che ci si aspettava.

2. La Qualità del Codice: Meno è Meglio?

Un risultato curioso è che il codice scritto dai robot era spesso più semplice e più corto di quello scritto dagli umani.

  • L'analogia: È come se un architetto umano disegnasse un piano con 500 linee di dettagli, mentre il robot ne usasse solo 300 per ottenere lo stesso risultato.
  • Tuttavia, a volte la semplicità era un'arma a doppio taglio: il robot aveva saltato alcuni passaggi di sicurezza (come i controlli degli errori) perché era troppo focalizzato sulla brevità.

3. Velocità e Costi: Chi vince?

Hanno confrontato tre robot diversi:

  • Il Robot Veloce ed Economico (Code Qwen): Costruisce in 7-8 minuti e costa pochissimo (pochi dollari). È come un muratore veloce che usa materiali economici ma ottimi risultati.
  • Il Robot Lento ma Ricco (Codex): Ci mette il doppio del tempo (circa 16 minuti) e a volte si blocca per ore (fino a 100 minuti!). È costoso, ma a volte fa lavori molto dettagliati.
  • Il Robot Costoso ma Preciso (Claude Code): È il più costoso (circa 13 dollari a edificio), ma scrive codice molto conciso e veloce. È come un architetto di lusso che fa tutto in fretta, ma la sua fattura è alta.

La lezione: Non importa quanto è lungo o dettagliato il codice (il numero di "mattoni" usati). Un codice breve può funzionare perfettamente, mentre uno lunghissimo può essere pieno di errori.

4. Il Problema della "Memoria" (Contaminazione dei Dati)

C'è un problema interessante: i robot erano molto bravi a costruire edifici che assomigliavano a quelli che avevano già visto nei loro libri di scuola (i progetti open source famosi su internet).

  • L'analogia: Se chiedi al robot di costruire una casa stile "Villa Medicea", lo fa benissimo perché l'ha già vista mille volte. Ma se gli chiedi di costruire una casa per una famiglia con esigenze molto specifiche e private (progetti privati), si perde un po' di più.
  • Questo significa che i robot potrebbero aver "memorizzato" le risposte invece di imparare a ragionare davvero.

Conclusione: Siamo pronti a lasciare le chiavi ai robot?

La risposta breve è: No, non ancora.

I robot sono diventati ottimi "aiutanti". Possono scrivere il 95% del lavoro quando partono da zero, e circa il 65% quando devono integrarsi in sistemi esistenti. Ma hanno bisogno di un capocantiere umano (un programmatore esperto) che:

  1. Controlli che tutto funzioni insieme.
  2. Corregga gli errori di sicurezza.
  3. Decida quale robot usare per quale compito (a volte serve il veloce ed economico, a volte il preciso).

In sintesi, l'AI è come un apprendista geniale: ha le mani veloci e la memoria fotografica, ma ha ancora bisogno di un maestro che gli tenga la mano per assicurarsi che la casa non crolli quando arriva la prima pioggia.