How Robustly do LLMs Understand Execution Semantics?
Deze studie toont aan dat hoewel open-source redeneermodellen robuust zijn, de frontier-modellen zoals GPT-5.2 bij het voorspellen van code-uitvoering extreem breekbaar blijken bij verstoringen, met name wanneer uitzonderingen optreden, wat de noodzaak onderstreept van perturbatietests om de werkelijke codebegrip van LLMs te evalueren.
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 superintelligente robot hebt die alles over programmeren lijkt te weten. Je vraagt hem: "Wat doet deze code?" en hij geeft een perfect antwoord. Maar wat gebeurt er als je de code een beetje anders schrijft, of als je een vreemd getal invoert dat de code niet verwacht? Blijft de robot dan nog steeds slim, of begint hij te haperen?
Dit is precies wat onderzoekers van de UC Davis en University College London hebben onderzocht in hun paper: "Hoe goed begrijpen Large Language Models (LLMs) eigenlijk wat code doet?"
Hier is een simpele uitleg van hun bevindingen, met behulp van wat alledaagse vergelijkingen.
1. De "Leerling" vs. De "Examenhaas"
De onderzoekers keken naar verschillende AI-modellen. Ze stelden twee soorten tests op:
- De originele test: De standaardvragen waar de AI al veel over heeft geoefend.
- De "verstoorde" test: Vragen waarbij ze de code een beetje veranderden (zoals variabelen hernoemen) of de invoer een beetje raar maakten (zoals een getal dat niet past).
Het resultaat was verrassend:
- De "Open Source" modellen (zoals de DeepSeek R1 familie) waren als een vlijtige leerling. Ze scoorden niet perfect (rond de 40-60%), maar ze waren stabiel. Als je de vraag een beetje veranderde, gaven ze nog steeds een redelijk antwoord. Ze begrepen het concept van de code.
- De "Top-modellen" (Frontier models), zoals GPT-5.2, waren als een examenhaas. Op de standaardtest scoorden ze bijna perfect (99%). Maar zodra je de vraag een beetje veranderde, stortte hun score in (naar ongeveer 75-80%). Ze hadden de antwoorden van de originele test kennelijk uit het hoofd geleerd, in plaats van echt te begrijpen hoe de machine werkt.
De analogie: Stel je voor dat je een robot vraagt hoe je een taart bakt. Als je zegt "Bak een taart", zegt hij het recept perfect op. Maar als je zegt "Bak een taart, maar gebruik dan een beetje minder suiker", denkt de top-robot plotseling dat je vraagt om een auto te bouwen. De vlagtige leerling zegt: "Ah, minder suiker, dan wordt hij minder zoet, maar het blijft een taart."
2. De "Kleine Broer" vs. De "Grote Broer"
Een van de gekste ontdekkingen was dat een kleinere, efficiëntere versie van GPT-5 (genaamd GPT-5 Nano) veel robuuster was dan de grote, dure GPT-5.2.
- De grote broer (GPT-5.2) was extreem gevoelig voor kleine veranderingen.
- De kleine broer (GPT-5 Nano) hield zijn koel, zelfs als de code veranderde.
De onderzoekers vermoeden dat dit komt door een proces genaamd "quantisatie". Dit is alsof je een foto iets scherper maakt door de kleuren te vereenvoudigen. Soms helpt dit om de "ruis" weg te halen en zorgt het ervoor dat het model minder snel "overleert" (overfitting) en beter generaliseert. De grote broer was te specifiek getraind op de oude vragen; de kleine broer had een gezondere, bredere basis.
3. De "Fouten" die de AI negeert
Een groot deel van de test ging over het voorspellen van fouten (exceptions). Stel, je geeft een lijst met 3 items, maar vraagt de code om het 100e item. Een mens zegt direct: "Oeps, dat bestaat niet!" (een IndexError).
- De originele instructies voor de AI zeiden: "Geef het antwoord." Ze zeiden niets over fouten.
- GPT-5.2 probeerde dan vaak een antwoord te verzinnen, zelfs als de code crashte. Het gedroeg zich als een leugenaar die niet wil zeggen dat hij het niet weet. Het zei: "Het antwoord is 42", terwijl de code eigenlijk kapot ging.
- Gemini 3 Pro en GPT-5 Nano waren hier iets beter in, maar zelfs zij faalden vaak als de instructie niet expliciet was: "Let op voor fouten!"
Toen de onderzoekers de instructie veranderden naar: "Kijk goed naar de types en waarschuw als er een fout is", verbeterde de prestatie van GPT-5.2 drastisch (van 15% naar 81%). Dit bewijst dat de AI het kon, maar dat ze gewoon niet wisten dat ze het moesten doen.
4. De "Labyrint" van beslissingen
De onderzoekers keken ook naar hoe moeilijk het is voor een AI om code te volgen die veel beslissingen bevat (veel if-stellingen en lussen).
- De bevinding: Hoe meer beslissingen de code moet nemen, hoe slechter de AI wordt.
- De analogie: Stel je voor dat je een labyrint moet doorlopen. Als het pad rechtuit gaat, is het makkelijk. Maar als er bij elke hoek een keuze is (links of rechts?), en er zijn 20 van die keuzes, dan raakt de AI in de war. Ze kunnen de "stroom" van de code niet meer goed volgen.
- Uitzondering: Gemini 3 Pro bleek hier verrassend goed in te zijn. Zij leek minder last te hebben van deze complexe labyrinten dan de anderen.
Conclusie: Wat betekent dit voor ons?
De kernboodschap van dit onderzoek is: We moeten niet blind vertrouwen op de hoge scores van de nieuwste AI-modellen.
- Ze zijn kwetsbaar: Een model dat 99% scoort op een standaardtest, kan volledig falen zodra je de code een beetje anders schrijft of een rare invoer geeft.
- Ze "leren" niet altijd: Soms lijken ze de antwoorden uit het hoofd te leren in plaats van de logica te begrijpen.
- Instructies zijn cruciaal: Als je een AI vraagt om code te begrijpen, moet je heel specifiek zijn over wat je wilt (bijvoorbeeld: "Zeg ook als er een fout optreedt"). Zonder die duidelijke instructie, proberen ze vaak gewoon een antwoord te verzinnen, zelfs als het verkeerd is.
Kortom: De AI's zijn briljant, maar ze zijn nog niet de "meesters van het vak" die we nodig hebben voor kritieke software. Ze zijn meer als getrainde apen die heel goed kunnen dansen op een specifiek liedje, maar als je het ritje een beetje verandert, weten ze niet meer wat ze moeten doen.
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.