小売企業がAmazon Bedrock Knowledge Basesを使ったRAGアプリケーションを本番運用している。製品情報ナレッジベースに基づいて顧客の質問に回答するチャットボットだが、「ナレッジベースにない情報(ハルシネーション)が回答に含まれる」という顧客苦情が増加している。 担当エンジニアは、回答がナレッジベースから取得されたコンテキストに基づいていない場合にリアルタイムでブロックする仕組みを最小の実装工数で導入したい。最適なソリューションはどれか。
Amazon Bedrock GuardrailsのContextual Grounding Check(文脈的根拠確認)は、RAGアプリケーション向けにモデルの回答がコンテキスト(取得されたドキュメント)に基づいているかをリアルタイムで評価する専用機能。 グラウンディングスコア(0〜1)を計算し、設定した閾値を下回る回答を自動的にブロックまたは置換する。Knowledge Basesと組み合わせた `RetrieveAndGenerate` API、もしくは `InvokeModel` にGuardrailを適用する場合もAPIの `guardrailIdentifier` パラメータを設定するだけであり、追加アーキテクチャの開発は不要で実装工数が最小となる。 選択肢AのBedrock Model Evaluationはバッチ処理でモデル全体のパフォーマンスを評価するサービスであり、本番リクエストをリアルタイムでブロックする機能は持たない。 選択肢CのLambdaを使った二重呼び出しアーキテクチャは動作するが、追加のレイテンシ増加・コスト倍増・実装複雑化を招き、専用機能が存在する場合の最適解ではない。 選択肢Dの人間レビューワークフローはリアルタイムブロックの要件を満たさず、問題のある回答が顧客に届いた後の事後対応にとどまる。