Skip to main content
ガードレールは、LLM ジャッジモデルのスコアに基づいて、LLM アプリケーションの動作に介入します。出力がユーザーに届く前にリアルタイムで動作し、スコアがしきい値を超えると応答をブロックまたは変更できます。ガードレールを使用すると、有害な内容のブロック、個人を特定できる情報 (PII) を含む応答のフィルタリング、ユーザーからの攻撃的な入力のブロックができます。 このガイドでは、Weave のガードレールの仕組みとパフォーマンスの調整方法を説明し、組み込みの Scorer、カスタム Scorer、AWS Bedrock Guardrails を使用して本番環境の LLM アプリケーションを保護する例を紹介します。

Weave ガードレールの仕組み

Weave ガードレールは、インラインの Weave Scorer を使用して、ユーザーからの入力または LLM からの出力を評価し、LLM の応答をリアルタイムで調整します。カスタム Scorer を設定するか、組み込み Scorer を使用して、さまざまな目的でコンテンツを評価できます。このガイドでは、両方のタイプの Scorer をガードレールとして使用する方法を説明します。 本番トラフィックをアプリケーションの制御フローを変更せずにパッシブにスコアリングしたい場合は、代わりに モニター を使用してください。 モニターとは異なり、ガードレールはアプリケーションの制御フローに影響を与えるため、コードの変更が必要です。ただし、ガードレールからのすべての Scorer 結果は Weave のデータベースに自動的に保存されるため、ガードレールは追加の設定なしでモニターとしても機能します。元々どのように使用されたかに関係なく、過去の Scorer 結果を分析できます。
Weave TypeScript SDK は、ガードレールを設定するために必要なツールをサポートしていません。

Weave ガードレールのパフォーマンスを最適化する

ガードレールはアプリケーションの制御フローを中断し、応答の流れを変える可能性があるため、複雑すぎるとパフォーマンスに影響を与えることがあります。最適なパフォーマンスを得るには、以下の推奨事項に従ってください:
  • ガードレールのロジックを最小限かつ高速に保ちます。
  • 一般的な結果をキャッシュします。
  • 重い外部 API 呼び出しを避けます。
  • 繰り返しの初期化コストを避けるため、ガードレールをメイン関数外で初期化します。
ガードレールをメイン関数外で初期化することは、特に以下の場合に重要です:
  • Scorer が ML モデルを読み込む場合。
  • ローカル LLM を使用していてレイテンシーが重要な場合。
  • Scorer がネットワーク接続を維持する場合。
  • 高トラフィックのアプリケーションがある場合。

例: 組み込みのモデレーション Scorer を使用してガードレールを作成する

以下の例では、ユーザー プロンプトを OpenAI の GPT-4o mini モデルに送信します。モデルの応答は、LLM の応答に有害または毒性のあるコンテンツが含まれているかどうかを評価するため、OpenAI の moderation API に渡されます。モデルの応答は guardrail 関数 (generate_safe_response()) に渡され、この関数は OpenAIModerationScorer を使用して LLM の元の応答をチェックします。関数のロジックは、OpenAI の評価応答で passed フィールドの boolean をチェックし、アプリケーションがどのように応答するかを決定します。
LLM-as-a-judge Scorer を使用する場合、Op の変数をスコアリング プロンプトで参照できます。たとえば、「{output} が {ground_truth} に基づいて正確かどうかを評価します。」 詳細については、prompt variables を参照してください。

Example: Create a guardrail using a カスタム Scorer

以下の例では、LLM の応答 (メールアドレス、電話番号、社会保障番号など) に含まれる 個人を特定できる情報 (PII) を検出する custom ガードレールを作成します。これにより、生成されたコンテンツに機密情報が露出するのを防ぎます。generate_safe_response 関数は、custom PIIDetectionScorer を適用します。

Weave を AWS Bedrock Guardrails と統合する

AWS でコンテンツポリシーをすでに管理している場合は、Weave で BedrockGuardrailScorer を使用して適用できます。この Scorer は AWS Bedrock Guardrails を使用して、設定済みのポリシーに基づいてコンテンツを検出およびフィルターします。 Bedrock Guardrails のインテグレーションを設定する前に、以下が必要です。 独自の Bedrock クライアントを作成する必要はありません。Weave が自動的に作成します。リージョンを指定するには、Scorer の bedrock_runtime_kwargs パラメーターにリージョン値を渡してください。 AWS Bedrock でガードレールを作成する方法の例については、Bedrock guardrails notebook を参照してください。 次の例では、テキスト生成を AWS Bedrock Guardrails のポリシーに対してチェックしてから、ユーザーに結果を返します。
最終更新日 2026年9月30日