Практика инженерии ИИ-агентов: от отрицательных промптов до автоверификации и эвалов
Переход от простых чат-ботов к автономным ИИ-агентам, способным самостоятельно выполнять многошаговые бизнес-процессы, вскрыл главный системный кризис современной разработки. Надежность агента определяется не столько выбором базовой языковой модели, сколько качеством контекстной инженерии (Context Engineering) и жесткостью внешних технических ограничений. Большинство сбоев в продакшене происходит из-за наивной веры в то, что нейросеть можно полностью контролировать текстовыми инструкциями. В реальности вывод LLM всегда остается недетерминированным. Разберем практические архитектурные принципы, проверенные на более чем 5000 часов разработки коммерческих агентов.
Ограничение прав на техническом уровне
Классическая ошибка начинающих разработчиков — попытка ограничить действия агента фразами в промпте вида «ни в коем случае не отправляй рассылку клиентам без подтверждения». Реальный кейс из инженерной практики: агент, получивший доступ к инструменту отправки писем, случайно сгенерировал вызов функции и отправил нетестированный скидочный промокод на базу из 150 000 клиентов. Причина аварии заключалась не в «глюке» модели, а в том, что системе был выдан полноправный production-ключ.
Техническое правило контекстной инженерии гласит: безопасность и права доступа должны обеспечиваться на уровне API-инфраструктуры, а не системного промпта. Текстовая инструкция задает лишь желаемый сценарий поведения, тогда как внешняя среда обязан заблокировать любое несанкционированное действие.
Для реализации изолированного доступа используют механизмы рабочих пространств и ограниченных ключей. Например, при работе с платформой Anthropic ключи, созданные в рамках отдельного рабочего пространства (Claude Workspaces), имеют доступ исключительно к ресурсам этого окружения. Ключи для тестирования не должны иметь технических прав на запись в основную базу данных или отправку внешних уведомлений.
Пошаговый чек-лист развертывания безопасного агента
Чтобы исключить риски неконтролируемых действий агентов в рабочей среде, рекомендуется выполнять следующий регламент настройки:
- Инвентаризация инструментов: Составьте исчерпывающий список действий (tool calls), требующихся агенту для выполнения конкретной задачи. Удалите все неиспользуемые функции.
- Создание изолированных credentials: Выпустите API-ключи с минимально необходимыми правами (read-only для базовых баз данных, ограниченные вебхуки).
- Настройка списков разрешений (allow-lists): Зафиксируйте в коде обвязки разрешенные домены, адреса получателей писем и диапазоны параметров.
- Настройка физических лимитов: Ограничьте максимальное число вызовов инструментов за один сеанс (например, не более 5 вызовов API за запуск) и предельную стоимость токенов.
- Внедрение sandbox-среды: Для всех изменяющих операций (отправка писем, изменение балансов, удаление файлов) агент должен работать с тестовым контуром до получения явного одобрения человека.
Автоматическая верификация результатов и петли автопроверки
Агенты склонны уверенно рапортовать об успешном выполнении задачи даже тогда, когда итоговый артефакт содержит критические ошибки. Надежная архитектура требует внедрения замкнутого цикла автоматической верификации (Auto-verification loop). Модель не имеет права завершить работу, пока независимый скрипт проверки не подтвердит корректность результата.
При разработке веб-агентов верификационная петля включает в себя следующие этапы:
- Захват скриншотов: После выполнения действий в браузерном эмуляторе агент делает снимки экрана на мобильных и десктопных разрешениях.
- Проверка DOM и интерфейса: Скрипт анализирует верстку, проверяет наличие требуемых элементов и отсутствие ошибок в консоли браузера.
- Клик-тесты и прохождение форм: Автоматический прогон проверяет, что созданная форма реагирует на нажатия и отправляет данные.
- Сквозная проверка вебхуков: Система перехватывает исходящий HTTP-запрос и убеждается, что финальный payload доставлен на тестовый эндпоинт в нужном JSON-формате.
Только после того, как все верификационные тесты пройдены успешно, агент формирует финальный отчет для пользователя. Если верификатор обнаруживает ошибку, агент получает логи ошибки и делает повторную попытку исправления в рамках выделенного лимита итераций.
Построение системы эвалов и золотые датасеты
Один из главных вызовов в эксплуатации агентов — предотвращение регрессий. При обновлении базовой языковой модели или изменении системного промпта агент может улучшить качество в одном сценарии, но сломаться в трех других.
Решением является построение собственной системы автоматической оценки — эвалов (Evals), как рекомендует официальное руководство OpenAI по созданию агентов. На первом этапе создается «золотой датасет» (golden dataset) — набор из нескольких сотен (в идеале около 500) реальных пользовательских запросов с эталонными, проверенными человеком ответами и цепочками вызова инструментов.
В золотом датасете должны присутствовать не только стандартные успешные кейсы, но и пограничные (edge cases) и аварийные сценарии:
- Пустые или некорректно сформулированные входы;
- Попытки внедрения вредоносных инструкций (prompt injection);
- Запросы данных, к которым у агента нет прав доступа;
- Задачи, требующие корректного отказа от выполнения.
Перед деплоем новой версии промпта или миграцией на другую модель автоматический стенд прогоняет весь золотой датасет, сравнивает результаты с зафиксированной базовой линией (baseline) и выдает отчет по точности, задержке и расходу токенов.
Динамическая маршрутизация моделей
Для оптимизации себестоимости и скорости работы агента применяется паттерн Model Routing (маршрутизация моделей). Разные шаги комплексного агента требуют разного уровня когнитивных способностей.
Выполнение задачи разделяется на этапы:
- Черновые и массовые операции: Первичная классификация входящих обращений, извлечение структурированного текста из документов, фильтрация спама и подготовка предварительных ответов передаются легким и дешёвым моделям.
- Критический анализ и принятие решений: Финальная проверка логики, разрешение неоднозначностей, формирование исполнительного кода и стратегическое планирование выполняются флагманскими нейросетями.
Такая каскадная схема позволяет снизить суммарные расходы на API в 3–5 раз без потери качества финального продукта. При этом архитектура маршрутизатора обязательно содержит правила автоматического переключения на резервную модель (fallback) в случае сбоя или превышения таймаута первичного провайдера.
Практические выводы для внедрения
Инженерия ИИ-агентов — это дисциплина создания жестких каркасов вокруг гибких нейросетевых моделей. Качественный агент строится на фундаменте наименьших привилегий, автоматического контроля артефактов и регулярного тестирования на эталонных датасетах. Только такое сочетание позволяет перевести ИИ из категории демонстрационных прототипов в категорию отказоустойчивых бизнес-систем.

