Doorgaan naar hoofdinhoud

Reflexion: Taalagenten die leren van fouten zonder hertraining

· 5 min leestijd
Mike Thrift
Mike Thrift
Marketing Manager

Ik heb nagedacht over wat er nodig is om een Beancount-grootboekagent te bouwen die na verloop van tijd beter wordt zonder telkens opnieuw getraind te worden wanneer hij een fout maakt. "Reflexion: Language Agents with Verbal Reinforcement Learning" van Shinn et al. (NeurIPS 2023) gaat direct in op die vraag, en het antwoord is zowel veelbelovend als beperkter dan de spectaculaire cijfers doen vermoeden.

De paper

2026-04-25-reflexion-language-agents-verbal-reinforcement-learning

Reflexion (Shinn, Cassano, Berman, Gopinath, Narasimhan, Yao; NeurIPS 2023) stelt voor dat je, in plaats van modelgewichten aan te passen via dure reinforcement learning, een agent kunt verbeteren door hem zijn eigen foutenanalyse in natuurlijke taal te laten schrijven. Na elke poging leest een Zelfreflectie-model het traject en het beloningssignaal, produceert een verbale post-mortem en voegt deze toe aan een episodische geheugenbuffer. Bij de volgende poging leest de Actor de verzamelde reflecties voordat hij actie onderneemt. Er wordt geen gradiënt berekend. Geen enkel model wordt gefinetuned. Het "leren" vindt volledig plaats binnen het contextvenster.

De architectuur met drie componenten — Actor, Evaluator, Zelfreflectie — is modulair genoeg om verschillende soorten taken te ondersteunen. De Evaluator kan een binair unit-testresultaat zijn, een LLM-beoordelaar of een taakspecifieke heuristiek. Deze flexibiliteit is wat de paper interessant maakt buiten de standaard programmeerbenchmarks.

Belangrijke ideeën

  • Op HumanEval Python pass@1 bereikt Reflexion + GPT-4 91%, komend van de 80% GPT-4 baseline — een aanzienlijk en reëel verschil. Op Leetcode Hard is de sprong 7,5% → 15%, wat vooruitgang is, maar ook een herinnering aan hoe lastig die problemen blijven.
  • Op AlfWorld (tekstgebaseerde huishoudplanning) lost Reflexion 130/134 taken op na 12 pogingen, tegenover 108/134 voor de ReAct-baseline — het meest overtuigende resultaat op het gebied van besluitvorming in de paper.
  • Bij HotpotQA (multi-hop vragenbeantwoording) stijgt CoT + Reflexion van 61% naar 75% exacte match op 100 steekproefvragen.
  • Op MBPP (een tweede Python-benchmark) verslechtert Reflexion de prestaties juist enigszins: 80,1% → 77,1%. De paper besteedt hier weinig aandacht aan.
  • Op WebShop slaagt Reflexion er niet in te helpen. De auteurs schrijven dit toe aan de taak die "aanzienlijke diversiteit en verkenning" vereist — de agent schrijft niet-behulpzame reflecties die niet generaliseren over verschillende productzoekopdrachten.
  • Het geheugen is beperkt tot 1–3 opgeslagen ervaringen. Dit is pragmatisch gezien de contextlengte, maar betekent dat de agent geen kennis kan opbouwen over een lange inzetperiode.

Wat standhoudt — en wat niet

De kernbewering is solide: verbale reflectie verbetert de prestaties op taken met duidelijke, verifieerbare feedback. Als je weet of de code de unit-tests heeft doorstaan, heeft de reflectiemodule iets concreets om over te redeneren. De resultaten van AlfWorld en HumanEval zijn echt en betekenisvol.

Maar het falen bij WebShop is leerzaam en de paper onderbelicht dit enigszins. Reflectie werkt wanneer de evaluator een helder, bruikbaar signaal kan produceren. Wanneer de foutmodus is "de agent verkende het verkeerde deel van een grote zoekruimte", leidt het vertellen om "de volgende keer andere zoektermen te proberen" niet tot convergentie. Dit is een structurele beperking: verbale bekrachtiging is geen vervanging voor verkenningsstrategieën.

De programmeerexperimenten bevatten ook een circulariteit die de auteurs in hun blogpost erkennen: de agent genereert zijn eigen unit-tests om zijn eigen code te evalueren. Een gebrekkige testsuite produceert fout-positieven. Het HumanEval-cijfer van 91% houdt stand omdat HumanEval 'ground-truth'-tests biedt, maar de zelfevaluatie-loop van de agent is minder betrouwbaar bij nieuwe problemen waar geen extern orakel bestaat.

Reproduceerbaarheid is een punt van zorg. Alle hoofdresultaten maken gebruik van GPT-4, en de starchat-beta experimenten tonen geen verbetering ten opzichte van de baseline, wat betekent dat de techniek afhankelijk is van de capaciteit van het model. Teams die kleinere of open-weight-modellen gebruiken, moeten niet dezelfde winst verwachten.

Waarom dit belangrijk is voor financiële AI

De Beancount-use-case heeft precies de eigenschap die Reflexion goed laat werken: een duidelijke evaluator. Als een agent een transactie onjuist categoriseert, kan de saldo-controle van het grootboek of een afstemmingsstap een binair signaal produceren — de boeken zijn in balans of niet. Dat is een veel beter feedbackoppervlak dan de ambigue beloning bij productzoekopdrachten in WebShop.

Concreet kan ik me een Beancount 'write-back'-agent voorstellen die, na een mislukte boekingspoging (ongeldige rekening, verkeerde valuta, foutieve assertie), een verbale reflectie genereert: "Ik gebruikte Expenses:Meals, maar deze rekening vereist een subcategorie. De volgende keer zal ik de hiërarchie van de rekeningen controleren voordat ik post." Deze reflectie wordt opgeslagen en opgehaald bij de volgende soortgelijke transactie. De agent bouwt effectief een sessiespecifiek beleid op basis van zijn eigen fouten.

De geheugenlimiet is de grootste architecturale uitdaging. Een buffer van 1–3 ervaringen is prima voor een enkele sessie, maar een operationele boekhoudagent moet leren van duizenden transacties en weken van gebruik. Het uitbreiden van Reflexion naar geheugen voor de lange termijn — bijvoorbeeld door reflecties samen te vatten of te indexeren — is een open vraagstuk. De paper lost dit niet op.

Wat je hierna kunt lezen

  • Language Agent Tree Search (LATS) (Zhou et al., arXiv:2310.04406; ICML 2024) — breidt Reflexion uit door Monte Carlo Tree Search rond de reflectie-retry-loop te wikkelen, waardoor agenten meerdere redeneerpaden kunnen verkennen in plaats van zich aan één traject te binden. Behaalt 92,7% op HumanEval met GPT-4.
  • Retroformer (Yao et al., arXiv:2308.02151; ICLR 2024) — in plaats van te vertrouwen op dezelfde LLM voor zelfreflectie, traint Retroformer een apart lichtgewicht retrospectief model via policy gradient, waardoor het reflectieproces leerbaar wordt over verschillende taken. Meer principieel, maar vereist finetuning.
  • Self-Reflection in LLM Agents: Effects on Problem-Solving Performance (arXiv:2405.06682, 2024) — een empirische studie die specifiek onderzoekt wanneer en waarom reflectie helpt, met analyses over verschillende taaktypen. Nuttig om te bepalen wanneer Reflexion moet worden toegepast in vergelijking met andere correctiestrategieën.