Архитектура AI-агентов: два подхода к интеграции с песочницами
Разбор двух основных паттернов подключения AI-агентов к изолированным средам исполнения кода: запуск агента внутри контейнера или использование песочницы как внешнего инструмента.

Суть
С развитием автономных AI-агентов, способных писать и выполнять код, критически важным становится вопрос безопасности и изоляции. Агентам необходимо рабочее пространство — компьютер, где они могут устанавливать пакеты, работать с файлами и запускать скрипты, не подвергая риску основную систему.
В индустрии сформировались два основных архитектурных паттерна интеграции агентов с такими изолированными средами (песочницами): размещение агента непосредственно внутри песочницы или использование песочницы как внешнего инструмента. Выбор между этими подходами определяет не только удобство разработки, но и безопасность конечного решения.
Контекст
Песочницы (sandboxes) — это изолированные среды, такие как Docker-контейнеры или виртуальные машины, которые создают границу между действиями агента и хост-системой. Это стандарт безопасности: если агент выполнит вредоносный код, пострадает только временный контейнер, а не сервер компании или компьютер разработчика.
Однако вопрос не в том, использовать ли песочницы, а в том, как именно связать логику агента (его «мозг», работающий с LLM) и среду исполнения (его «руки»). Долгое время разработчики решали эту задачу ситуативно, но теперь, с появлением специализированных инструментов вроде E2B, Runloop или функционала в LangChain, оформились четкие стандарты.
Детали: Два паттерна архитектуры
Паттерн 1: Агент ВНУТРИ песочницы (Agent IN Sandbox)
В этом сценарии весь код агента упаковывается в образ (например, Docker) и запускается внутри изолированной среды. Взаимодействие с ним происходит по сети.
- Как это работает: Вы создаете образ с предустановленным фреймворком агента. Агент запускается внутри и открывает API (HTTP или WebSocket) для получения команд извне.
- Преимущества: Полное соответствие локальной разработке. Агент имеет прямой доступ к файловой системе и может менять свое окружение «на лету». Это удобно, когда логика агента тесно связана с состоянием среды.
- Недостатки: Главный риск — безопасность. API-ключи для доступа к LLM приходится хранить внутри песочницы. Если изоляция будет нарушена (например, через prompt injection), ключи могут быть скомпрометированы. Кроме того, обновление логики агента требует пересборки всего образа.
Паттерн 2: Песочница как инструмент (Sandbox as Tool)
Здесь агент работает на вашем сервере или локальной машине, а песочница подключается как удаленный сервис исключительно для выполнения кода.
- Как это работает: Агент генерирует код и отправляет его через API провайдеру песочницы (например, E2B или Modal). Код выполняется, результат возвращается агенту.
- Преимущества: Чистое разделение ответственности. Логика агента, память и история диалогов отделены от среды исполнения. API-ключи остаются в безопасности на вашем сервере. Обновлять код агента можно мгновенно, без пересборки контейнеров.
- Недостатки: Сетевая задержка. Каждое выполнение кода требует отправки запроса через сеть, что может замедлить работу при большом количестве мелких операций.
Анализ
Выбор паттерна зависит от приоритетов проекта. Паттерн «Агент внутри» подходит для сложных сценариев, где требуется глубокая интеграция с окружением и минимизация задержек. Однако он накладывает серьезные требования к инфраструктуре безопасности.
Паттерн «Песочница как инструмент» становится стандартом для большинства коммерческих приложений. Он безопаснее (ключи не покидают периметр) и гибче. Разделение «мозга» и «рук» позволяет масштабировать их независимо: например, запускать логику агента на дешевых CPU-серверах, а для выполнения тяжелых вычислений подключать песочницы с GPU.
Перспектива
Мы наблюдаем тенденцию к переходу на второй паттерн («Песочница как инструмент»). Это связано с ростом требований к безопасности корпоративных данных. Провайдеры инфраструктуры для агентов начинают предлагать более продвинутые функции управления сессиями, чтобы нивелировать проблему сетевых задержек.
В будущем вероятно появление гибридных решений, где критически важные операции выполняются локально, а потенциально опасный код автоматически изолируется в удаленных средах без явного участия разработчика.
TL;DR
Главное
Безопасное выполнение кода агентами требует выбора между запуском агента внутри контейнера (быстро, но рискованно) и использованием внешней песочницы (безопасно, но с задержками).
Ключевые факты
- /Паттерн 'Агент внутри' требует хранения API-ключей в уязвимой среде.
- /Паттерн 'Песочница как инструмент' позволяет обновлять логику без пересборки контейнеров.
- /Разделение среды исполнения и логики агента упрощает масштабирование ресурсов.
Инсайт
Безопасность агента часто зависит не от качества кода, а от того, где лежат ключи доступа: вынос исполнения кода во внешнюю среду (Паттерн 2) фактически убирает риск утечки ключей при взломе песочницы.



