← Nieuwste papers
💻 informatica

Auditable Acceptance of LLM-Generated Code:An Evidence-Based Testing Architecture and Multi-Source Evaluation

Dit artikel introduceert de Intelligent Testing Infrastructure (ITI), een op bewijsvoering gebaseerde architectuur die verificatieresultaten koppelt aan codekandidaten om controleerbare acceptatiebeslissingen mogelijk te maken, waarbij het vermogen wordt aangetoond om verificatieoverhead en valse acceptaties te verminderen, terwijl de noodzaak voor onafhankelijke beoordeling wordt benadrukt om verbeteringen in correctheidsdiscriminatie te bevestigen.

Oorspronkelijke auteurs: Zhiyuan Li, Li Feng, Yurui Feng, Chaofan Ji, Jian Xu, Chen Chen

Gepubliceerd 2026-10-21
📖 6 min leestijd🧠 Diepgaand

Oorspronkelijke auteurs: Zhiyuan Li, Li Feng, Yurui Feng, Chaofan Ji, Jian Xu, Chen Chen

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

In de moderne softwarewereld schrijven computers steeds vaker hun eigen code. Large language models, hetzelfde type kunstmatige intelligentie dat e-mails kan opstellen of nieuws kan samenvatten, worden nu gevraagd om de complexe instructies te schrijven die onze applicaties aansturen. Deze verschuiving biedt ongelooflijke snelheid, maar introduceert een fundamenteel probleem: hoe weten we of de code daadwerkelijk correct is? Een computerprogramma kan een specifieke reeks tests doorstaan en toch falen op manieren die die tests nooit hadden voorzien. Net zoals een brug stand kan houden onder een lichte belasting maar kan instorten onder een zware vrachtwagen, kan code die een basiscontrole doorstaat nog steeds verborgen fouten bevatten. De uitdaging voor ingenieurs is niet alleen om tests uit te voeren, maar om te begrijpen wat die tests daadwerkelijk bewijzen, om het onderscheid te maken tussen een stuk code dat echt veilig is en een stuk dat simpelweg nog niet is betrapt.

Deze vraag ligt in het hart van een nieuwe studie van onderzoekers van Southwest Jiaotong University, de University of Bristol en Sichuan Agricultural University. Zij zetten zich in om een systeem te bouossen dat niet alleen "slagen" of "falen" zegt, maar in plaats daarvan een gedetailleerd, controleerbaar verslag creëert van waarom een stuk code werd geaccepteerd, afgewezen of werd doorverwezen voor verdere beoordeling. Ze noemen dit systeem de Intelligent Testing Infrastructure, oftewel ITI. In plaats van codegeneratie te behandelen als een magische black box, richtten de onderzoekers zich op de rommelige realiteit van verificatie: het registreren van precies welke tests zijn uitgevoerd, wat ze dekten en hoeveel vertrouwen die tests werkelijk moeten inboezemen. Hun werk laat zien dat hoewel we testen strenger kunnen maken, het simpelweg toevoegen van meer tests niet automatisch onze uiteindelijke selectie van code veiliger maakt. Sterker nog, hun experimenten suggereren dat striktere regels even vaak goede code afwijzen als dat ze slechte code betrappen, waardoor het algemene risico op het accepteren van een gebrekkig programma ongewijzigd blijft.

De onderzoekers benaderden dit probleem door een workflow te ontwerpen die fungeert als een zorgvuldige poortwachter. Wanneer een stuk code arriveert, krijgt het niet slechts een snelle controle; het wordt onderworpen aan een reeks verificaties onder gecontroleerde omstandigheden. Het systeem legt elk detail vast: de specifieke versie van de code, de gebruikte tools om het te testen en de exacte omgeving waarin het draaide. Cruciaal is dat het systeem onderscheid maakt tussen drie uitkomsten. Als een test een duidelijke fout vindt, wordt de code afgewezen. Als de tests niets fouts vinden, maar het bewijs onvolledig voelt of de tests niet sterk genoeg waren, wordt de code geëscaleerd voor meer inspectie. Alleen als het bewijs zowel compleet als positief is, wordt de code geaccepteerd. Dit proces creëert een "beslissingsbevriezing" (decision freeze), een moment waarop het bewijs wordt vastgelegd voordat enige externe kennis over de vraag of de code werkelijk correct is, wordt onthuld. Dit zorgt ervoor dat de beslissing uitsluitend gebaseerd is op wat er op dat moment bekend was, wat het hele proces transparant en later controleerbaar maakt.

Om te zien of deze aanpak werkte, voerde het team twee verschillende soorten experimenten uit. De eerste was een strikt gecontroleerde studie met 80 stukken code die de onderzoekers zelf hadden geconstrueerd om specifieke, bekende fouten te bevatten. Ze testten deze tegen een basisset controles en vervolgens tegen een tweede, grondiger set. De resultaten waren onthullend. De tweede set tests betrapte 16 stukken slechte code die de eerste set had gemist, wat bewees dat sterkere tests inderdaad meer fouten kunnen vinden. Echter, toen de onderzoekers hun strikte "accepteer-escaleer-afwijzen"-regels toepasten, was de uitkomst minder optimistisch. De striktere regels slaagden erin het aantal slechte stukken code dat werd geaccepteerd te verminderen, maar ze wezen ook een evenredig aantal goede stukken code af. Het resultaat was dat de uiteindelijke groep geaccepteerde code nog steeds fouten bevatte met exact dezelfde frequentie als voorheen: 5 of 50 procent. Met andere woorden, door voorzichtiger te zijn, maakten ze de uiteindelijke batch code niet veiliger; ze maakten de batch simpelweg kleiner.

De onderzoekers testten dit systeem vervolgens op een grotere, meer realistische schaal met behulp van 200 stukken code gegenereerd door twee verschillende kunstmatige intelligentiemodellen, Qwen en DeepSeek, verspreid over 50 verschillende programmeertaken. Hier toonde het systeem een ander soort waarde. Door een slimme escalatiestrategie te gebruiken, was het systeem in staat om dezelfde uiteindelijke beslissingen te bereiken als wanneer het zijn duurste, krachtigste tests op elk stuk code had uitgevoerd, maar deed het dit door die zware tests alleen uit te voeren op 132 van de 200 kandidaten. Dit bespaarde aanzienlijke computertijd en middelen. Echter, toen ze naar de kwaliteit van de geaccepteerde code keken, presteerde het systeem niet beter dan een willekeurige selectie van dezelfde omvang. Het "slimme" systeem had niet in staat gestemd om betere code te selecteren dan bij toeval zou gebeuren; het bespaarde simpelweg geld door onnodige controles over te slaan op code die duidelijk slecht of duidelijk goed was.

De studie onderzocht ook de structuur van de tests zelf, waarbij werd gekeken of verschillende tests daadwerkelijk verschillende soorten fouten vonden of slechts dezelfde controles herhaalden. Ze ontdekten dat in veel grote collecties tests een aanzienlijk deel redundant was, wat betekent dat ze naar exact dezelfde fouten zochten. Anderen waren "zero-detection" tests, die geen enkele fout vonden in de bekende slechte code die ze zouden moeten vangen. Bovendien ontdekten ze dat veel fouten slechts door één enkele test werden betrapt. Als die ene test zou falen of verwijderd zou worden, zou de fout onopgemerkt blijven. Deze kwetsbaarheid suggereert dat het hebben van een groot aantal tests geen veiligheid garandeert als de tests niet divers en robuust zijn.

Uiteindelijk concludeert het artikel dat hoewel de Intelligent Testing Infrastructure succesvol een duidelijk, controleerbaar verslag creëert van hoe beslissingen worden genomen, het het probleem van het kiezen van de beste code nog niet heeft opgelost. Het systeem werkt goed bij het documenteren van het proces en het besparen van middelen door onnodige controles over te slaan, maar het heeft nog niet bewezen dat het betrouwbaarder tussen goede en slechte code kan onderscheiden dan bij toeval. De onderzoekers benadrukken dat hun bevindingen gebaseerd zijn op specifieke, gecontroleerde experimenten en dat de "correctheid" van de code vaak werd beoordeeld door andere kunstmatige intelligentiemodellen in plaats van door onafhankelijke menselijke experts. Zij stellen dat de volgende stap is om dit systeem te testen met werkelijk onafhankelijke verificaties en taken die het systeem nog nooit eerder heeft gezien. Tot die tijd is het meest waardevolle wat het systeem biedt niet een garantie op veiligheid, maar een helder, eerlijk verslag van wat er bekend was en wat er op elke stap van de reis werd beslist.

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 →