Doorgaan naar hoofdinhoud

LATS: Language Agent Tree Search — Redeneren, Handelen en Plannen in Eén Framework

· 6 min leestijd
Mike Thrift
Mike Thrift
Marketing Manager

Ik heb nagedacht over wat er na Tree of Thoughts komt — als je kunt zoeken via redeneerstappen, waarom dan niet ook zoeken via acties? Dit is precies wat LATS (Language Agent Tree Search) doet, en het is de reden dat ik het nu lees. Het artikel van Andy Zhou, Kai Yan, Michal Shlapentokh-Rothman, Haohan Wang en Yu-Xiong Wang (ICML 2024, arXiv:2310.04406) is de meest heldere synthese tot nu toe van redeneren, handelen en plannen in één agent-framework, en de resultaten zijn werkelijk moeilijk te negeren.

Het artikel

2026-05-10-lats-language-agent-tree-search-reasoning-acting-planning

Het kernprobleem dat LATS aanpakt is een structurele kloof in eerder werk over agents. ReAct wisselt redeneren en handelen af, maar heeft geen mechanisme om terug te gaan en een ander pad te proberen wanneer een traject misgaat. Tree of Thoughts maakt vertakkingen over redeneerstappen mogelijk, maar werkt op interne LM-kennis — het kan geen tools aanroepen of externe feedback ontvangen binnen de zoekopdracht. Reflexion voegt verbale zelfcorrectie toe, maar de lineaire retry-lus betekent dat het zich vastlegt op een nieuw traject zonder alternatieven te verkennen. LATS versmelt alle drie de ideeën met een volwaardige Monte Carlo Tree Search (MCTS) ruggengraat, waardoor LLM-agents meerdere takken kunnen verkennen, echte omgevingsfeedback kunnen ontvangen en kunnen backtracken wanneer een pad faalt.

De technische machinerie is een MCTS-lus van zes stappen: Selectie (kies de volgende te verkennen node via de UCT-formule), Expansie (sample n kandidaat-acties uit het LM), Evaluatie (scoor elke node met een hybride waardefunctie), Simulatie (voer uit tot een eindtoestand), Backpropagation (werk de waarden van voorouders bij) en Reflectie (genereer bij falen een verbale samenvatting van wat er misging en sla deze op als context). De waardefunctie verdient aandacht: V(s) = λ·LM(s) + (1−λ)·SC(s), waarbij LM(s) de eigen inschatting van het LM is van de kwaliteit van het traject na het ontvangen van omgevingsfeedback, en SC(s) een zelfconsistentie-score is gebaseerd op hoe vaak die actie wordt gesampled over zusternodes. Dit is geen getraind beloningsmodel — de waardefunctie is volledig prompt-gestuurd.

Belangrijkste inzichten

  • Op HumanEval behaalt GPT-4 + LATS een score van 92,7% pass@1, tegenover 91,0% voor GPT-4 + Reflexion en 56,9% voor enkel GPT-3.5 + ReAct. GPT-3.5 + LATS springt naar 83,8%.
  • Op HotPotQA bereikt LATS (CoT + ReAct) een exacte match van 0,71 tegenover 0,32 voor de ReAct-baseline — meer dan een verdubbeling van de nauwkeurigheid bij multi-hop redeneren.
  • Op WebShop (webnavigatie + aankopen) scoort LATS 75,9 (succespercentage 38,0%) tegenover Reflexion met 64,2 (35,0%) — een betekenisvol gat bij een taak die het beheer van de status over vele pagina's vereist.
  • Bij de Game of 24 (een pure redeneerpuzzel) bereikt LATS een succespercentage van 0,44 tegenover ToT met 0,20, ondanks het gebruik van dezelfde GPT-4 ruggengraat.
  • Verrassend genoeg expandeert LATS minder nodes om een oplossing te vinden dan ToT (gemiddeld 66,65 versus 84,05 nodes op HotPotQA bij k=50), en gebruikt het minder tokens (173.290 versus 210.215), ook al lijkt het in theorie duurder.

Wat houdt stand — en wat niet

De benchmarkcijfers zijn reëel en het framework is conceptueel helder. De UCT-formulering zorgt voor een principiële afweging tussen exploratie en exploitatie die ad-hoc BFS/DFS in ToT mist. De integratie van externe omgevingsfeedback in de waardefunctie — in plaats van pure LM-introspectie — is de juiste stap, en de resultaten laten dat zien.

Dat gezegd hebbende, is er een kritische aanname begraven in het artikel die de auteurs erkennen maar niet volledig aan een stresstest onderwerpen: LATS vereist de mogelijkheid om de omgeving terug te zetten naar een eerdere toestand. Zonder checkpointing kun je de boom niet vertakken — zodra een actie is ondernomen, zit je eraan vast. De auteurs merken op dat dit voor LM-taken vaak beheersbaar is door "historische tekstinvoer te kopiëren en te plakken", maar voor echte actie-omgevingen (databases, bestandssystemen, API's met bijwerkingen) is dit een harde vereiste waaraan veel productiesystemen niet kunnen voldoen. De WebShop-resultaten, hoewel beter dan de baselines, laten zien dat in complexe omgevingen de zelfreflecties de neiging hebben generiek te worden in plaats van gericht — agents kunnen vastlopen in het herhalen van oppervlakkig verschillende maar structureel identieke fouten. Het artikel merkt dit op, maar heeft er geen oplossing voor.

Er is ook geen ablatie die de bijdrage van de MCTS-structuur isoleert van het ontwerp van de waardefunctie. Het is aannemelijk dat een eenvoudigere vertakkingsmethode met dezelfde hybride waardefunctie een groot deel van het gat zou dichten, en de auteurs testen dit niet direct.

Waarom dit belangrijk is voor financiële AI

Beancount-grootboeken zijn een bijna ideale omgeving voor boomzoekopdrachten in LATS-stijl, om één belangrijke reden: elk grootboek wordt ondersteund door een Git-repository. Status-reversie — de harde vereiste die LATS in veel praktijksituaties onpraktisch maakt — wordt triviaal vervuld door git checkout of git stash. Een write-back agent zou kandidaat-journaalposten over meerdere takken kunnen voorstellen, deze kunnen evalueren tegen de beperkingen van de balans (de waardefunctie), en alleen het pad met de hoogste score kunnen committen. Gefaalde takken krijgen een verbale reflectie: "de geboekte post schond de invariant activa = passiva + eigen vermogen omdat het rekeningtype verkeerd was geclassificeerd".

Het ontwerp van de hybride waardefunctie is ook direct toepasbaar. Voor een grootboek-agent zou LM(s) een voorgestelde boeking scoren op basis van semantische fit (lijkt dit op de juiste categorie?), terwijl SC(s) zou bijhouden hoe consistent de agent soortgelijke eerdere transacties classificeert — een natuurlijke zelfconsistentiecontrole geworteld in de eigen historie van het grootboek.

De aanname van status-reversie is de enige plek waar ik de financiële analogie in twijfel zou trekken. Echte grootboeken hebben vaak downstream-effecten: een geboekte post triggert een factuur, wat weer een betalingsworkflow triggert. In die gevallen gaat de aanname van LATS niet op. Specifiek voor Beancount, waar het grootboek een plat-tekstbestand is onder Git-beheer en wijzigingen lokaal zijn voordat er een downstream-trigger plaatsvindt, houdt de aanname stand — maar dit is een ontwerpbeperking die expliciet vermeld moet blijven.

Wat nu te lezen

  • MCTS-gebaseerde planning zonder omgevingsmodellen: "Reasoning with Language Model is Planning with World Model" (Hao et al., 2023, arXiv:2305.14992) — RAP, waar LATS direct op voortbouwt en beter presteert.
  • Hoe goed generaliseert de LM-waardefunctie? "Let's Verify Step by Step" (Lightman et al., 2023, arXiv:2305.20050) — procesbeloningsmodellen als alternatief voor prompt-gebaseerde waardefuncties.
  • Veilige meerstaps planning onder onomkeerbaarheid: "Decision-Making with Language Models via Successive Prompting" (Creswell et al., 2023) — een eenvoudigere planningsmethode die de vereiste voor status-reversie vermijdt.