Reducing Token Usage of State-in-Context Agents using Minification
Dit artikel presenteert een replicatie van het state-in-context agent framework en demonstreert dat het toepassen van code minificatie technieken het input tokengebruik met 42% vermindert ten koste van een daling van 12 procentpunt in de resolutie-ratio, wat een veelbelovende afweging biedt voor kosteneffectievere software engineering agents.
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 briljante maar zeer dure consultant inhuurt om een kapotte machine te repareren. De machine is een enorm, complex softwareprogramma (een codebase), en de consultant is een AI.
Elke keer dat de AI een stukje van de handleiding of een pagina van de blauwdruk van de machine leest, kost dat geld. Hoe meer pagina's de AI moet lezen, hoe hoger de rekening.
Het Probleem: Te Veel Papierwerk
De onderzoekers ontdekten dat wanneer deze AI-agenten proberen softwarebugs op te lossen, ze verdrinken in het papierwerk. Ze besteden de meeste tijd aan het lezen van de eigenlijke code — de "blauwdrukken" — wat ongeveer 90% van de totale kosten beslaat. De instructies en de lijst met welke bestanden bekeken moeten worden, zijn in vergelijking daarmee piepklein.
Het is alsoast een detective inhuren om een misdaad op te lossen, maar hem dwingen om het hele telefoonboek van de stad te lezen voordat hij zelfs maar naar de plaats delict kan kijken. Ze raken vermoeid, de rekening wordt enorm hoog, en ze kunnen de aanwijzing missen omdat ze overweldigd worden door de enorme hoeveelheid tekst.
De Oplossing: "Minificatie" (De Krimpstraal)
De paper introduceert een techniek genaamd Minificatie. Denk aan dit als een "Krimpstraal" voor code.
In de wereld van software bevat code vaak extra spaties, commentaar (notities voor mensen) en lange variabelenamen zoals calculate_total_revenue_for_the_month. Dit is geweldig voor mensen om te lezen, maar het is slechts "ophulp" voor een computer.
De onderzoekers pasten een reeks transformaties toe om deze code te "krimpen" voordat deze naar de AI werd gestuurd:
- Verwijder de Ophulp: Ze haalden lege regels, commentaar en documentatie weg.
- Verstrak de Grip: Ze verwijderden extra spaties rondom wiskundige symbolen (veranderend van
a + bnaara+b). - Verkort Namen: Ze hernoemden lange variabelen naar korte namen (veranderend van
calculate_total_revenue_for_the_monthnaarx).- Cruciaal Detail: Om ervoor te zorgen dat de AI niet in de war raakte, leverden ze een "vertalingswoordenboek" zodat de AI wist dat
xeigenlijkcalculate_total_revenue_for_the_monthbetekende.
- Cruciaal Detail: Om ervoor te zorgen dat de AI niet in de war raakte, leverden ze een "vertalingswoordenboek" zodat de AI wist dat
Het Experiment: Werkt de Krimpstraal?
Het team testte dit op een beroemde benchmark genaamd SWE-bench, wat een soort gestandaardiseerde test is van 100 echte softwarebugs. Ze gebruikten een krachtig AI-model (GPT-5-mini) om deze bugs op te lossen.
De Resultaten:
- Het Goede Nieuws: De "Krimpstraal" werkte ongelooflijk goed bij het besparen van geld. Het verminderde de hoeveelheid tekst die de AI moest lezen met 42%. Dit is een enorme reductie in kosten.
- Het Slechte Nieuws: De AI werd een beetje slechter in het oplossen van de problemen. Het succespercentage daalde met 12 procentpunten (van 50% succes naar 38%).
De Trade-off:
De paper concludeert dat je veel geld kunt besparen door de code te krimpen, maar dat je moet accepteren dat de AI minder problemen oplost. Het is een afweging tussen efficiëntie (kosten) en effectiviteit (succes).
Eén Grote Waarschuwing: De "Indentatie"-valstrik
Er was één specif kind van krimpen dat veel problemen veroorzaakte: Dedentatie.
Python-code (een populaire programmeertaal) vertrouwt op indentatie (spaties aan het begin van een regel) om te weten hoe instructies gegroepeerd moeten worden. De onderzoekers probeerden het aantal spaties te verminderen om tokens te besparen.
- Wat er gebeurde: De AI raakte in de war. De AI schreef een oplossing die voor de AI correct leek, maar die in werkelijkheid gebroken code was omdat de spacing fout was.
- De Analogie: Het is alsof je een chef vertelt om "de uien te hakken", maar de instructie over hoe hij de mes moet vasthouden verwijdert. De chef probeert het, maar het resultaat is een puinhoop.
- De Fix: De paper suggereert dat als je deze methode wilt gebruiken, je een "veiligheidsnet" nodig hebt om de spacing automatisch te corrigeren nadat de AI zijn antwoord heeft geschreven. Zonder dit stort het succespercentage in.
Samenvatting
De paper laat zien dat we AI-softwareengineers veel goedkoper kunnen maken door hun "leesmateriaal" terug te brengen tot de absolute essentie.
- Kosten: Dalen aanzienlijk (42% minder tekst om te lezen).
- Prestaties: Dalen matig (12% minder opgeloste bugs).
- Kanttekening: Je moet voorzichtig zijn dat je de "grammatica" (indentatie) die de code nodig heeft om betekenis te hebben, niet verwijdert.
De onderzoekers hebben hun tools beschikbaar gesteld op GitHub, zodat anderen deze "Krimpstraal" op hun eigen softwareprojecten kunnen uitproberen.
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.