ガードレール
ガードレールは、LLMの入力と出力を安全で、本題に沿った、ポリシーに準拠したものに保つために、LLMを取り囲むように設けられるルール、フィルター、検証レイヤーです。ガードレールはユーザーとモデルの間、そしてモデルと下流のシステムの間に位置し、モデル自身が生み出しうる問題を捕捉します。
ガードレールは、LLMの入力と出力を安全で、本題に沿った、ポリシーに準拠したものに保つために、LLMを取り囲むように設けられるルール、フィルター、検証レイヤーです。ガードレールはユーザーとモデルの間、そしてモデルと下流のシステムの間に位置し、モデル自身が生み出しうる問題を捕捉します。
なぜ重要なのか
ベースのLLMは、本題から外れた質問にも平気で答え、敵対的なプロンプトのもとで有害なコンテンツを生成し、プロンプトの指示を漏らし、不正な形式のデータを返します。ガードレールなしでLLM機能をリリースすることは、こうした失敗モードをユーザーに届けてしまうことを意味します。大規模に稼働するあらゆる本番LLMシステム、つまりChatGPT、Claude、Gemini、そしてエンタープライズの導入環境は、いずれも多層のガードレールを走らせており、NVIDIA NeMo Guardrails、Guardrails AI、LangChainのconstitutional AIといったフレームワークは、標準的なインフラとなっています。
ガードレールの種類
入力ガードレール: ユーザー入力がモデルに到達する前に検証します。
- プロンプトインジェクションの試みを拒否する
- 個人を特定できる情報(PII)をブロックする
- 有害な質問や本題から外れた質問をフィルタリングする
- ユーザーごとにレート制限をかける
出力ガードレール: モデルの出力を返す前に検証します。
- ハルシネーションによる事実を出典と照合して確認する
- 許可されないコンテンツ(暴力、自傷、違法な助言)をブロックする
- 形式(JSONスキーマ、最大長)を強制する
- 漏洩したシステムプロンプトや内部の指示がないかスキャンする
トピックのガードレール: アシスタントを想定された範囲内に保ちます。
- カスタマーサポートのボットが政治について議論することを拒否する
- コーディングアシスタントがマルウェアを書くことを拒否する
- 通常は「本題から外れていれば、定型のリダイレクトで応答する」として実装される
振る舞いのガードレール: スタイルとトーンのルールです。
- ブランドボイスを維持する
- 製品が果たせない約束は決してしない
- ユーザーの言語で応答する
実装方法
ルールベースのフィルター: 正規表現、ブロックリスト、分類器。高速で決定論的です。
LLMベースの分類器: 小型で高速なモデル(Claude Haiku、GPT-4o-mini)が、与えられた入力・出力がポリシーに違反していないかを判断します。正規表現より再現率は高いものの、レイテンシが増えます。
構造化出力 + スキーマ検証: 設計上、特定の失敗モードを起こりえないものにします。structured-outputの項目を参照してください。
Constitutional AI / 自己批判: モデルが応答する前に、文書化された一連の原則に照らして自身の出力をレビューし修正します。
ハイブリッド: ほとんどの本番システムは複数のアプローチを重ねます。まず安価な正規表現を使い、曖昧なケースにはLLM分類器を使います。
トレードオフ
レイテンシ: どのガードレールも時間を追加します。入力 + 出力のガードレールは、往復の時間を2倍にすることがあります。
誤検知(フォールスポジティブ): 過剰に調整されたガードレールは正当なリクエストを拒否し、ユーザーをいらだたせます。
見逃し(フォールスネガティブ): 調整が不十分なガードレールは、実際のポリシー違反を見逃します。
コスト: LLMベースのガードレールは、保護対象のエンドポイントの推論コストを2〜3倍にします。
メンテナンス: 攻撃者が適応するにつれて、ガードレールは陳腐化していきます。継続的な調整を見込んでおきましょう。
よくある間違い
システムプロンプトだけに頼る: システムプロンプトはジェイルブレイクされうるものです。本物のガードレールはモデルの外側に位置します。
出力だけを守る: 入力ガードレールは、プロンプトインジェクションが会話を汚染する前に捕捉します。
二者択一の拒否: 「それはお手伝いできません」はUXを台無しにします。優れた拒否は、何か役に立つものへとリダイレクトします。
ログを取らない: 見えないものは調整できません。レビューのために、すべてのガードレールの作動をログに記録しましょう。
一度きりの調整: 脅威モデルは毎月変わります。ガードレールにはレビューの頻度が必要です。
Sources: