ReAct: Synergia uvažovania a konania v jazykových modeloch
ReAct (Yao a kol., ICLR 2023) je vedecký článok, ktorý stojí za slučkou uvažovania a následného konania, ktorú dnes väčšina moderných finančných agentov používa ako predvolenú kostru. Odkladal som to, pretože mi to pripadalo ako infraštruktúra – druh veci, ktorú už každý pozná – ale po čase strávenom s autonómnym zápisom do účtovných kníh som chcel pochopiť chybové režimy priamo pri zdroji, nie z druhotného folklóru.
Článok
Shunyu Yao, Jeffrey Zhao, Dian Yu, Nan Du, Izhak Shafran, Karthik Narasimhan a Yuan Cao navrhujú klamlivo jednoduchú myšlienku: namiesto toho, aby sme od jazykového modelu vyžadovali buď uvažovanie (reťazec myšlienok), alebo konanie (vyvolanie nástrojov), nechajme ho robiť oboje v prepletenom prúde. Každý krok v trajektórii je buď Myšlienka (voľné uvažovanie o tom, čo urobiť ďalej), alebo pár Akcia/Pozorovanie (akcia a jej výsledok z prostredia). Tvrdia, že toto prepletanie je synergické – uvažovanie určuje, aké akcie podniknúť, a pozorovania spätne formujú uvažovanie.
Testujú to na štyroch benchmarkoch: HotpotQA a Fever (znalostne náročné QA a overovanie faktov s využitím vyhľadávacieho API Wikipédie ako akčného priestoru) a ALFWorld a WebShop (stelesnené a simulované prostredia elektronického obchodu vyžadujúce viacstupňové rozhodovanie). Všetky experimenty využívajú PaLM-540B a GPT-3 (text-davinci-002) v rámci few-shot promptovania s len jedným alebo dvoma príkladmi v kontexte.
Kľúčové myšlienky
- Na ALFWorld prekonáva ReAct základné línie imitačného učenia a posilňovaného učenia o 34 percentuálnych bodov v úspešnosti úloh; na WebShop je nárast o 10 percentuálnych bodov.
- Na Fever (overovanie faktov) ReAct prekonáva reťazec myšlienok (CoT). Na HotpotQA (viackrokové QA) CoT v skutočnosti poráža ReAct – článok to priamo priznáva, namiesto toho, aby to zamlčal.
- Prípady zlyhania sa delia na dva typy: chyby uvažovania (model nesprávne posúdi informácie, ktoré má k dispozícii) a chyby vyhľadávania (neinformatívny výsledok z Wikipédie vykoľají následný reťazec uvažovania). Tieto sú kvalitatívne odlišné a vyžadujú si rôzne zmiernenia.
- Samotný formát je interpretovateľný: človek si môže prečítať stopu Myšlienky, nájsť chybu a opraviť ju úpravou jediného riadku. Toto je explicitne označené za bezpečnostnú vlastnosť.
- Jemné doladenie (fine-tuning) menších modelov na trajektóriách ReAct im umožňuje prekonať väčšie modely s promptami – čo naznačuje, že prepletený formát je naučiteľný, nie len trik pri promptovaní.
Čo obstojí — a čo nie
Výsledky interaktívneho rozhodovania (ALFWorld, WebShop) sú najsilnejšou časťou článku. Rozdiel oproti čistému imitačnému učeniu je dostatočne veľký na to, aby sa dal len ťažko pripísať šťastiu pri hyperparametroch. Stopy uvažovania sú skutočne čitateľné a analýza chýb rozlišujúca zlyhania vyhľadávania od zlyhaní uvažovania je úprimná a užitočná.
Výsledky znalostne náročného QA sú slabšie a autori si sú toho vedomí. Prehra ReAct voči CoT na HotpotQA je reálnym údajom: keď sa k odpovedi dá dopracovať reťazením interných znalostí modelu, trenie vyvolané vyvolávaním nástrojov v skutočnosti škodí. Model niekedy načíta pasáž z Wikipédie, ktorá súvisí len okrajovo, ukotví sa na nej a potom vyprodukuje horšie uvažovanie, než keby zostal len pri svojich znalostiach. Článok to nazýva „rozptýlenie vyvolané vyhľadávaním“ (search-induced distraction) a architektúra to nerieši – je to problém kvality vyhľadávania prezlečený za problém agenta.
Existuje tu aj fundamentálny problém hodnotenia, ktorý článok preberá od samotných benchmarkov: ALFWorld aj WebShop majú relatívne obmedzené akčné priestory v porovnaní s tým, čo potrebuje agent v reálnom svete. 34 % zlepšenie na ALFWorld je v rámci hry pôsobivé, ale ALFWorld je simulované domáce prostredie s malou fixnou slovnou zásobou akcií. Generalizácia z tohto na, povedzme, účtovnú knihu Beancount s otvorenou schémou transakcií si vyžaduje extrapoláciu, ktorú článok neodôvodňuje.
Few-shot nastavenie je silnou aj slabou stránkou. Jeden alebo dva príklady v kontexte sú pôsobivé, ale znamená to tiež, že výsledky sú vysoko citlivé na výber konkrétnych príkladov. V článku som nenašiel ablačnú štúdiu výberu príkladov, čo by bolo užitočné.
Prečo je to dôležité pre finančnú AI
Problém bezpečnosti spätného zápisu pre autonómnych agentov Beancount je presne ten chybový režim, ktorý ReAct osvetľuje. Ak agent uvažuje o kategorizácii transakcie a získa nejednoznačný záznam v účtovnej knihe – taký, ktorý by sa dal priradiť k Expenses:Food aj Expenses:Entertainment – vzorec ReAct ukotví následné uvažovanie na tej interpretácii, ktorú naznačuje prvý získaný záznam. Toto je finančný ekvivalent „rozptýlenia vyvolaného vyhľadávaním“ a nezmizne to ani opatrnejším promptovaním.
Argument interpretovateľnosti tu má väčší význam, než autori pravdepodobne zamýšľali. V účtovníctve audítor nepotrebuje len správnu odpoveď – potrebuje vysledovateľný reťazec uvažovania, pod ktorý sa môže podpísať. Stopy Myšlienok v ReAct vám tento reťazec poskytujú a pozorovanie, že človek môže opraviť trajektóriu úpravou jednej Myšlienky, je priamo aplikovateľné na krok kontroly s človekom v slučke (human-in-the-loop) pred akýmkoľvek zapísaním účtovného prípadu do knihy.
Chybový režim, o ktorý sa zaujímam najviac, sú však kumulujúce sa chyby pri úlohách s dlhým horizontom. Zosúladenie (reconciliation), ktoré sa týka päťdesiatich transakcií, má oveľa viac príležitostí na to, aby sa Myšlienka pokazila, než jednokrokové vyhľadávanie na Wikipédii. ReAct neposkytuje žiadny natívny mechanizmus na to, aby agent zistil, že sa odchýlil – jednoducho pokračuje ďalej. Reflexion (Shinn a kol., arXiv:2303.11366) to rieši pridaním kroku verbálneho sebahodnotenia a kombinácia ReAct + Reflexion vyrieši 130 zo 134 úloh ALFWorld v porovnaní so samotným ReAct. Tento rozdiel vám napovie, akú veľkú hodnotu má pridanie slučky na zotavenie sa z chýb nad základnú kostru ReAct.
Čo si prečítať ďalej
- Reflexion: Language Agents with Verbal Reinforcement Learning (Shinn a kol., 2023, arXiv:2303.11366) — pridáva krok sebareflexie, ktorý umožňuje agentovi ReAct revidovať svoju stratégiu naprieč epizódami; najpriamejšie rozšírenie pre agentov účtovných kníh, ktorí sa potrebujú zotaviť z chýb uprostred trajektórie.
- FireAct: Toward Language Agent Fine-tuning (Chen a kol., 2023, arXiv:2310.05915) — jemne dolaďuje modely špecificky na trajektóriách ReAct naprieč viacerými nástrojmi; relevantné pre trénovanie agenta špecifického pre Beancount na reálnych volaniach nástrojov účtovnej knihy.
- Tree of Thoughts: Deliberate Problem Solving with Large Language Models (Yao a kol., 2023, arXiv:2305.10601) — skúma vyhľadávanie v cestách uvažovania namiesto viazania sa na jeden reťazec; dôležité pre prípady, kedy je prvá trajektória ReAct nesprávna a vyžaduje systematický návrat (backtracking).
