AI Guardrails
AIガードレールとは、プロンプトインジェクションフィルターからツール呼び出しのスキーマチェックまで、危険な入力、出力、アクションをブロックするAIモデル周辺のチェック機能です。
AIガードレールとは、人工知能(AI)モデルの入力、出力、許可されている操作を検査し、ポリシーに違反する内容をブロックまたは別の経路に送るチェック機構です。ガードレールはモデルの重みの外部に置かれます。そのため、基盤となる大規模言語モデル(LLM)が悪意ある回答を生成するよう仕向けられても、有害な回答、漏えいした電話番号、許可されていない返金をガードレールで阻止できます。ガードレールは、モデル自体の振る舞いにかかわらずアプリケーション全体に制限を適用することで、人間のフィードバックによる強化学習(RLHF)などの安全性学習を補完します。
AIガードレールの種類#
ガードレールは、作用する場所によって分類されます。入力ガードレールは、モデルに渡す前にプロンプト、アップロードファイル、取得した文書を検査し、プロンプトインジェクション、ジェイルブレイクの試み、個人データ、または無関係なリクエストを検出します。出力ガードレールは、回答がユーザーや下流ソフトウェアに届く前に、有害なコンテンツ、漏えいした機密情報、ソース文書と矛盾するハルシネーション、または必須スキーマに違反する構造化出力がないか確認します。
アクションガードレールは、AIエージェントが呼び出せるツール、引数、権限を制限し、支払い、削除、メール送信など重要な操作では人間の承認を必須にします。エージェントのサンドボックス化によって、エージェントが実行するコードを隔離します。対話ガードレールは、たとえば医療に関する質問を断る銀行アシスタントのように、会話を許可された話題に保ちます。
ガードレールの実装方法#
多くのガードレールは分類器です。Metaの Llama Guardは2023年に発表されたLLMで、リスクカテゴリの分類体系に照らし、プロンプトと応答の両方に安全または危険のラベルを付けるようファインチューニングされています。AnthropicのConstitutional Classifiersは、許可・禁止コンテンツを文章で列挙したリストから生成した合成データで学習されました。Claude 3.5 Sonnetに対する自動ジェイルブレイク攻撃10,000件の成功率を86%から4.4%に下げる一方、本番トラフィックでの拒否率の上昇を0.38%に抑え、計算オーバーヘッドは23.7%でした。その他のガードレールはルールベースで、クレジットカード番号を検出する正規表現、ツールの許可リスト、ツール引数のスキーマなどがあります。NVIDIAのNeMo GuardrailsやGuardrails AIなどのフレームワークは、両方の種類を設定可能なパイプラインに組み合わせます。
スキーマ検証は、最も簡単に構築できるアクションガードレールです。以下の例では、Pydanticを使って、LLMエージェントが提案する返金リクエストを実行前に検証します。
from pydantic import BaseModel, Field, ValidationError
class Refund(BaseModel):
"""Refund action a support agent may request."""
order_id: str = Field(pattern=r"^A\d{6}$")
amount: float = Field(gt=0, le=200) # larger refunds go to a human
# Two tool calls proposed by an LLM; the second follows instructions injected into a customer email
proposals = ['{"order_id": "A104233", "amount": 49.99}', '{"order_id": "A104233", "amount": 5000}']
# Action guardrail: execute only tool calls that pass the schema, block the rest
for proposal in proposals:
try:
refund = Refund.model_validate_json(proposal)
print(f"Executed refund of ${refund.amount} for {refund.order_id}")
except ValidationError as error:
print(f"Blocked: {error.errors()[0]['msg']}")最初の呼び出しではExecuted refund of $49.99 for A104233が出力され、2回目ではBlocked: Input should be less than or equal to 200が出力されます。そのため、どれほど巧妙に指示が書かれていても、注入された指示が決済システムに届くことはありません。
ビジョンパイプラインにおけるガードレール#
ビジョンシステムでは、モデルの出力がアクションに使えるほど信頼できるかを判断するためにガードレールを使います。Ultralytics Platform Agentsでは、GateブロックがYOLO26の結果に基づく条件で下流処理を制御します。YOLO to VLM Monitorテンプレートは、人物が1人以上検出された場合にのみビジョン言語モデルを実行します。医用画像や自動運転車にも同じパターンが使われ、不確かな結果は臨床医に回され、認識に失敗した場合は安全な停止に切り替わります。
ガードレールと関連用語の比較#
- AIの安全性: AIによる危害を防ぐ幅広い分野です。ガードレールは、導入時に使われる対策の1つです。
- 憲法AI: モデル自体に原則を学習させます。ガードレールは外部からルールを適用するため、学習がうまくいかない場合にも機能します。
- AIガバナンス: AIシステムに許可される動作を定めるポリシーや法律です。ガードレールは、実行時に決定を適用する技術的な制御です。
- AIレッドチーミング: システムを攻撃し、ガードレールが残している弱点を見つけます。
ガードレールには速度と有用性の面でコストもあります。分類器を追加するたびに推論レイテンシが増え、制約を厳しくするほど正当なリクエストも拒否されやすくなります。AnthropicのConstitutional Classifiersのプロトタイプは、3,000時間を超えるバグ報奨金プログラムのレッドチーミングでも万能なジェイルブレイクを許しませんでしたが、無害なクエリを拒否しすぎ、計算コストも高すぎました。










