StateAct: ИИ-агенты научились работать с кодом вместо скриншотов, дешевле в 9 раз

StateAct: ИИ-агенты научились работать с кодом вместо скриншотов, дешевле в 9 раз

Компьютерные ИИ-агенты обычно улучшают через восприятие: учат модель лучше читать скриншот экрана и точнее выбирать, куда кликнуть. Но скриншот - это лишь урезанная, «сплющенная» проекция реального состояния программы: файлов, бэкендов приложений, структуры DOM-страницы, в которых на самом деле хранятся данные задачи. Разные состояния программы могут давать на экране одинаковую картинку, тогда как код способен напрямую проверять и изменять это состояние. StateAct - мультиагентный код-first фреймворк для компьютерных агентов, построенный на этом различии. Основной агент работает не со скриншотами, а напрямую с состоянием программы через код; отдельный GUI-субагент подключается только тогда, когда без клика по экрану не обойтись, - таких подзадач оказалось всего 28 из 108, а на уровне отдельных шагов основного агента это лишь 1,1%. Тот же прямой доступ к состоянию программы используется и для проверки результата: независимый «финишный шлюз» перепроверяет сохранённый итог на структурные ошибки - файл не сохранён, потерян или записан не в ту папку. Чтобы не терять курс на протяжении сотен шагов, основной агент делегирует подзадачи «свежим» субагентам, сохраняя собственный контекст сфокусированным. На бенчмарке OSWorld 2.0 StateAct поднял результат модели Claude Opus 4.8 с 20,6% до 26,9% по метрике полного (бинарного) успеха и с 54,8% до 61,6% по метрике частичного успеха - при этом стоимость выполнения одной задачи снизилась примерно в 9 раз по сравнению с той же моделью, работающей только по скриншотам. Вариант без GUI-субагента, полностью на коде, показывает лишь 45,9% частичного успеха - хуже базового варианта на скриншотах (54,8%), то есть полностью отказаться от визуального взаимодействия с экраном пока нельзя. Авторы называют подход «state-grounding» (опора на состояние программы) и утверждают, что он смещает главное узкое место агентов с восприятия на рассуждение: ошибки теперь чаще зависят от того, что агент «думает», а не от того, что он «видит» на экране.

Ключевые факты

  • StateAct - код-first мультиагентный фреймворк: основной агент работает с состоянием программы через код, а GUI-субагент подключается лишь для 28 из 108 задач, а на уровне отдельных шагов основного агента - это лишь 1,1%.
  • На бенчмарке OSWorld 2.0 StateAct поднял результат Claude Opus 4.8 с 20,6% до 26,9% по полному успеху и с 54,8% до 61,6% по частичному успеху.
  • Стоимость выполнения задачи при этом снизилась примерно в 9 раз по сравнению с тем же агентом, работающим только по скриншотам.
  • Вариант без GUI-субагента (только код) даёт лишь 45,9% частичного успеха - хуже скриншотного базового варианта (54,8%): визуальное взаимодействие полностью убрать не удалось.
  • Отдельный «финишный шлюз» проверяет сохранённый результат на структурные ошибки - файл не сохранён, потерян или записан не туда.

Почему это важно

Большинство компьютерных ИИ-агентов сегодня «видят» экран так же, как человек, - через скриншот, - и ошибаются именно на этом шаге: скриншот теряет часть информации о реальном состоянии программы, а разные состояния иногда выглядят на экране одинаково. StateAct показывает, что если дать агенту прямой доступ к самому состоянию - файлам, данным приложения, структуре страницы, - точность выполнения длинных многошаговых задач растёт, а стоимость запуска падает в разы. Это смещает фокус разработки агентов с «улучшения зрения» модели на улучшение её рассуждений.

Кому это важно

Разработчикам агентных ИИ-систем и автоматизации компьютерных задач (аналоги RPA на базе LLM), компаниям, которые встраивают ИИ-агентов в реальные рабочие процессы с приложениями и файлами, а также исследователям, которые оценивают агентов на бенчмарках вроде OSWorld - для них результат означает конкретный архитектурный приём, а не абстрактную идею.

Как это применить

Архитектура StateAct устроена как разделение труда: основной агент выполняет задачу, оперируя кодом и напрямую обращаясь к состоянию программы (файлам, бэкенду, DOM), а не к картинке экрана; GUI-субагент вызывается отдельно только на тех немногих шагах, где без клика мышью не обойтись. Крупная задача разбивается на подзадачи, каждая из которых передаётся «свежему» субагенту с чистым контекстом, чтобы основной агент не перегружался деталями на протяжении сотен шагов. Финальный результат дополнительно проверяет независимый «финишный шлюз» на структурные ошибки сохранения.

Можно ли доверять

Результаты получены на признанном компьютерном агентном бенчмарке OSWorld 2.0 с конкретными числовыми показателями (точность, стоимость) для конкретной модели - Claude Opus 4.8, что делает заявления проверяемыми в принципе. Вместе с тем это единичная научная работа, независимого воспроизведения результатов в тексте не упоминается, и оценка касается одного бенчмарка и одной базовой модели - обобщение на другие задачи и модели пока не подтверждено.

Риски и подводные камни

Подход всё ещё не отказывается от GUI-взаимодействия полностью: чисто кодовый вариант без GUI-субагента заметно проигрывает даже обычному скриншотному агенту (45,9% против 54,8% частичного успеха), то есть прямой доступ к состоянию программы не заменяет визуальное взаимодействие целиком. Кроме того, метод предполагает, что агенту вообще доступно машиночитаемое состояние приложения (файлы, API, DOM) - для многих реальных программ такой доступ ограничен или отсутствует, что может сузить применимость подхода за пределами тестовой среды OSWorld.

«State-grounding смещает главное узкое место агентов с восприятия на рассуждение: ошибки теперь чаще зависят от того, что агент думает, а не от того, что он видит.»

— исследователи, представившие StateAct