CodePori: Large-Scale System for Autonomous Software Development Using Multi-Agent Technology
Deze studie introduceert CodePori, een grootschalig multi-agent systeem voor autonome softwareontwikkeling, en evalueert empirisch de praktische toepasbaarheid ervan door middel van feedback van deelnemers om de belangrijkste uitdagingen en kansen buiten de standaard benchmark-metrieken te identificeren.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
Het Grote Idee: Een Digitale Bouwploeg
Stel je voor dat je een enorm, complex huis wilt bouwen (een grootschalig softwaresysteem). In het verleden moest je een enkele meesterarchitect inhuren die ook alleen alle blauwdrukken moest tekenen, elke baksteen moest leggen en elke leiding moest installeren. Dit was traag en uitputtend.
Dit paper introduceert CodePori, een nieuw systeem dat fungeert als een digitale bouwploeg die volledig bestaat uit AI-robots. In plaats van één robot die alles probeert te doen, gebruikt CodePori een team van zes gespecialiseerde AI-agenten (robots) die samenwerken om de software vanaf nul op te bouwen op basis van een eenvoudige beschrijving die jij hen geeft.
Hoe het Team Werkt (De Zes Agenten)
De onderzoekers hebben een specifieke workflow ontworpen waarbij elke robot een unieke taak heeft, net als op een echte bouwplaats:
- De Manager: Jij vertelt deze robot: "Ik wil een huis met een keuken en twee slaapkamers." De Manager breekt dit grote idee af in een gedetailleerde checklist van specifieke taken.
- De Architect: Deze robot neemt de checklist en tekent de blauwdrukken, waarbij bepaald wordt hoe de kamers met elkaar verbonden zijn en waar de leidingen lopen.
- De Organisator: Deze robot richt de eigenlijke bouwplaats in. Het maakt de mappen en bestanden aan (de "kamers" en "muren") waar de code zal wonen, en zorgt ervoor dat alles netjes blijft.
- De Bouwer: Dit is de harde werker. Het schrijft de eigenlijke code voor elk deel van het systeem, zoals het leggen van de stenen en het aansluiten van de elektriciteit.
- De Inspecteur: Zodra de Bouwer een sectie heeft voltooid, controleert de Inspecteur deze. Als hij een losse steen of een draad op de verkeerde plek vindt, repareert hij dit niet zelf; hij stuurt het terug naar de Bouwer met een notitie: "Los dit op."
- De Voorman: Deze robot doet de laatste ronde. Hij controleert of het hele huis klaar is voor bewoning en zorgt ervoor dat er geen losse eindjes blijven liggen.
Het Experiment: De Crew op de Proef Stellen
De onderzoekers hebben dit team niet alleen gebouwd; ze hebben het ook aan het werk gezet. Ze nodigden 118 studenten uit (die leerden over AI) om op te treden als de "klanten".
- De Taak: Elke student gaf het systeem vijf verschillende projectideeën (variërend van eenvoudige spellen tot complexe AI-tools). In totaal probeerde het systeem 590 verschillende softwareprojecten te bouwen.
- Het Doel: Om te zien of deze AI-crew daadwerkelijk een heel, werkend softwaresysteem kon bouwen zonder dat een mens hen bij elke stap de hand moest houden.
Wat Ze Vonden (De Resultaten)
Het Goede Nieuws (Sterktes)
De AI-crew was verrassend snel en georganiseerd.
- Snelheid: Gemiddeld kon het team een heel project genereren in ongeveer 9 minuten. Dat is alsof je een pizza bestelt en deze al geleverd krijgt voordat je je voorgerecht hebt opgegeten.
- Structuur: De "Organisator"-agent was erg goed in het netjes houden van zaken. De code kwam met duidelijke mappen en bestanden, waardoor het makkelijk te doorzoeken was.
- Begrip: Het systeem begreep meestal goed wat de gebruiker wilde en vertaalde dit naar een plan.
- Documentatie: Het schreef zelfs "gebruikershandleidingen" (comments in de code) die uitlegden wat de verschillende onderdelen deden.
Het Slechte Nieuws (Uitdagingen)
Ondanks de snelheid was de crew niet perfect. De studenten vonden verschillende "bugs" in het bouwproces:
- Hallucinaties (De "Imaginaire" Kamer): Soms verzon de AI dingen die niet gevraagd waren. Bijvoorbeeld, als je om een simpele rekenmachine vroeg, besloot de AI dat je ook een database nodig had om gegevens op te slaan, ook al had je die niet nodig. Het was alsof de bouwer een zwembad toevoegde aan een huis dat alleen een garage nodig had.
- Kortetermijngeheugenverlies: Naarmate het huis groter werd, vergat de AI soms wat hij in de eerste kamer had gebouwd terwijl hij aan de laatste kamer werkte. Hij probeerde bijvoorbeeld een deur te verbinden met een muur die niet meer bestond.
- Rommelige Code (Code Smell): Soms werkte de code wel, maar was het rommelig. Het bevatte dubbele instructies of "dead code" (onderdelen die niets deden), wat het later moeilijk maakte om op te schonen.
- Coördinatieproblemen: De verschillende robots communiceerden niet altijd perfect met elkaar. Soms gebruikte een robot een hulpmiddel dat de andere robot niet had, waardoor het hele project crashte.
- Complexiteitslimieten: Het systeem was goed in het bouwen van kleine "boomhutten" (eenvoudige prototypes), maar had moeite wanneer er een "wolkenkrabber" (zeer complexe systemen) werd gevraagd.
De Conclusie: Een Veelbelovende Leerling, Nog Geen Meester
Het paper concludeert dat CodePori een krachtig hulpmiddel is dat een groot potentieel laat zien. Het kan veel van het saaie, repetitieve werk van softwareontwikkeling automatiseren.
Het is echter niet klaar om menselijke engineers volledig te vervangen. Het maakt nog steeds fouten, vergeet details en bouwt soms dingen die je niet gevraagd hebt. De onderzoekers zeggen dat om deze technologie echt bruikbaar te maken in de echte wereld, we het volgende nodig hebben:
- De AI een beter geheugen geven zodat hij zijn eigen werk niet vergeet.
- Een "voortgangsbalk" toevoegen zodat mensen in realtime kunnen zien wat de AI aan het doen is.
- Mensen de mogelijkheid geven om in te grijpen en dingen te repareren als de AI vastloopt.
Kortom: CodePori is als een zeer snelle, zeer georganiseerde, maar af en toe vergeetachtige en overijverige stagiair. Het kan veel van het zware werk doen, maar het heeft nog steeds een menselijke supervisor nodig om het werk te controleren en te zorgen dat het eindproduct ook echt is wat je wilde.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.