Prejsť na hlavný obsah

Toolformer: Samostatočne dohliadané používanie nástrojov a jeho limity pre finančnú AI

· 6 minút čítania
Tian Pan
Research Engineer

Toolformer (Schick a kol., 2023, Meta AI) je základná vedecká práca o učení jazykových modelov volať externé API prostredníctvom samostatočne dohliadaného (self-supervised) tréningu. Dôkladné čítanie som odkladal, pretože „používanie nástrojov“ sa stalo takým populárnym pojmom, že sa pôvodné tvrdenia začali zahmlievať. Pred navrhovaním akéhokoľvek agenta so spätným zápisom, ktorý volá nástroje účtovnej knihy (ledger tools), potrebujem pochopiť, čo Toolformer skutočne preukázal — a kde potichu zlyháva.

O vedeckej práci

2026-04-16-toolformer-language-models-teach-themselves-use-tools

Timo Schick a sedem spoluautorov z Meta AI predstavujú metódu tréningu jazykového modelu tak, aby sa sám rozhodol, kedy zavolať externé API, aké argumenty odovzdať a ako začleniť výsledky do vlastných predpovedí — bez toho, aby pre každý nástroj potrebovali manuálne označené tréningové dáta. Prístup je samostatočne dohliadaný: model generuje kandidátske volania API na logických pozíciách v texte, tieto volania vykoná a ponechá si len tie príklady, kde výsledok API skutočne znižuje perplexitu modelu pri nasledujúcich tokenoch. Takto prefiltrovaná sada údajov sa potom použije na jemné doladenie (fine-tuning). Testované nástroje zahŕňajú kalkulačku, dva vyhľadávacie nástroje (vyhľadávanie BM25 a vyhľadávanie vo Wikipedii), model QA (otázka-odpoveď), prekladač a kalendár.

Trénovaný model je 6,7B-parametrový model založený na GPT-J, ktorý nazývajú Toolformer. Práca bola prijatá na konferenciu NeurIPS 2023.

Kľúčové myšlienky

  • Pri matematických slovných úlohách (SVAMP) dosahuje Toolformer 6,7B skóre 29,4 % — v porovnaní s východiskovým modelom GPT-J s 5,2 %, OPT 66B s 4,9 % a GPT-3 175B s 10,0 %. Používanie nástrojov efektívne láme obvyklú škálovaciu krivku pre aritmetiku.
  • V benchmarku ASDiv dosahuje Toolformer 40,4 % oproti GPT-J so 7,5 % a GPT-3 so 14,0 %; v MAWPS dosahuje 44,0 % oproti GPT-J s 9,9 % a GPT-3 s 19,8 %.
  • Pri faktografických QA úlohách sa obraz obracia: GPT-3 stále prekonáva Toolformer vo všetkých troch QA benchmarkoch (TriviaQA, WebQuestions, Natural Questions) napriek tomu, že Toolformer používa vyhľadávacie nástroje. Toolformer v TriviaQA: 53,5 % oproti východiskovému GPT-J s 31,9 %, ale GPT-3 bez nástrojov dosahuje ešte vyššie skóre.
  • Samostatočne dohliadaný proces generovania údajov vytvára tréningové príklady, kde sa model učí nevolať API, keď to nie je užitočné — krok filtrovania využíva zlepšenie perplexity ako signál, či „toto volanie nástroja skutočne pomohlo“.
  • Schopnosť používať nástroje sa objavuje až pri určitej veľkosti: modely pod hranicou približne 775 miliónov parametrov sa nedokážu spoľahlivo naučiť, kedy nástroje vyvolať, a to ani pri rovnakom tréningovom signáli.
  • Nástroj kalendár je v úlohách s časovým uvažovaním vyvolaný len v 0,2 % prípadov; model namiesto toho prevažne smeruje časové otázky na nástroj vyhľadávania vo wiki.

Čo obstojí — a čo nie

Hlavný poznatok je trvácny: trik s filtrovaním založeným na perplexite je elegantný, pretože nevyžaduje žiadne ľudské označovanie a žiadne „orakulum“, ktoré pozná správnu odpoveď — vyžaduje len informáciu o tom, či vložený výsledok API urobil okolitý text predvídateľnejším. To je skutočný prínos a výsledky v matematike sú pôsobivé. Model so 6,7 miliardami parametrov porážajúci GPT-3 v ASDiv nie je trik hodnotenia; je to jasná ukážka toho, že správne volanie nástroja má pri aritmetických úlohách hodnotu približne 26-násobne väčšieho počtu parametrov.

Menej presvedčivý je príbeh s QA úlohami. Práca prezentuje Toolformer ako nástroj, ktorý všeobecne zvyšuje výkon, ale výsledky QA ukazujú, že neprekonáva GPT-3 — oveľa väčší model bez akýchkoľvek nástrojov. Autori to uznávajú, ale naratívne rámcovanie („často konkurencieschopný s oveľa väčšími modelmi“) podceňuje, aké selektívne toto víťazstvo je: model vyhráva v úlohách, ktoré sa dajú čisto rozložiť na jedno volanie kalkulačky alebo vyhľadávanie, a prehráva alebo dosahuje rovnaké výsledky v úlohách vyžadujúcich skutočné uvažovanie nad získaným obsahom.

Hlbším metodologickým problémom je, že samostatočne dohliadaný proces predpokladá, že model je už dostatočne dobrý na generovanie hodnoverných volaní API ešte predtým, než bol na to vytrénovaný. Ide o problém bootstrappingu. Pri dobre štruktúrovaných nástrojoch, ako je kalkulačka s jasným formátom vstupu, to funguje. Pri nástrojoch so zložitejšími schémami argumentov — presne takých, aké by ste chceli pre reálne API účtovnej knihy so spätným zápisom — by kvalita vzorkovaných volaní rýchlo degradovala.

Práca tiež hodnotí každý nástroj izolovane, nie v kombinácii. Chýba ukážka viacstupňového procesu, kde by napríklad výsledok vyhľadávania slúžil ako vstup pre kalkulačku. Autori to uvádzajú ako obmedzenie, ale je to obmedzenie zásadné: reálne účtovné postupy takmer vždy vyžadujú reťazené volania nástrojov.

Nakoniec, hodnotenie prebieha v režime zero-shot. Chýba porovnanie s GPT-3 alebo GPT-4 s využitím few-shot promptingu s nástrojmi poskytnutými v kontexte, čo sa stalo dominantnou paradigmou v priebehu niekoľkých mesiacov po zverejnení tejto práce. Dátum publikácie na NeurIPS 2023 znamená, že experimenty predchádzajú širokému prijatiu API pre volanie funkcií (function calling), čím je porovnávací súbor v čase vydania už trochu zastaraný.

Prečo je to dôležité pre finančnú AI

Práca Toolformer odpovedá na otázku, ktorá ma zaujíma pre Bean Labs: môže sa model naučiť spoľahlivo volať API pre spätný zápis a za akú cenu? Odpoveď z matematických výsledkov znie „áno, ak je rozhranie nástroja čisté a úloha sa dá rozložiť na jediné volanie“. Prípady zlyhania sa však priamo prekrývajú s najťažšími časťami problému účtovnej knihy.

Akcie spätného zápisu v Beancounte — klasifikácia transakcie, odvodenie mapovania účtov, generovanie položky v denníku — nie sú jednokrokové volania kalkulačky. Zahŕňajú získavanie kontextu (predchádzajúce zápisy, účtová osnova), aplikáciu pravidiel (pravidlá zaúčtovania, obmedzenia meny) a produkciu štruktúrovaného výstupu, ktorý musí byť syntakticky platný. To sú minimálne tri reťazené volania nástrojov a architektúra Toolformer explicitne reťazenie nástrojov neumožňuje. Tréningový signál založený na perplexite by sa tu tiež ťažko aplikoval: nie je jasné, čo znamená „nižšia perplexita okolitého textu účtovnej knihy“, keď výstupom je štruktúrovaný súbor .beancount, a nie pokračovanie prirodzeného jazyka.

Užitočnejšou lekciou z Toolformer pre naše účely je „negatívny priestor“: agent so spätným zápisom nemôže byť len doladený jazykový model (LM), ktorý sa nabifľoval, kedy volať API účtovnej knihy. Potrebuje explicitnú vrstvu uvažovania (ReAct alebo podobnú), ktorá dokáže plánovať, vykonávať a kontrolovať priebežné výsledky pred samotným vykonaním zápisu. Toolformer dokazuje, že používanie nástrojov funguje; nedokazuje však, že funguje bezpečne pri štruktúrovaných operáciách s vedľajšími účinkami.

Čo čítať ďalej

  • ReAct: Synergizing Reasoning and Acting in Language Models (arXiv:2210.03629) — pridáva explicitné kroky uvažovania (chain-of-thought) preložené volaniami nástrojov; architektúra, ktorá rieši obmedzenie Toolformeru v reťazení a je základom väčšiny moderných agentov.
  • ToolLLM: Facilitating Large Language Models to Master 16000+ Real-world APIs (arXiv:2307.16789, ICLR 2024) — škáluje používanie nástrojov na viac ako 16 000 reálnych API prostredníctvom datasetu ToolBench; najbližšia vec k záťažovému testu volania nástrojov na úrovni zložitosti, ktorej by čelil skutočný účtovný agent.
  • FinMaster (arXiv:2505.13533) — benchmarkuje end-to-end účtovné procesy vrátane zápisov do denníka a odsúhlasenia; ukáže, či sa zisky, ktoré Toolformer preukázal pri aritmetike, dajú zovšeobecniť na viacstupňové úlohy s obmedzenou schémou, ktoré sú dôležité pre Beancount.