Guardrails для AI-агентов: как удержать модель в рамках
Автономный агент, который сам вызывает API и пишет в базу, ошибается дороже чат-бота. Разбираем, какими инструментами ограничивают его поведение — от NeMo Guardrails до Llama Guard — и где у каждого предел.

Как только языковая модель перестаёт просто отвечать в чате и начинает действовать — вызывать функции, ходить в API, писать в базу, отправлять письма — цена ошибки меняется. Галлюцинация в чате раздражает. Галлюцинация в агенте, у которого есть доступ к платёжному эндпоинту, стоит денег. Поэтому вокруг агентов вырос отдельный слой инструментов — guardrails, то есть ограничители, которые проверяют, что модель получает на вход и что выдаёт на выход, и блокируют то, что выходит за рамки.
Единого стандарта тут нет. Есть открытые фреймворки от NVIDIA и сообщества, есть модели-классификаторы от Meta*, есть управляемые сервисы у облаков. Ниже — что они реально делают, чем отличаются и в каком сценарии какой подход оправдан.
Что вообще ограничивают
Слово guardrails объединяет несколько разных задач, и путаница начинается с того, что их валят в одну кучу. На практике их как минимум четыре.
- Фильтрация контента — не пропустить на вход или выход токсичность, разжигание, инструкции по оружию, персональные данные.
- Защита от prompt injection** — отсечь попытки перехватить инструкции модели через пользовательский ввод или через содержимое веб-страницы, которую агент прочитал.
- Структурная валидация — гарантировать, что ответ соответствует схеме: валидный JSON, значение из допустимого списка, число в диапазоне.
- Ограничение действий — не дать агенту вызвать инструмент, который ему не разрешён в текущем контексте, или потребовать подтверждение человека перед необратимой операцией.
Ни один инструмент не закрывает все четыре одинаково хорошо. Классификатор токсичности бесполезен против инъекции, а валидатор JSON-схемы ничего не знает про содержание.
Основные инструменты
NeMo Guardrails (NVIDIA)
Открытый фреймворк с собственным языком описания диалоговых сценариев — Colang. Вы задаёте разрешённые и запрещённые темы, потоки разговора, проверки на входе и выходе. Сильная сторона — контроль диалога и возможность строить «рельсы» поведения, а не только фильтры. Плата — за обучение синтаксису и за дополнительную задержку: каждая проверка это ещё один вызов модели или классификатора.
Guardrails AI
Открытая библиотека (пакет guardrails-ai) вокруг идеи валидаторов: вы навешиваете на выход модели набор проверок — от формата до наличия PII — и указываете, что делать при нарушении: перезапросить, исправить, отклонить. У проекта есть хаб готовых валидаторов. Ближе всего к задаче «получить структурно корректный и безопасный ответ», слабее в управлении длинным диалогом.
Llama Guard (Meta*)
Это не фреймворк, а отдельная открытая модель-классификатор, которую ставят перед и после основной LLM. Она размечает сообщения по категориям риска. Актуальное на сегодня поколение — Llama Guard 3. Плюс — работает с любой моделью и разворачивается локально. Минус — это про классификацию контента, а не про валидацию структуры или контроль вызова инструментов.
Управляемые сервисы облаков
Amazon Bedrock Guardrails и Azure AI Content Safety (с компонентом Prompt Shields против инъекций) встроены в свои платформы. Вы не разворачиваете ничего сами — включаете политику и платите за использование. Удобно, если вы уже внутри экосистемы, и неудобно, если хотите переносимость между провайдерами. Тарификация у обоих — по объёму проверенного текста; актуальные цены смотрите на страницах Bedrock и Azure, они пересматриваются.
Moderation API от OpenAI
Отдельный эндпоинт модерации, который OpenAI предоставляет бесплатно для своих ключей. Он классифицирует текст (и изображения) по категориям вреда. Это самая узкая, но самая простая точка входа: одна проверка на явно недопустимый контент. Против инъекций и для валидации структуры не предназначен.
Сравнение
| Инструмент | Тип | Что закрывает лучше | Доступность |
|---|---|---|---|
| NeMo Guardrails | Открытый фреймворк | Контроль диалога, темы, потоки | Бесплатно, self-hosted |
| Guardrails AI | Открытая библиотека | Валидация структуры, PII, формат | Бесплатно, self-hosted |
| Llama Guard 3 | Модель-классификатор | Фильтрация контента вход/выход | Открытые веса |
| Bedrock / Azure | Управляемый сервис | Контент + защита от инъекций | Платно, по объёму |
| OpenAI Moderation | API | Быстрая модерация контента | Бесплатно для ключей OpenAI |
Guardrails снижают вероятность нежелательного действия, но не сводят её к нулю. Любой фильтр — это классификатор, а классификатор ошибается в обе стороны: пропускает вредное и режет безобидное.
Цена вопроса: задержка и ложные срабатывания
За безопасность платят двумя валютами. Первая — латентность. Каждая проверка на входе и выходе добавляет время ответа; если проверок несколько и часть из них — отдельные вызовы модели, агент ощутимо замедляется. Вторая — ложные срабатывания. Слишком строгий фильтр начинает блокировать нормальные запросы, и пользователи учатся его обходить или уходят.
Отдельная ловушка — иллюзия защиты. Guardrails на уровне текста не заменяют ограничения прав на уровне инфраструктуры. Если агент технически может удалить прод-базу, никакой классификатор не гарантирует, что он этого не сделает. Права доступа, права токенов и обязательное подтверждение человека для необратимых операций — это не guardrails в смысле фреймворка, но именно они держат реальный периметр.
Кому это пригодится, а кому нет
Пригодится:
- Публичному чат-боту или агенту поддержки, куда пишут случайные пользователи — там неизбежны и токсичность, и попытки инъекций.
- Агенту с доступом к инструментам, которые тратят деньги или меняют данные — тут нужен и структурный контроль, и подтверждение действий.
- Продуктам в регулируемых сферах (финансы, медицина, дети), где фильтрация контента — требование, а не опция.
Скорее избыточно:
- Внутреннему инструменту для нескольких доверенных сотрудников без доступа к критичным операциям — здесь достаточно прав доступа и логирования.
- Оффлайн-обработке текста, где нет пользовательского ввода в реальном времени и нет вызова внешних действий.
- Прототипу на выходные, который никогда не увидит внешний трафик, — guardrails добавят сложности раньше, чем принесут пользу.
С чего начать
- Опишите, что именно недопустимо в вашем сценарии, — без этого любой фильтр настраивается вслепую.
- Разделите задачи: контент, инъекции, структура, действия. Под каждую подбирайте свой инструмент.
- Начните с минимального слоя (модерация контента + валидация формата) и добавляйте остальное по мере роста трафика.
- Ограничьте права агента на уровне инфраструктуры отдельно от текстовых фильтров.
- Логируйте срабатывания и регулярно смотрите на ложные — они портят продукт тише, чем пропущенные нарушения.
* Meta Platforms признана в России экстремистской организацией и запрещена; речь идёт об открытых моделях компании.
** Prompt injection — атака, при которой во вход модели подмешиваются инструкции, заставляющие её игнорировать исходные правила: например, текст на веб-странице, которую агент прочитал, командует ему «забыть предыдущие указания».
Prompt-инженер: Идеальные запросы для Midjourney, ChatGPT и других моделей.
Спросить за 15 ₽Источники: NVIDIA NeMo Guardrails — документация, Guardrails AI — документация проекта
Частые вопросы
Guardrails — это отдельная модель или библиотека кода?
Заменяют ли guardrails ограничение прав доступа?
Сильно ли guardrails замедляют агента?
Можно ли полностью защититься от prompt injection?
Что выбрать, если бюджет нулевой?
Материал носит информационный характер и подготовлен редакцией «Агентуры». Он не является офертой, рекламой или индивидуальной консультацией. Упомянутые продукты, компании и торговые знаки принадлежат их правообладателям. Перед принятием решений, влекущих юридические или финансовые последствия, обратитесь к профильному специалисту.