Redeneermodel (reasoning model)
Wat is een redeneermodel?
Een redeneermodel is een taalmodel dat een probleem eerst intern uitwerkt voor het zijn antwoord neerschrijft. In plaats van meteen met het antwoord te beginnen, maakt het eerst een stuk privé denkwerk aan: een aanpak plannen, alternatieven afwegen, eigen fouten opmerken, en pas daarna antwoorden.
De bruikbare intuïtie is dat elke token rekenruimte is. Een gewoon model moet zich meteen vastleggen op het eerste woord van zijn antwoord, en heeft dus zowat geen ruimte om iets moeilijks uit te zoeken voor het begint. Een redeneermodel geeft zichzelf die ruimte eerst, en antwoordt daarna vanuit een positie waar het werk al gedaan is.
Je ziet dit ook opduiken als extended thinking of adaptive thinking, afhankelijk van de aanbieder. Het is hetzelfde idee onder een andere naam, en de ruil erachter is telkens dezelfde: meer nadenken koopt kwaliteit en kost tijd en geld.
Redeneertokens, en waarom ze op je factuur staan
Dat denkwerk bestaat net als al de rest uit tokens, en er zijn drie dingen over die tokens die je best weet.
Je krijgt ze niet te zien. Het interne redeneren komt niet als gewone tekst naar je terug. Wat je terugkrijgt is het antwoord, en afhankelijk van de aanbieder een samenvatting van het denkwerk.
Je betaalt ze als output. Redeneertokens worden aangerekend aan het outputtarief, en dat is het dure. Zo kan een model dat je een antwoord van drie zinnen geeft, meer kosten dan een model dat meerdere pagina's schrijft: het meeste waar je voor betaald hebt, was onzichtbaar.
Ze nemen plaats in in het contextvenster. Het denkwerk moet naast je prompt en je antwoord passen. Bij een moeilijk probleem kan een model van een paar honderd tot tienduizenden redeneertokens aanmaken, dus bij een lang gesprek met een grote prompt is dat een echte beperking en geen voetnoot.
De API vertelt je hoeveel redeneertokens een aanvraag verbruikt heeft, en dat is het getal om in de gaten te houden als je wil uitzoeken waar je factuur naartoe gaat.
Hoeveel laat je het nadenken?
Je krijgt een knop voor de diepte, en die gebruik je best bewust.
Sommige aanbieders tonen die als een niveau van inspanning, dat loopt van helemaal niet nadenken tot maximaal. Andere tonen het als een denkbudget in tokens, waarbij je een streefgetal zet voor hoeveel het model mag verbruiken voor het begint te antwoorden. Anthropic legt het minimumbudget op 1.024 tokens en weigert alles wat lager ligt.
Twee dingen zijn de moeite bij het instellen. Ten eerste nemen de opbrengsten af, en waar dat begint hangt af van de opdracht, dus dit is iets dat je test in plaats van beredeneert. Ten tweede is een budget doorgaans een streefgetal en geen harde stop. Het model kan ruim voor het budget op is klaar zijn met denken, dus een royaal budget betekent niet automatisch een royale factuur.
De praktische aanpak is om bij eenvoudige opdrachten laag te beginnen en op te schuiven tot de kwaliteit niet meer verbetert, en bij echt moeilijke opdrachten hoog te beginnen en af te bouwen tot de kwaliteit begint te zakken. Bij alles wat er echt toe doet, test je beide richtingen in plaats van één keer een stand te kiezen en die te laten staan.
Wanneer een redeneermodel de moeite is
Aanbieders zijn redelijk eensgezind over waar dit helpt: complexe problemen oplossen, programmeren, wetenschappelijk redeneren, en agentwerk dat over meerdere stappen loopt en tools gebruikt. Die hebben allemaal iets gemeen. Er is een juist antwoord, je hebt meerdere stappen nodig om er te geraken, en een fout aan het begin verpest alles wat erna komt.
Ze zijn even eensgezind over waar het niet helpt. Alles waar snelheid het punt is, past er slecht bij. Een spraakassistent die meteen moet antwoorden, een snelle opzoeking, een eenvoudige classificatie, een keuze om iets door te sturen: die draaien allemaal beter op een gewoon model, want het nadenken voegt seconden toe zonder juistheid toe te voegen.
Er is een tussengeval dat het benoemen waard is. Bij agentwerk betaalt nadenken zich vaak terug op een manier die je niet ziet in de prijs per aanroep. Een agent die deftig plant voor hij tools begint aan te roepen, doet minder verkeerde toolaanroepen, en elke verkeerde toolaanroep kost je een heen-en-weer plus de tokens om een nutteloos resultaat te lezen. Vergelijk je puur op prijs per aanroep, dan mis je dat.
Waar moet je op letten bij redeneermodellen
De wachttijd is wat je gebruikers als eerste opmerken. Een model dat vijftien seconden nadenkt voor het antwoordt, voelt achter een chatvenster kapot aan, tenzij je toont dat er iets aan het gebeuren is.
Het denkwerk is geen verantwoording. Wat je terugkrijgt, als je al iets terugkrijgt, is een samenvatting van een intern proces. Dat is een nuttig hulpmiddel om te debuggen. Het is geen auditspoor, en je legt het niet voor aan een klant of een controleur als de reden waarom een beslissing genomen is.
Nadenken vult ontbrekende informatie niet aan. Een model dat het feit niet heeft, redeneert zich net zo makkelijk naar een zelfzeker fout antwoord als naar een juist antwoord. Zit het antwoord in jouw documenten, dan is ophalen de oplossing en niet meer nadenken.
Budget en kost lopen niet recht evenredig. Het denkbudget verdubbelen verdubbelt je factuur niet, want het model stopt vaak vroeger, en het verdubbelt je kwaliteit evenmin. Meet allebei in plaats van het aan te nemen.
Nieuwe modelgeneraties veranderen de knoppen. Aanbieders blijven wijzigen hoe je nadenken instelt, van vaste budgetten naar het model dat zelf beslist hoeveel het nadenkt. Alles wat je vandaag hard vastlegt, kijk je best opnieuw na als je naar een nieuwer model gaat.