Статьи
Хватит скармливать SOP напрямую AI Agent: точное управление поведением Agent через RFC 2119 (MUST/SHOULD/MAY)
Если засунуть человеческий SOP прямо в LLM, Agent часто один раз отрабатывает верно, а три раза проваливается. В статье показано, как переписать System Prompt и Agent Skill с помощью MUST, SHOULD и MAY из RFC 2119, чётко разделить жёсткие ограничения, настоятельные рекомендации и свободу усмотрения, а также приведены три принципа внедрения.
· 1 мин чтения
Во многих командах при внедрении Agent чаще всего наступают на одни и те же грабли: скармливают LLM целиком «человеческий SOP» из Word/Notion и ждут, что тот всё сделает сам. Результат обычно похож на лотерею: один раз всё верно, три раза провал.
Проблема не в недостатке возможностей модели, а в том, что человеческий SOP содержит множество неявных знаний (Tacit Knowledge). Человеческий мозг сам понимает: «при сумме меньше 500 юаней согласование не нужно», «если на этом шаге появилась ошибка, её можно пока пропустить»; но для LLM неструктурированный текст не имеет границ силы, и ей остаётся только импровизировать.
Чтобы поведение Agent стало детерминированным, первым шагом должна быть не замена на более крупную модель, а внедрение классического стандарта из спецификаций сетевых протоколов: градации семантики RFC 2119.
Сначала вывод: помечайте как MUST только требования комплаенса, безопасности и ключевой Schema, остальные границы отдайте SHOULD и MAY, а узлы с высоким риском передайте на ручную проверку.
Почему именно RFC 2119?#
При написании System Prompt, Agent Skill или Workflow Rule расплывчатые «обратите внимание», «желательно», «по возможности» не накладывают на модель никаких границ. Явная иерархия глаголов принудительно проводит границы принятия решений.
MUST / REQUIRED: жёсткое ограничение, никаких компромиссов#
- Семантика: ни в коем случае нельзя пропускать, исключений нет.
- Где применяется: проверка данных, проверки безопасности, требования к выходной Schema, перехват высокорисковых случаев.
- Пример: «Перед вызовом API счетов
MUST сначала проверить, существует ли номер сотрудника; если ответ пуст, MUST немедленно прервать выполнение».
SHOULD / RECOMMENDED: настоятельная рекомендация, но допустимо обоснованное отклонение#
- Семантика: следовать нужно, если нет очень веских причин из контекста; при отклонении Agent обязан изложить обоснование.
- Где применяется: выбор алгоритмической стратегии, предпочтения классификации, логика повторных попыток.
- Пример: «Тикеты с консультациями клиентов
SHOULD в первую очередь назначать на первую линию поддержки; но если речь о спорах по платежам, допускается переназначение финансовой группе проверки».
MAY / OPTIONAL: на выбор, полное усмотрение#
- Семантика: модель сама решает, выполнять ли это, исходя из ресурсов текущего контекста или бюджета токенов.
- Где применяется: дополнительные пояснения, предложения для дальнейших размышлений, необязательный формат логов.
- Пример: «При создании сводки обработки
MAY приложить 1–2 ID исторических тикетов по похожим случаям».
Три принципа внедрения#
1. Откажитесь от текста, сплошь состоящего из MUST, оставьте место для Reasoning#
Если все правила записать как MUST, LLM используется как Deterministic Compiler, что легко приводит к конфликтам правил или логической взаимоблокировке при раздувании Context. Помечайте как MUST только «комплаенс, безопасность, ключевую Schema», остальные границы отдайте SHOULD.
2. Используйте структурированные блоки Markdown#
Разбейте Prompt на следующие четыре блока, чтобы область действия (Scope) силы семантики была видна сразу:
## Parameters
## Constraints (RFC 2119)
## Execution Steps
## Error Handling
3. Привяжите высокорисковые узлы к Human-in-the-loop#
Когда срабатывает граница ключевого MUST (например, сумма одной операции > $5,000, изменение прав Admin), единственное MUST-поведение Agent — «приостановить конвейер и ждать, пока человек при проверке нажмёт OK», а не принимать решение за человека.
Вывод: от демо-игрушки к Production-Ready#
Относитесь к Agent как к промышленной производственной линии, а не как к единому всемогущему «мастеру на все руки». Задав поведенческий контракт через RFC 2119, ваш Agent сможет по-настоящему перейти от демо-игрушки к уровню Production-Ready.