Перейти до основного вмісту

ReAct: Синергія міркування та дії в мовних моделях

· 6 хв. читання
Mike Thrift
Mike Thrift
Marketing Manager

ReAct (Yao та ін., ICLR 2023) — це стаття, що стоїть за циклом «міркування-дія», який більшість сучасних фінансових агентів тепер використовують як стандартну структуру. Я відкладав її, бо вона здавалася просто інфраструктурою — чимось, що вже всі знають — але після того, як я провів час з автономним записом у реєстри, я захотів зрозуміти режими помилок у самому джерелі, а не з переказів.

Стаття

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

Шун’ю Яо, Джеффрі Чжао, Діан Ю, Нань Ду, Іцхак Шафран, Картік Нарасімхан та Юань Цао пропонують оманливо просту ідею: замість того, щоб просити мовну модель або міркувати (ланцюжок думок), або діяти (викликати інструменти), дозвольте їй робити і те, і інше в переплетеному потоці. Кожен крок у траєкторії — це або Thought (міркування у вільній формі про те, що робити далі), або пара Act/Obs (дія та її спостереження з середовища). Стверджується, що таке переплетення є синергічним — міркування визначають, які дії вживати, а спостереження змінюють міркування.

Вони тестують це на чотирьох тестах: HotpotQA та Fever (QA з інтенсивним використанням знань та перевірка фактів з використанням API пошуку у Вікіпедії як простору дій), а також ALFWorld та WebShop (втілені та симульовані середовища електронної комерції, що потребують багатоступеневого прийняття рішень). У всіх експериментах використовуються PaLM-540B та GPT-3 (text-davinci-002) з few-shot промптингом лише з одним або двома прикладами в контексті.

Ключові ідеї

  • На ALFWorld ReAct перевершує базові моделі імітаційного навчання та навчання з підкріпленням на 34 абсолютних відсоткових пункти за показником успішності завдань; на WebShop приріст становить 10 абсолютних відсоткових пунктів.
  • На Fever (перевірка фактів) ReAct перевершує ланцюжок думок. На HotpotQA (багатоходові запитання) CoT фактично перемагає ReAct — стаття прямо визнає це, а не приховує.
  • Випадки відмов поділяються на два типи: помилки міркування (модель неправильно оцінює наявну інформацію) та помилки пошуку (неінформативний результат з Вікіпедії збиває наступний ланцюжок міркувань). Вони якісно різні і потребують різних заходів пом'якшення.
  • Сам формат є інтерпретованим: людина може прочитати слід думок (Thought trace), знайти помилку та виправити її, відредагувавши один рядок. Це прямо називається властивістю безпеки.
  • Тонке налаштування менших моделей на траєкторіях ReAct дозволяє їм перевершувати великі моделі з промптами — це свідчить про те, що переплетений формат можна вивчити, а не просто використовувати як трюк із промптами.

Що підтверджується, а що ні

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

Результати QA з інтенсивним використанням знань слабші, і автори це знають. Програш ReAct перед CoT на HotpotQA — це реальний показник: коли відповіді можна досягти шляхом поєднання внутрішніх знань моделі, тертя від викликів інструментів фактично шкодить. Модель іноді отримує уривок з Вікіпедії, який є дотичним, зациклюється на ньому, а потім видає гірші міркування, ніж якби вона просто покладалася на власні знання. Стаття називає це «відволіканням через пошук» (search-induced distraction), і це не виправляється архітектурою — це проблема якості пошуку, замаскована під проблему агента.

Існує також фундаментальна проблема оцінки, яку стаття успадковує від самих бенчмарків: і ALFWorld, і WebShop мають відносно обмежені простори дій порівняно з тим, що потрібно агенту в реальному світі. Покращення на 34% в ALFWorld вражає в межах гри, але ALFWorld — це симульоване домашнє середовище з невеликим фіксованим словником дій. Узагальнення від цього до, скажімо, реєстру Beancount з відкритою схемою транзакцій потребує екстраполяції, яку стаття не обґрунтовує.

Налаштування few-shot є одночасно і сильною, і слабкою стороною. Один або два приклади в контексті — це вражаюче, але це також означає, що результати дуже чутливі до того, які саме приклади обрані. Я не знайшов у статті аналізу впливу вибору прикладів, що було б корисно.

Чому це важливо для фінансового ШІ

Проблема безпеки зворотного запису для автономних агентів Beancount — це саме той режим відмов, який висвітлює ReAct. Якщо агент міркує над рішенням про категоризацію транзакції та отримує неоднозначний запис у реєстрі — той, що може відповідати або Expenses:Food, або Expenses:Entertainment, — паттерн ReAct прив'яже подальші міркування до того трактування, яке пропонує перший отриманий запис. Це фінансовий аналог «відволікання через пошук», і це не зникає при ретельнішому промптингу.

Аргумент про інтерпретованість тут важить більше, ніж, ймовірно, планували автори. У бухгалтерському обліку аудитору потрібна не просто правильна відповідь — йому потрібен відстежуваний ланцюжок міркувань, який він може затвердити. Сліди думок ReAct дають вам цей ланцюжок, а спостереження про те, що людина може виправити траєкторію, відредагувавши одну Думку, безпосередньо застосовне до етапу перевірки людиною (human-in-the-loop) перед тим, як будь-який запис буде внесено до реєстру.

Проте режим відмов, який мене хвилює найбільше, — це накопичення помилок у довготривалих завданнях. Робота з узгодження, що стосується п'ятдесяти транзакцій, має набагато більше можливостей для помилки в Думці, ніж одноходовий пошук у Вікіпедії. ReAct не надає вбудованого механізму для того, щоб агент міг виявити, що він збився з курсу — він просто продовжує рух. Reflexion (Shinn та ін., arXiv:2303.11366) вирішує це, додаючи етап вербальної самооцінки, і зв'язка ReAct + Reflexion виконує 130 зі 134 завдань ALFWorld порівняно з голим ReAct. Ця різниця показує, наскільки цінним є додавання циклу відновлення поверх базової структури ReAct.

Що читати далі

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