Origine e paper
MetaGPT viene pubblicato nell’agosto 2023 da DeepWisdom, con Chenglin Wu come primo autore insieme a un gruppo di collaboratori. Il progetto è accompagnato dal paper “MetaGPT: Meta Programming for Multi-Agent Collaborative Framework”, che descrive un framework multi-agent orientato alla produzione di software. La licenza è MIT.
L’idea centrale è codificare nelle interazioni fra agent le Standard Operating Procedure (SOP) tipiche di un’azienda software, trasferendo in un sistema LLM i ruoli e i passaggi documentali di un processo di sviluppo reale.
Ruoli e simulazione di una software company
MetaGPT definisce un insieme di agent con ruoli ispirati all’organizzazione di un team di sviluppo. Il ProductManager raccoglie i requisiti dall’utente e produce un Product Requirements Document. L’Architect elabora il documento di architettura tecnica. Il ProjectManager suddivide il lavoro in task e definisce il piano. L’Engineer implementa i moduli software secondo le specifiche. Il QA esegue i test e riporta i problemi.
Ogni ruolo è associato a prompt strutturati, a formati di output specifici e a un insieme di azioni che l’agent può eseguire. Il passaggio di informazioni fra ruoli non avviene come libera conversazione, ma attraverso documenti intermedi — requisiti, diagrammi, specifiche, codice, report di test — che replicano i deliverable di una pipeline di sviluppo tradizionale.
SOP come prompt engineering strutturato
L’aspetto metodologicamente rilevante è l’uso della SOP come strumento per stabilizzare l’output di sistemi LLM multi-agent. Gli errori tipici delle conversazioni libere — deriva tematica, duplicazione di lavoro, incoerenze — vengono mitigati imponendo un protocollo prescrittivo: ciascun agent sa quali input attendersi, quali output produrre e a chi passarli.
Valutazione e benchmark
Il framework è stato valutato con i benchmark HumanEval e MBPP, utilizzati come riferimento per la capacità di generazione di codice, e con esperimenti sulla produzione end-to-end di piccole applicazioni a partire da requisiti in linguaggio naturale. Il progetto è evoluto aggiungendo funzionalità come la memoria persistente fra ruoli, l’integrazione di tool esterni e l’estensione a processi di data analysis oltre allo sviluppo software.
