← Nieuwste papers
💬 NLP

CodeEvo: Interaction-Driven Synthesis of Code-centric Data through Hybrid and Iterative Feedback

Dit artikel introduceert CodeEvo, een dual-agent framework dat door middel van iteratieve hybride feedback hoogwaardige, logisch complexe instructie-code paren synthetiseert, wat resulteert in de CodeEvo-100K dataset die de prestaties van codegeneratiemodellen aanzienlijk verbetert.

Oorspronkelijke auteurs: Qiushi Sun, Jinyang Gong, Lei Li, Qipeng Guo, Fei Yuan

Gepubliceerd 2026-07-28
📖 6 min leestijd🧠 Diepgaand

Oorspronkelijke auteurs: Qiushi Sun, Jinyang Gong, Lei Li, Qipeng Guo, Fei Yuan

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 robot probeert te leren hoe hij een briljante programmeur kan zijn. Je kunt niet zomaar gaan zitten om een miljoen programmeerproblemen met de hand te schrijven; dat zou eeuwen duren en je zou zonder ideeën raken. Daarom zijn wetenschappers begonnen met het gebruiken van andere, intelligentere robots (Large Language Models genoemd) om de oefenopdrachten voor de student-robot te schrijven. Maar hier zit de crux: wanneer deze AI-leraren proberen nieuwe problemen te bedenken, gaat het vaak mis. Ze maken misschien een wiskundige vraag die geen antwoord heeft, of een programmeertaak die de computer doet crashen op het moment dat je het probeert uit te voeren. Het is alsof een leraar een toets uitdeelt waarbij de helft van de vragen onzin is. Dit artikel, getiteld CodeEvo, pakt dit rommelige probleem aan door een nieuwe manier uit te vinden voor AI om zichzelf te leren hoe het perfecte, oplosbare programmeeruitdagingen kan maken zonder dat er een mens aan elke enkele opdracht hoeft te controleren.

De kern van het idee rust op twee belangrijke concepten. Ten eerste is er de instructie, wat de probleemstelling is (zoals "Schrijf een functie die een lijst sorteert"). Ten tweede is er de code, wat de oplossing is. Het doel is om paren van deze twee te genereren die niet alleen correct zijn, maar ook progressief moeilijker en interessanter worden. De auteurs suggereren dat de oude manier van doen — simpelweg een AI vragen om het "moeilijker te maken" — te vaag is en leidt tot kapotte resultaten. In plaats daarvan stellen ze een systeem voor waarbij de AI werkt als een team van twee: een Coder die probeert het probleem op te lossen, en een Reviewer die het werk beoordeelt en de volgende uitdaging ontwerpt.

De Dans van de Twee Agenten: Coder en Reviewer

De auteurs bouwden een framework genaamd CodeEvo, wat in essentie een hoogtechnologische, geautomatiseerde werkplaats is waar twee AI-agenten in een lus samenwerken. Denk aan een videogame waarbij één speler (de Coder) probeert een level te verslaan, en een tweede speler (de Reviewer) zowel de leveldesigner als de scheidsrechter is.

In de oude methoden riep de "leveldesigner" gewoon: "Maak dit level moeilijker!" en hoopte dan op het beste. Vaak was het resultaat een level dat onmogelijk te verslaan was of geen zin maakte. CodeEvo verandert het spel. Voordat de Reviewer een nieuw probleem schrijft, maakt het eerst een Schema. Stel je dit voor als een blauwdruk of een receptenkaart. De Reviewer kijkt naar het huidige probleem en kiest specifieke "ingrediënten" (zoals trefwoorden: Matrix, Recursie, Big Integer) om te mengen. Het Schema is een plan dat zegt: "Oké, we gaan de huidige logica nemen en een stap van matrixvermenigvuldiging toevoegen om het lastig te maken, maar we moeten het wel oplosbaar houden." Dit zorgt ervoor dat het nieuwe probleem geworteld is in echte logica, en niet slechts een willekeurige verzameling woorden is.

Zodra de Reviewer de blauwdruk heeft ontworpen, probeert de Coder de code te schrijven om het probleem op te lossen. Maar hier gebeurt de magie: het systeem accepteert de code niet zomaar. Het onderwerpt de code aan een Hybrid Feedback-lus.

Het Dubbelcheck-systeem

Normaal gesproken, wanneer een AI code schrijft, kan het er correct uitzien, maar faalt het wanneer je het daadwerkelijk uitvoert. Om dit op te lossen, gebruikt CodeEvo een verificatieproces in twee stappen. Eerst loopt het de code door een compiler (een hulpmiddel dat controleert of de code de strikte regels van de programmeertaal volgt). Als de code crasht of een syntactische fout bevat, zegt de compiler "Nee". Maar soms draait de code zonder te crashen, terwijl het toch het verkeerde antwoord geeft.

Daarom stapt de Reviewer opnieuw in. Deze keer treedt het op als een menselijke rechter, die de code en de probleemomschrijving leest om te zien of de logica daadwerkelijk overeenkomt. Het vraagt zich af: "Heb je het probleem echt opgelost, of heb je gewoon geluk gehad?" Door de strikte, gevoelloze controle van de compiler te combineren met de slimme, contextuele controle van de AI Reviewer, filtert het systeem slechte data eruit. Als de code faalt, krijgt de Coder een gedetailleerd rapport over wat er misging en probeert het opnieuw. Dit gebeurt herhaaldelijk totdat de code perfect is.

Een Berg Data Bouwen

Met deze methode hebben de auteurs een enorme dataset gecreëerd genaamd CodeEvo-100K. Dit is niet zomaar een willekeurige stapel van 100.000 problemen; het is een zorgvuldig samengestelde collectie met "gestapelde moeilijkheidsgraad". Ze begonnen met eenvoudige basisproblemen en lieten de agenten deze evolueren. Sommige problemen bleven makkelijk, sommige werden gemiddeld, en een speciale "Hard"-set werd gecreëerd door de agenten door drie of meer rondes van verfijning te duwen.

De resultaten zijn indrukwekkend. Wanneer ze andere AI-modellen namen en deze trainden op deze nieuwe dataset, werden die modellen aanzienlijk beter in het oplossen van programmeerproblemen dan modellen die getraind waren op andere synthetische data. Sterker nog, een kleinere hoeveelheid hoogwaardige CodeEvo-data (ongeveer 17.000 moeilijke problemen) werkte zelfs beter dan een veel grotere dataset (75.000 problemen) die door oudere methoden was gemaakt. Dit suggereert dat de kwaliteit van de trainingsdata belangrijker is dan simpelweg het hebben van een enorme hoeveelheid volume.

Waarom dit ertoe doet

Het artikel argumenteert expliciet tegen het idee dat je simpelweg eenvoudige, rigide regels (heuristieken) kunt gebruiken om goede programmeerdata te genereren. Ze laten zien dat zonder een gestructureerd plan (het Schema) en een rigoureus controlesysteem (de Hybrid Feedback), de gegenereerde data vaak vol fouten of onmogelijke taken zit. Ze ontdekten ook dat hoewel het proces langzamer is dan simpelweg een AI vragen om code uit te spugen, de resulterende data ver boven de rest uitsteekt.

Kortom, CodeEvo suggereert dat als je een slimme programmeer-AI wilt bouren, je hem niet alleen een miljoen willekeurige problemen moet voeren. In plaats daarvan moet je een systeem bouwen waarbij AI-agenten elkaar onderwijzen, hun lessen zorgvuldig plannen en elkaars huiswerk controleren met een vergrootglas. Het resultaat is een dataset die niet alleen enorm groot is, maar ook logisch sluitend, uitvoerbaar en klaar om de volgende generatie code-genererende robots te trainen.

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.

Probeer Digest →