Компания Anthropic представила Managed Agents — новый подход к созданию долгосрочных автономных систем на базе больших языковых моделей (LLM). Суть решения заключается в разделении компонентов агента на независимые модули: сессию, обвязку (harness) и песочницу (sandbox). Это позволяет избежать потери данных при сбоях и значительно ускорить работу.
Разработка надежных ИИ-агентов долгое время упиралась в архитектурные ограничения. Традиционно разработчики помещали саму модель, код управления ею и среду для выполнения команд в один изолированный контейнер. Такой подход казался логичным, так как упрощал взаимодействие компонентов и работу с файловой системой.
Однако на практике это приводило к серьезным проблемам. В терминологии системного администрирования такие контейнеры становились «питомцами» (pets) — уникальными, требующими ручного ухода серверами. Если контейнер зависал или падал, терялась вся история сессии (контекст агента). Отладка была практически невозможна, так как ошибка в коде управления, сетевой сбой или падение самого контейнера выглядели одинаково.
Чтобы решить эту проблему, инженеры Anthropic обратились к классическому паттерну из мира операционных систем — виртуализации абстракций. Они разделили агента на три независимые части. «Мозг» (модель Claude и ее обвязка), «руки» (песочница для выполнения кода) и «память» (журнал сессии) теперь существуют отдельно друг от друга.
Теперь обвязка вызывает контейнер-песочницу так же, как любой другой внешний инструмент. Контейнеры стали «скотом» (cattle) — взаимозаменяемыми ресурсами. Если песочница падает, обвязка просто фиксирует ошибку, передает ее модели и при необходимости мгновенно создает новую среду выполнения. Сама обвязка тоже стала отказоустойчивой: при сбое она перезапускается, считывает историю из независимого журнала сессии и продолжает работу с прерванного места.
Это архитектурное решение попутно закрыло серьезную уязвимость. Ранее сгенерированный недоверенный код выполнялся в той же среде, где хранились токены доступа. Успешная атака через внедрение промпта (prompt injection) могла привести к утечке учетных данных. Теперь ключи хранятся во внешнем защищенном хранилище, а инструменты вызываются через специальный прокси-сервер. Агент может работать с репозиториями или базами данных, физически не имея доступа к самим токенам.
Разделение компонентов также радикально улучшило производительность. Ранее запуск агента требовал полного развертывания контейнера, даже если на первых этапах песочница не требовалась. Теперь инициализация среды происходит только в момент фактического обращения к ней. Благодаря этому время до появления первого токена (TTFT) сократилось на 60% в среднем и на 90% для самых долгих запросов.
Кроме того, независимый журнал сессии решил проблему ограниченного контекстного окна. Вместо того чтобы безвозвратно удалять или сжимать старые сообщения, система сохраняет их во внешнем хранилище. Модель может в любой момент запросить нужный фрагмент истории, что делает работу над длинными задачами более предсказуемой.
Подход Anthropic демонстрирует взросление индустрии ИИ-агентов. Разработчики переходят от монолитных экспериментальных скриптов к распределенным, отказоустойчивым системам корпоративного уровня. По мере того как сами модели становятся умнее и избавляются от старых ограничений, абстрактная и модульная инфраструктура позволит легко обновлять «мозг» агента, не переписывая всю систему с нуля.