金融や専門分野では、エージェントの品質は言語面を超えた多次元にわたります。市場インテリジェンスエージェントは、設定可能なリアルタイムバンド内で株価を提示し、金融プロファイルにアクセスする前に必須のブローカー識別ワークフローに従い、厳格なJSONスキーマに準拠したツール出力を返し、個人識別情報(PII)を保持しなければなりません。これらのチェックには、同一入力に対して同一結果を生成する決定論的なコードが必要です。客観的なコードが適切な場合、LLM-as-a-Judgeでこれらのチェックを実行するとコストが高くなる可能性があります。
Amazon Bedrock AgentCore Evaluationsは、LLM-as-a-Judgeチェックと拡張可能なコードベース評価器を提供し、エージェントアプリケーションを評価するためのドメイン固有要件をキャプチャします。カスタムコード評価器を使用すると、AWS Lambda関数を評価エンジンとして導入し、スコアリングロジック(正規表現と構造検証、外部データ参照、他のサービス呼び出し、ビジネスルール)を制御できます。同じ評価器を複数の方法で使用でき、リクエストごとに基盤モデルトークンを消費しません。オンデマンド評価では、開発ワークフローとCI/CDパイプライン内のゲートとして機能します。オンライン評価セットアップでは、ライブ本番トラフィックをスコアリングできます。異なるエージェントフレームワークからのトレースでも、このアプローチを使用して独自のロジックでエージェント品質を一貫して評価できます。
コード評価に適した品質次元
エージェントはJSONなどの構造化ツール出力に依存します。ツールレスポンススキーマ検証はツール境界で構造的問題をキャッチし、コードベースのチェックに適しています。一方、LLM-as-a-Judge評価器は有用性と明確性を判断する補完を行います。数値精度では、コード評価器が参照システムを呼び出し、許容範囲を計算し、各不一致をフラグ付けします。ワークフローコントラクト準拠では、エージェントが特定のツールシーケンスに従う必要があり、コード評価器がセッション全体のツール呼び出し順序を検査します。PII検出では、コード評価器がPII検出やシークレットスキャンサービスを呼び出し、応答コンテンツに厳格なルールを適用します。
評価器のライフサイクル:スパンからスコア結果へ
コード評価器はAgentCoreコントロールプレーンに登録されたLambda関数です。評価が実行されると、AgentCoreはアカウント内のIAMロールを引き受け、エージェントのOpenTelemetry(OTel)スパンを含むペイロードでLambdaを呼び出し、Lambda応答を評価結果としてCloudWatch Logsに書き込みます。ペイロードには、スキーマバージョン、評価器ID、評価器名、評価レベル、およびセッションのOTelスパン配列を含む評価入力オブジェクトが含まれます。トレースレベル評価器の場合、別の評価ターゲットフィールドがスコアリングする特定のトレースを識別します。セッションレベル評価器の場合、AgentCoreはターゲットを省略し、Lambdaが完全な会話をスコアリングします。
Lambda応答は固定コントラクトに従います。成功時には、ラベル(例:PASSまたはFAIL)、オプションの数値スコア(0.0~1.0)、およびオプションの説明文字列を含むディクショナリを返します。失敗時には、エラーコードとエラーメッセージを含むディクショナリを返します。すべての成功応答にラベルを含める必要があります。スコアと説明フィールドはオプションですが、CloudWatchメトリクスとAgentCore Observabilityダッシュボードに直接フィードされ、スコアが低い場合のデバッグに役立ちます。各評価器は登録時に設定されたTRACE、TOOL_CALL、SESSIONの3つのレベルのいずれかで実行されます。
オンデマンドモードとオンラインモード
AgentCore Evaluationsは、オンデマンドモードとオンラインモードの両方でコード評価器をサポートします。単一の評価器IDが開発、テスト、CI/CDゲート、継続的な本番監視に使用されます。Lambdaコントラクト(ペイロード、応答形式、IAM設定を含む)は両モードで同じです。オンデマンド評価は、開発イテレーション、回帰テスト、CI/CDデプロイメントゲートの3つのシナリオに適合します。1回のオンデマンド呼び出しで、コードベースと組み込みタイプを合わせて最大10個の評価器を参照できます。オンライン評価は、設定された評価器に対してライブエージェントトラフィックを継続的にサンプリングし、定期的なスケジュールでスコアリングします。オンライン評価を設定するには、AgentCoreコントロールプレーンで評価器、データソース(CloudWatchロググループとOTelサービス名)、サンプリング率(0.01~100%)を指定して設定を一度作成します。AgentCoreは定期的なスケジュールを処理し、サンプリングされた各セッションについて、CloudWatchからスパンを読み取り、設定された各評価器を呼び出し、評価結果を専用のCloudWatchロググループに書き込みます。各評価器スコアはCloudWatchメトリクスとしても表示され、ダッシュボードの構築やアラート設定に使用できます。
ソリューション概要
このソリューションでは、市場動向エージェントを例として使用します。これは、LangGraph上に構築され、Amazon Bedrock AgentCore Runtimeにデプロイされた投資インテリジェンスアシスタントです。エージェントは、株式データ、複数ソースのニュース分析、AgentCoreメモリに保存されたブローカープロファイルのツールを提供します。サンプルには、ToolResponseSchemaValidator(トレースレベル)、StockPriceDriftChecker(トレースレベル)、WorkflowContractGSR(セッションレベル)、PII検出器の4つの評価器が含まれています。これらの評価器により、エージェントの品質は「正しく聞こえる」から「コントラクト検証済み」に向上します。
カスタムコード評価器は、エージェント品質評価に強力な柔軟性を提供し、ドメイン固有の構造化チェックを処理し、LLM-as-a-Judge評価器とともに包括的な品質評価システムを構築できます。