Преминете към основното съдържание

ReAct: Синергия между разсъждение и действие при езиковите модели

· 7 минути четене
Mike Thrift
Mike Thrift
Marketing Manager

ReAct (Yao et al., ICLR 2023) е научният труд, който стои зад цикъла „разсъждение-после-действие“, който повечето съвременни финансови агенти сега използват като стандартна рамка. Отлагах разглеждането му, защото изглежда като инфраструктура — нещо, което всички вече знаят — но след като прекарах известно време с автономното обратно записване в леджъри, исках да разбера видовете грешки от източника, а не от преразкази.

Научният труд

2026-04-17-react-synergizing-reasoning-and-acting-in-language-models

Шуню Яо, Джефри Джао, Диан Ю, Нан Ду, Ицхак Шафран, Картик Нарасимхан и Юан Цао предлагат измамно проста идея: вместо да искате от езиковия модел или да разсъждава (верига от мисли), или да действа (извикване на инструменти), оставете го да прави и двете в редуващ се поток. Всяка стъпка в траекторията е или Thought (разсъждение в свободна форма за това какво да се прави след това), или двойка Act/Obs (действие и неговото наблюдение от средата). Твърдението е, че това преплитане е синергично — разсъждението определя кои действия да се предприемат, а наблюденията преоформят разсъждението.

Те тестват това на четири бенчмарка: HotpotQA и Fever (QA с интензивно използване на знания и проверка на факти, използващи Wikipedia search API като пространство за действия), и ALFWorld и WebShop (задачи в реална и симулирана среда за електронна търговия, изискващи вземане на решения в няколко стъпки). Всички експерименти използват PaLM-540B и GPT-3 (text-davinci-002) с few-shot подтикване (prompting) само с един или два примера в контекста.

Ключови идеи

  • При ALFWorld ReAct превъзхожда базовите модели за обучение чрез имитация и подсилено обучение с 34 процентни пункта абсолютна разлика в степента на успех на задачите; при WebShop печалбата е 10 процентни пункта.
  • При Fever (проверка на факти) ReAct превъзхожда веригата от мисли (CoT). При HotpotQA (многостъпков QA), CoT всъщност побеждава ReAct — трудът признава това директно, вместо да го прикрива.
  • Случаите на неуспех се делят на два типа: грешки в разсъждението (моделът преценява погрешно каква информация има) и грешки в търсенето (неинформативен резултат от Wikipedia проваля последващата верига от разсъждения). Те са качествено различни и изискват различни смекчаващи мерки.
  • Самият формат е интерпретируем: човек може да прочете следата от мисли (Thought trace), да открие грешката и да я коригира чрез редактиране на един единствен ред. Това изрично е посочено като свойство за безопасност.
  • Фината настройка (fine-tuning) на по-малки модели върху ReAct траектории им позволява да превъзхождат по-големи модели, задвижвани чрез подтикване — което предполага, че преплетеният формат е научим, а не просто трик при подтикването.

Кое остава в сила и кое не

Резултатите за интерактивно вземане на решения (ALFWorld, WebShop) са най-силната част на документа. Разликата спрямо чистото обучение чрез имитация е достатъчно голяма, за да бъде трудно да се припише на късмет с хиперпараметрите. Следите от разсъждения са наистина четими, а анализът на грешките, разграничаващ провалите при търсене от провалите при разсъждение, е честен и полезен.

Резултатите от QA с интензивно използване на знания са по-слаби и авторите го знаят. Загубата на ReAct спрямо CoT при HotpotQA е важен показател: когато отговорът може да бъде достигнат чрез свързване на вътрешните знания на модела, триенето при извикването на инструменти всъщност вреди. Моделът понякога извлича пасаж от Wikipedia, който е само косвено свързан, закотвя се за него и след това произвежда по-лоши разсъждения, отколкото ако беше останал само с вътрешните си знания. Документът нарича това „разсейване, породено от търсенето“ (search-induced distraction) и то не се коригира от архитектурата — това е проблем с качеството на извличане, представен като проблем на агента.

Съществува и фундаментален проблем с оценката, който трудът наследява от самите бенчмаркове: и ALFWorld, и WebShop имат сравнително ограничени пространства за действие в сравнение с това, от което се нуждае един агент в реалния свят. Подобрението от 34% при ALFWorld е впечатляващо в рамките на играта, но ALFWorld е симулирана домакинска среда с малък фиксиран речник от действия. Обобщаването от това към, да речем, Beancount леджър с отворена схема на транзакции изисква екстраполация, която трудът не оправдава.

Настройката с малко примери (few-shot) е едновременно силна и слаба страна. Един или два примера в контекста са впечатляващи, но това също така означава, че резултатите са силно чувствителни към това кои примери са избрани. Не открих в документа аблации (ablations) по отношение на избора на примери, което би било полезно.

Защо това е важно за ИИ във финансите

Проблемът с безопасността при обратно записване за автономни Beancount агенти е точно режимът на провал, който ReAct осветява. Ако един агент разсъждава върху решение за категоризация на транзакция и извлече двусмислен запис в леджъра — такъв, който би могъл да се отнесе както към Expenses:Food, така и към Expenses:Entertainment — моделът ReAct ще закотви последващите разсъждения към която и да е интерпретация, предложена от първия извлечен запис. Това е финансовият аналог на „разсейването, породено от търсенето“, и то не изчезва чрез по-внимателно подтикване.

Аргументът за интерпретируемост тук е по-важен, отколкото авторите вероятно са предполагали. В счетоводството одиторът не се нуждае само от правилния отговор — той се нуждае от проследима верига от разсъждения, която може да одобри. Следите от мисли (Thought traces) на ReAct ви дават тази верига, а наблюдението, че човек може да коригира траекторията чрез редактиране на една мисъл, е директно приложимо към стъпка за преглед от човек (human-in-the-loop), преди който и да е запис в журнала да бъде потвърден в леджъра.

Видът грешка, който ме вълнува най-много обаче, са натрупващите се грешки при задачи с дълъг хоризонт. Задача за равняване, докосваща петдесет транзакции, има много повече възможности една мисъл да се обърка, отколкото еднократно търсене в Wikipedia. ReAct не предоставя вграден механизъм за агента да открие, че се е отклонил — той просто продължава. Reflexion (Shinn et al., arXiv:2303.11366) адресира това, като добавя стъпка на вербална самооценка, и ReAct + Reflexion решава 130 от 134 задачи в ALFWorld в сравнение с чистото ReAct. Тази разлика показва колко голяма стойност има добавянето на цикъл за възстановяване върху базовата структура на ReAct.

Какво да прочетете след това

  • Reflexion: Language Agents with Verbal Reinforcement Learning (Shinn et al., 2023, arXiv:2303.11366) — добавя стъпка на саморефлексия, която позволява на ReAct агента да преразгледа стратегията си в различни епизоди; най-директното разширение за леджър агенти, които трябва да се възстановяват от грешки по средата на траекторията.
  • FireAct: Toward Language Agent Fine-tuning (Chen et al., 2023, arXiv:2310.05915) — фино настройва модели специално върху ReAct траектории с множество инструменти; подходящо за обучение на специфичен за Beancount агент върху реални извиквания на инструменти за леджъри.
  • Tree of Thoughts: Deliberate Problem Solving with Large Language Models (Yao et al., 2023, arXiv:2305.10601) — изследва търсенето през различни пътища на разсъждение, вместо придържането към една верига; важно за случаи, в които първата траектория на ReAct е грешна и изисква систематично връщане назад (backtracking).