← Nieuwste papers
💬 NLP

Measuring What a Specification Determines: A Formal Semantic-Block Model and an Execution-Judged Benchmark

Dit artikel introduceert een formeel semantisch blokmodel en een door uitvoering beoordeelde benchmark om de kwaliteit van specificaties onafhankelijk van de modelcapaciteit te evalueren, waarbij via een Oracle-naar-PostgreSQL migratiecasestudy wordt aangetoond dat hoewel determinisme een valide formeel concept is, het nog geen zelfstandige empirische kwaliteitsmetriek vormt voor hedendaagse LLM's vanwege aanzienlijke implementatievariabiliteit.

Oorspronkelijke auteurs: Oleg Grynets, Dmytro Kostetskyi, Vasyl Lyashkevych

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

Oorspronkelijke auteurs: Oleg Grynets, Dmytro Kostetskyi, Vasyl Lyashkevych

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

In de moderne softwarewereld probeert een groeiend aantal bedrijven de creatie van computerprogramma's te automatiseren met behulp van kunstmatige intelligentie. In plaats van een team van ingenieurs in te huren om elke regel code vanaf nul te schrijven, leveren ze een gedetailleerde schriftelijke beschrijving van wat de software moet doen, een zogenaamde specificatie, en vragen ze een AI om dit te bouwen. Deze aanpak, genaamd specificatiegestuurde ontwikkeling, behandelt het geschreven plan als de primaire instructiehandleiding voor de machine. De hoop is dat als het plan duidelijk genoeg is, de AI elke keer perfecte software zal produceren. Echter, een kritische vraag blijft: maakt een beter plan de AI daadwerkelijk slimmer, of kennen de AI-systemen de antwoorden al op basis van hun training? Als de AI instemt met het plan simpelweg omdat het soortgelijke plannen eerder heeft gezien, dan doet het plan zelf geen echt werk. Deze onzekerheid maakt het moeilijk om te weten of een specificatie werkelijk van hoge kwaliteit is of slechts een document dat toevallig overeenkomt met wat de machine toch al zou gaan doen.

Een team van onderzoekers zette zich in om dit meetprobleem op te lossen door een specifieke, complexe taak te testen: het verplaatsen van een enorme database van het ene type systeem naar het andere. Ze creëerden een formele, gestructureerde specificatie voor het migreren van gegevens van een Oracle-database naar een PostgreSQL-database, een proces dat het vertalen van duizenden regels over hoe gegevens worden opgeslagen en verwerkt omvat. Om te testen of deze specificatie daadwerkelijk hielp, vroegen ze de AI niet alleen om code te schrijven en te controleren of deze er goed uitzag. In plaats daarvan bouwden ze een rigoureus experiment waarbij dezelfde groep AI-systemen de migratie twee keer moest uitvoeren: één keer met de gedetailleerde specificatie en één keer zonder. De onderzoekers gebruikten een live Oracle-database en een vers PostgreSQL-systeem als een strikte rechter. Ze draaiden de door de AI gegenereerde code tegen de originele gegevens om te zien of de resultaten identiek waren, waarbij het werkelijke gedrag van de software de enige ware maatstaf voor succes was.

De studie omvatte drie verschillende AI-systemen die optraden als onafhankelijke implementeerders, die allemaal werkten aan dezelfde 75 specifieke migratietaken. Wanneer de onderzoekers de resultaten vergeleken, vonden ze een duidelijke splitsing tussen wat de software kon doen en hoe goed de AI-systemen met elkaar overeenstemden. De specificatie verbeterde de bekwaamheid van de software om zonder te crashen te draaien aanzienlijk. Zonder de specificatie kon slechts 72 procent van de gegenereerde code succesvol in de nieuwe database worden geladen. Met de volledige specificatie steeg dat aantal naar 97,3 procent. Het plan fungeerde als een gids die de AI hielp fatale fouten te vermijden en code te produceren die daadwerkelijk werkte.

Echter, het verhaal nam een andere wending toen de onderzoekers keken naar de vraag of de specificatie de AI-systemen ertoe bracht meer met elkaar overeen te stemmen. Vooraf aan de studie bestond de hoop dat een perfect plan alle AI-systemen zou dwingen om exact dezelfde beslissingen te nemen, wat zou leiden tot een verenigde oplossing. De gegevens toonden aan dat dit niet het geval was. Zelfs zonder de specificatie stemden de AI-systemen al in 83 procent van de gevallen met elkaar overeen, waarschijnlijk omdat ze tijdens hun training dezelfde standaard industriële praktijken hadden geleerd. Toen de specificatie werd toegevoegd, steeg dit overeenstemmingspercentage nauwelijks, met een verschuiving naar slechts 83,8 procent. Het plan veranderde de mening van de AI over de beslissingen die het al maakte niet; het hielp de AI simpelweg om die beslissingen uit te voeren zonder fouten te maken.

De onderzoekers ontdekten ook dat de manier waarop informatie wordt gepresenteerd belangrijker was dan de hoeveelheid informatie die werd gegeven. In één experiment namen ze een enkele regel en plaatsten deze op verschillende plaatsen in het document. Wanneer de regel begraven was in een paragraaf aan het einde van een sectie, volgde de AI deze slechts 23 procent van de tijd. Wanneer dezelfde regel in een gestructureerde tabel bovenaan de sectie werd geplaatst, steeg de naleving naar 42 procent. Verrassend genoeg zorgde het herhalen van de regel op beide plaatsen voor een lagere naleving van 34 procent, wat suggereert dat redundantie het systeem eerder verwart dan versterkt. Dit inzicht geeft aan dat de structuur van het document invloedrijker is dan het volume van de tekst.

Misschien wel de meest significante bevinding was dat een specificatie zaken soms zelfs slechter kan maken. In één specifiek geval instrueerde een regel in de specificatie de AI om een bepaald type dataconteiner te gebruiken. De AI volgde deze regel perfect, maar het resultaat was code die ongeldig was en niet zou werken. Zonder de specificatie had de AI deze specifieke instructie genegeerd en uit zichzelf een andere, werkende methode gebruikt. Dit bewees dat het volgen van een regel niet garandeert dat de uitkomst correct is, en dat een specificatie nieuwe fouten kan introduceren terwijl het oude fouten oplost. De studie vond ook dat de AI-systemen een natuurlijke limiet hadden aan hun consistentie; wanneer de onderzoekers dezelfde test meerdere keren uitvoerden, varieerden de resultaten met ongeveer 14 procentpunten simpelweg door de willekeurige aard van hoe de AI tekst genereert. Deze variabiliteit betekende dat kleine verbeteringen niet als echte vooruitgang konden worden vertrouwd.

Uiteindelijk concludeert het onderzoek dat een specificatie een krachtig hulpmiddel is om software uitvoerbaar te maken en om mensen te helpen ontdekken waar de instructies ontbreken, maar het is geen toverstaf die verschillende AI-systemen dwingt om hetzelfde te denken. De specificatie slaagde erin het aantal defecte programma's met bijna een kwart te verminderen, wat de waarde ervan bewijst in het waarborgen dat de code draait. Toch slaagde het er niet in om de overeenstemming tussen verschillende AI-systemen te vergroten of de nauwkeurigheid van de gegevens zelf te verbeteren, die ongewijzigd bleef op 19 correcte resultaten uit 42 tests in zowel de gecontroleerde als de ongecontroleerde groepen. De studie suggereert dat een specificatie voor de huidige generatie AI meer werkt als een vangnet dat catastrofale fouten voorkomt dan als een gids die de kwaliteit van de oplossing boven wat de AI al weet tilt. De echte kracht van de specificatie ligt niet in het dwingen van de AI om het eens te zijn, maar in het betrouwbaarder maken van het proces van softwarebouw, zodat het gecontroleerd en geverifieerd kan worden.

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 →