記事
人間向けのSOPをそのままAI Agentに渡すな:RFC 2119(MUST/SHOULD/MAY)でAgentの振る舞いを精密制御する
人間用のSOPをそのままLLMに投げ込んでも、Agentは1回成功して3回盛大にやらかすのが関の山です。本記事では、RFC 2119のMUST、SHOULD、MAYを使ってSystem PromptやAgent Skillを書き換え、絶対的な制約・強い推奨・自律的裁量を明確に切り分ける手法と、3つの実践原則を解説します。
· 4 分で読めます
多くのチームがAgentの実装で最もハマりがちな落とし穴は、WordやNotionにある人間用の「業務マニュアル(SOP)」を丸ごとLLMに流し込み、あとはよしなにやってくれると期待することです。その結果はまるで宝くじのようになります。1回はうまく動いても、3回は盛大にやらかすのです。
問題はモデルの性能不足ではありません。人間用のSOPには膨大な「暗黙知(Tacit Knowledge)」が埋め込まれていることにあります。人間の脳なら「500円未満なら承認フロー不要」「このステップでエラーが出たら一旦スキップ」と無意識に判断できますが、LLMにとって非構造化テキストには制約の強弱の境界がなく、勝手な解釈で自由演技を始めてしまいます。
Agentの挙動に決定性を持たせるための第一歩は、より大きなモデルに乗り換えることではなく、ネットワークプロトコル仕様の古典的標準であるRFC 2119の語用論的レベル分けを導入することです。
結論から言うと:コンプライアンス、セキュリティ、そしてコアとなるSchemaのみをMUSTに指定し、残りの境界はSHOULDとMAYに任せ、ハイリスクな分岐点は人間による承認フローに委ねるべきです。
なぜ RFC 2119 なのか?#
System Prompt、Agent Skill、あるいはWorkflow Ruleを書く際、曖昧な「注意してください」「できるだけ」「極力」といった表現は、モデルにとって何の境界制約力も持ちません。明確な動詞レベルを使い分けることで、意思決定の境界線を強制的に引くことができます。
MUST / REQUIRED:妥協なきハード制約#
- セマンティクス:絶対にスキップ不可、例外条件なし。
- 適用シーン:バリデーション、セキュリティチェック、Schema出力仕様、ハイリスク操作のインターセプト。
- 具体例:「請求書発行APIを叩く前に、
MUST 従業員番号が存在することを検証せよ。レスポンスが空の場合、MUST 直ちに実行を中断せよ。」
SHOULD / RECOMMENDED:強い推奨、ただし正当な逸脱は許容#
- 語意:極めて妥当なコンテキスト上の理由がない限り遵守必須。逸脱する場合、AgentはReasoningの根拠を提示しなければならない。
- 適用シーン:アルゴリズム戦略の選択、分類の優先傾向、リトライロジック。
- 具体例:「カスタマーサポート系のTicketに対しては、
SHOULD 一次受け窓口へ優先的にアサインせよ。ただし決済トラブルに関するものは、財務審査チームへの変更を許可する。」
MAY / OPTIONAL:自律的オプショナル、完全な裁量#
- 語意:モデルが現在のコンテキストリソースやtokenバジェットに応じて、実行するか否かを自己判断してよい。
- 適用シーン:補足説明、思考の拡張提案、任意のログ出力フォーマット。
- 具体例:「対応サマリーを生成する際、
MAY 類似案件の過去の参照Ticket IDを1~2件付与してよい。」
実践における3つの原則#
1. 画面いっぱいの MUST をやめ、Reasoning の余白を残す#
すべてのルールをMUSTで埋め尽くすのは、LLMをDeterministic Compilerとして扱っているのと同じです。ルールの衝突や、Context膨張によるロジックのデッドロックを招きやすくなります。「コンプライアンス、セキュリティ、コアSchema」のみをMUSTとマークし、それ以外の境界はSHOULDに任せましょう。
2. 構造化された Markdown セクションと組み合わせる#
Promptを以下の4つのブロックに分解し、意味論的な強度のスコープ(Scope)を一目でわかるようにします。
## Parameters
## Constraints (RFC 2119)
## Execution Steps
## Error Handling
3. ハイリスクなノードは Human-in-the-loop に紐付ける#
重要なMUSTの境界条件がトリガーされた場合(例:1件あたりの金額が $5,000 を超える、Admin権限の変更など)、Agentが取るべき唯一のMUSTな行動は「パイプラインを一時停止し、人間がOKを押すレビューを待つ」ことであり、人間に代わって意思決定を下すことではありません。
結論:おもちゃの Demo から Production-Ready へ#
Agentを一騎当千の「何でも屋」としてではなく、1本の工業用パイプラインとして捉え直してください。RFC 2119によって振る舞いの契約(Contract)を結ぶことで、あなたのAgentは単なるおもちゃのDemoを脱し、本番運用のProduction-Readyへと進化できるのです。