RPG: A Repository Planning Graph for Unified and Scalable Codebase Generation
Deze paper introduceert RPG, een gestructureerde repository-planningsgrafiek die de ambiguïteit van natuurlijke taal overbrugt, en ZeroRepo, een kader dat hierop voortbouwt om complete, geteste codebases met aanzienlijk hogere kwaliteit en schaalbaarheid te genereren dan bestaande methoden.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://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
Stel je voor dat je een groot, complex gebouw wilt bouwen, zoals een wolkenkrabber of een heel stadje.
Het probleem:
Tot nu toe waren slimme computers (AI) heel goed in het bouwen van één kamer of het maken van één meubelstuk op basis van een beschrijving. Maar als je ze vroeg om een heel stadje te bouwen, raakten ze in de war. Ze begonnen met het bouwen van een huis, maar vergeten dat ze eerst een weg moesten aanleggen, of ze bouwden een brug die nergens naartoe leidde. Ze gebruikten "natuurlijke taal" (gewone zinnen) om te plannen, en dat is vaak vaag. "Bouw een mooie brug" is niet hetzelfde als een technische tekening met exacte afmetingen en verbindingen.
De oplossing: RPG (Het Stedenbouwkundig Plan)
De auteurs van dit paper (van Microsoft en universiteiten) hebben een nieuwe manier bedacht: de Repository Planning Graph (RPG).
In plaats van een lange, vaag geschreven lijst met instructies, maken ze een interactieve, visuele blauwdruk.
- De Analogie: Denk aan een gigantische, digitale LEGO-instructie, maar dan voor software.
- In deze blauwdruk zie je niet alleen wat er gebouwd moet worden (een "module" voor data, een "module" voor berekeningen), maar ook precies hoe de stukjes aan elkaar hangen.
- Het laat zien: "Deze data komt uit deze bak, gaat naar deze machine, en het resultaat gaat naar die andere machine." Het is een strakke, logische kaart die de computer niet kan vergeten.
Hoe werkt het? (Het ZeroRepo-systeem)
Ze hebben een robot genaamd ZeroRepo gebouwd die deze blauwdruk gebruikt. Het proces verloopt in drie stappen, alsof je een stad bouwt:
Het Ontwerp (De Idee-fase):
De robot kijkt naar je vraag ("Maak een programma voor machine learning") en pakt uit een enorme bibliotheek van bestaande ideeën de juiste onderdelen. Hij plakt ze niet zomaar op een vel papier, maar bouwt een structuur van wat er nodig is. Hij denkt: "Oké, we hebben een deel voor het laden van data, een deel voor het rekenen, en een deel voor het tonen van resultaten."De Blauwdruk (De Constructie-fase):
Nu maakt hij de RPG. Hij tekent precies welke bestanden er nodig zijn, welke mappen er zijn, en welke knoppen op welk scherm zitten. Hij zorgt ervoor dat alles logisch is: "De data moet eerst worden schoongemaakt voordat we ermee kunnen rekenen." Dit is het moment waarop de vaagheid verdwijnt en er een strak plan ontstaat.De Bouw (De Code-fase):
De robot begint te bouwen, maar hij volgt strikt de blauwdruk. Hij bouwt eerst de basis, dan de muren, dan het dak.- De Test: Na elke stap doet hij een testje. "Zit de deur wel goed?" Als het niet klopt, repareert hij het direct voordat hij verder gaat. Hij bouwt niet zomaar; hij bouwt met een plan.
Waarom is dit zo cool? (De resultaten)
Ze hebben dit getest op een benchmark genaamd RepoCraft (een soort proefstadje met 6 echte projecten).
- Grootte: De robots die met deze nieuwe blauwdruk werkten, bouwden projecten die 3,9 keer groter waren dan de beste andere AI's. Terwijl andere AI's stopten bij een klein huisje, bouwden ze een heel complex stadje.
- Kwaliteit: Ze bouwden het niet alleen groot, maar ook goed. De code werkte in 81,5% van de gevallen perfect, terwijl de concurrenten vaak vastliepen of onzin code produceerden.
- Schaalbaarheid: Het mooiste is dat het plan niet "vol" raakt. Hoe meer je wilt bouwen, hoe beter het plan werkt. Andere methoden raken in de war na een tijdje, maar deze blauwdruk blijft helder, alsof je een kaart hebt die je kunt uitrollen tot onbeperkt groot.
Kortom:
Vroeger vroeg je een AI: "Bouw een stad." En die AI begon wild te bouwen met losse stenen, wat vaak instortte.
Nu vraag je: "Bouw een stad," en de AI maakt eerst een slimme, visuele blauwdruk (de RPG) die alle verbindingen en regels vastlegt. Daarna bouwt hij de stad steen voor steen, met constant testen. Het resultaat? Een enorme, stabiele en werkende stad die eruitziet als iets dat door mensen is ontworpen, maar dan veel sneller.
Dit is een grote stap richting AI die niet alleen kleine stukjes code schrijft, maar complete, grote softwaresystemen kan creëren.
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.