Материал подготовлен автоматически по первоисточникам: ссылки на них — в конце статьи.
Агентам предложили единый слой, который выбирает подходящие инструменты, учитывает их сбои и переключается между API, командной строкой и GUI. В нерецензированном препринте группы из The University of Hong Kong, где все числа получили сами авторы, AnyAct выполнил 77,27% задач OSMCP за 50 шагов — вдвое меньше, чем требовалось большинству соперников. Для продуктовой архитектуры это означает, что каталог инструментов можно вынести из системного промпта в отдельный компонент с поиском, историей надёжности и запасными действиями.
Как AnyAct сокращает пространство действий
Если передать модели описания всех доступных API, они займут значительную часть контекстного окна и усложнят выбор. AnyAct вместо полного каталога собирает отдельный набор действий под каждую задачу, а низкоуровневые операции через GUI и командную строку держит доступными постоянно.
Поиск идёт по иерархии каталога. Сначала модель видит краткие описания серверов и названия инструментов, определяет нужные возможности и отбирает подходящие серверы. Затем система ищет внутри них по словам и смысловой близости, а полные схемы параметров загружает только для финальных кандидатов.
Такой подход отделяет планирование от размера каталога. Модели не нужно разбирать каждую спецификацию, чтобы понять, нужен ли ей сервер для работы с документами, браузером или электронной почтой. При этом поиск выполняется при запуске задачи, а не перед каждым действием.
Масштаб проверяли на LiveMCPBench: в нём собраны 70 MCP-серверов, 527 инструментов и 95 практических задач из шести областей. Второй стенд, OSMCP, расширяет OSWorld семантическими действиями через MCP и проверяет совместную работу API с операциями в интерфейсе.
Как агент отбрасывает сломанные инструменты
Одного поиска недостаточно: подходящий по описанию API может перестать отвечать, изменить схему или возвращать ошибку. AnyAct хранит для каждого действия оценку надёжности, которую пересчитывает по недавним успешным вызовам и серии последовательных сбоев.
Новый инструмент сначала не штрафуют, чтобы накопить историю. Затем стабильные действия сохраняют высокий приоритет, а часто падающие опускаются в выдаче. Нижняя граница оценки не позволяет исключить инструмент навсегда: если он снова заработает, его позиция может восстановиться.
На LiveMCPBench поиск duckduckgo_web_search не выполнил ни одного из 38 вызовов из-за ограничения частоты запросов. После обновления оценки система опустила его на 18-е место при лимите в 15 кандидатов и решила следующую новостную задачу через другие источники без неудачных вызовов.
Этот механизм отслеживает технический статус вызова, а не успех всей пользовательской задачи. Поэтому у него есть издержка: нестабильный, но незаменимый инструмент может опуститься в выдаче, после чего агент потеряет единственный рабочий путь. Низкоуровневые действия смягчают эту проблему, но не гарантируют, что задачу удастся воспроизвести через интерфейс.
Ответы разных инструментов AnyAct приводит к общему текстовому представлению. Структурированные данные разворачиваются в компактные записи, длинный вывод команд сокращается, а модель для изображений извлекает со снимков экрана текст, таблицы, пути к файлам и идентификаторы элементов. Агент может взять значение из API, подставить его в действие через GUI, а затем проверить результат по новому снимку экрана.
Когда отдельный слой действий стоит заложить в архитектуру
Работа меняет планы команд, у которых каталог инструментов уже не помещается в один промпт или меняется независимо от агента. В такой системе стоит разделить реестр возможностей, поиск действий и политику их выполнения. Тогда добавление нового MCP-сервера не требует переписывать основной сценарий агента.
Практический шаблон состоит из нескольких частей: иерархического каталога с краткими метаданными, загрузки полных схем только после отбора, журнала успешных и неудачных вызовов, а также постоянного запасного пути через GUI или командную строку. Отдельно нужен слой, который приводит снимки экрана, текст и ответы API к одному формату для дальнейшего планирования.
AnyAct не ремонтирует API и не обучает модель заново. Его «самообновление» означает, что система меняет порядок доступных действий по накопленной истории и замечает изменения спецификаций. Для продукта это скорее диспетчер инструментов с автоматическим выключателем сбоев, чем автономная система развития агента.
Проверка охватывает эталонные задачи LiveMCPBench и OSMCP, причём OSMCP создан той же группой. Результаты подтверждают сам архитектурный приём — сочетать короткие семантические действия с универсальным низкоуровневым запасным путём, — но не заменяют испытания на собственных API, интерфейсах и характерных сбоях продукта.
Источники
Похоже на вашу задачу?
Расскажите, что собираете. За полчаса разложим на этапы и назовём сроки — это бесплатно и ни к чему не обязывает.



