Guardrails AI(ガードレールズエーアイ)
LLM の出力を検証・構造化するオープンソースフレームワーク。50以上の組み込みバリデータ(PII検出・有害性フィルタ・JSON スキーマ準拠・事実性チェック等)を提供し、出力が仕様に合致しない場合の自動再試行・修正機能を備える。Guardrails Hub でコミュニティ製バリデータを共有・再利用できる。
Guardrails AI とは
Guardrails AI は、LLM の出力を検証・構造化・修正するオープンソースフレームワークです。LLM が生成したテキストや JSON を50以上の組み込みバリデータで検証し、不合格の場合は自動的にリトライ・修正を実行して仕様準拠の出力を保証します。
主要コンセプト
Guard オブジェクト
Guardrails AI の中心概念は Guard オブジェクトです。Guard はバリデータのパイプラインを定義し、LLM の入出力を検証します。
| コンポーネント | 説明 |
|---|---|
| Guard | バリデーションパイプラインの定義と実行 |
| Validator | 個別の検証ロジック(PII検出・JSON検証等) |
| on_fail | 検証失敗時のアクション(reask / fix / filter / exception) |
| history | 検証の履歴とリトライ回数の記録 |
失敗時のアクション
| アクション | 動作 |
|---|---|
| reask | バリデーションエラーの情報をプロンプトに含めて LLM に再生成を依頼 |
| fix | バリデータが自動修正を試行(例: PII をマスキング) |
| filter | 該当部分を除去して残りを返却 |
| refrain | 出力全体を拒否して None を返却 |
| exception | Python 例外を発生させてアプリケーション側でハンドリング |
| noop | 検証結果を記録するのみで出力は変更しない |
Guardrails Hub
Guardrails Hub(guardrailshub.com)は、コミュニティが開発・共有するバリデータのマーケットプレイスです。
| カテゴリ | バリデータ例 | 説明 |
|---|---|---|
| 安全性 | ToxicLanguage | 有害・差別的な言語の検出 |
| PII | DetectPII | 個人識別情報の検出とマスキング |
| 品質 | ReadingTime | 読了時間が指定範囲内かチェック |
| 構造 | ValidJson | JSON スキーマへの準拠チェック |
| 事実性 | ProvenanceV1 | ソースドキュメントとの整合性検証 |
| コード | ValidPython | 生成された Python コードの構文チェック |
| ブランド | CompetitorCheck | 競合他社名の言及検出 |
2026年時点で50以上のバリデータが公開されており、guardrails hub install コマンドでプロジェクトに追加できます。
構造化出力の保証
Guardrails AI の強力な機能の一つは、LLM 出力の構造化です。Pydantic モデルを定義し、LLM の自由テキスト出力を自動的に構造化データに変換・検証します。
出力が Pydantic スキーマに合致しない場合、エラー情報をプロンプトに含めて自動再試行(reask)を実行し、最大N回のリトライで仕様準拠の出力を得ます。
対応 LLM プロバイダ
| プロバイダ | 対応方式 |
|---|---|
| OpenAI | ネイティブ統合 |
| Anthropic | ネイティブ統合 |
| Google Gemini | ネイティブ統合 |
| AWS Bedrock | ネイティブ統合 |
| Hugging Face | Transformers パイプライン経由 |
| ローカルモデル | LiteLLM 経由で任意のモデルに対応 |
NeMo Guardrails との比較
| 比較項目 | Guardrails AI | NeMo Guardrails |
|---|---|---|
| 主な焦点 | 出力の検証・構造化 | 対話フロー制御 |
| 記述方式 | Python + Pydantic | Colang DSL |
| バリデータ数 | 50+ | カスタム定義 |
| リトライ機能 | 自動 reask/fix | なし(ブロックのみ) |
| 対話制御 | 限定的 | 強力(トピック制御) |
| 学習コスト | Python 知識のみ | Colang 習得が必要 |
FAQ
Q: Guardrails AI は無料?
A: コアライブラリは Apache 2.0 ライセンスのオープンソースで無料です。Guardrails Hub の一部プレミアムバリデータと SaaS 版の Guardrails Server は有料プランで提供されています。
Q: reask のリトライ回数に上限はある?
A: デフォルトでは最大3回のリトライが設定されていますが、num_reasks パラメータでカスタマイズ可能です。リトライごとに LLM API コールが発生するため、コストとレイテンシのトレードオフを考慮して設定します。
Q: ストリーミングレスポンスに対応している?
A: はい、Guardrails AI はストリーミングモードをサポートしています。チャンク単位でバリデーションを実行し、検証失敗時はストリーミングを中断して再生成を行います。