評価は、エージェントのパフォーマンスをテストし、特定の場合にエージェントが想定どおりに動作することを確認するための重要なツールです。評価を使用すると、テストを自動化し、変更後の機能低下を検出し、エージェントの回答の品質を測定してエージェントの品質を向上させることができます。
まず、エージェント ビルダーの上部にある [評価] ボタンをクリックします。
評価のコンセプト
テストケース: 各テストケースは、エージェントのパフォーマンスを評価するために設計された、特定の自己完結型のテスト シナリオまたはプロンプトです。次の 2 種類のテストケースを作成できます。
- シナリオ: テストをブートストラップし、包括的なテスト カバレッジを確保するための AI を活用した機能。ユーザーの目標を記述すると、システムがユーザーを自動的にシミュレートし、会話を生成して、エージェントがシナリオを堅牢に処理する能力をテストします。シナリオは、テストを行い、最適な会話を定義するうえで役立ちます。
- Golden: 回帰テストに最適です。特定の「理想的な」会話パスを指定すると、評価では、エージェントの動作がこの理想的なパス(ツール呼び出しを含む)と一致するかどうかが確認されます。
実行: 評価の実行は、テスト対象のエージェントのパフォーマンスに対して、一連のゴールデン テストケースとシナリオ テストケースを 1 回完全に実行することを表します。各実行には 1 つ以上のテストケースを含めることができます。
結果: テストケースの結果は、1 回の実行で特定のテストケースが 1 回実行されたことを指します。1 回の評価実行中にテストケースが複数回実行される場合(一貫性や不安定さなどを確認するためなど)、個々の実行は個別の結果となります。結果は、各テストケース行の列に長方形のアイコンとして表示されます。実行が失敗した場合は赤い X、合格した場合は緑色のチェックマークが表示されます。
タグ: テストケースをタグでグループ化して、管理を容易にできます。
テストケースを作成する
エージェントのテストケースを作成してアクセスするには、エージェント ビルダーの上部にある [評価] ボタンをクリックします。ゴールデン ベースまたはシナリオ ベースのテストケースを作成して管理できます。
シナリオ
シナリオベースのテストケースでは、AI を使用して、定義したユーザーのハイレベルな目標に基づいてさまざまな会話を自動的に生成します。これらのテストケースでは、特定のゴールデン会話を指定するのではなく、生成されたシナリオを選択するか、テストする必要がある特定のシナリオを記述します。これは、考えられるすべての会話パスを手動で記述しなくても、エッジケースを探索し、エージェントの堅牢性をテストするのに役立つ強力なツールです。
これらのシナリオがうまく機能したら、ゴールデン会話として保存できます。
シナリオを作成するには:
- [シナリオを作成] をクリックします。複数のシナリオが提案されます。
- 選択に基づいてシナリオを生成することも、新しいシナリオを最初から作成することもできます。
シナリオのリストを表示しているときに、シナリオをクリックすると、各シナリオの詳細と会話リストが表示されます。
シナリオをゴールデン会話として保存するには:
- シナリオを選択します。
- 右上にあるメニューボタンをクリックします。
- [ゴールデン会話として保存] を選択します。
シナリオのユーザーの目標
各シナリオには、エージェント アプリケーションを使用する際のエンドユーザーの目標を説明するユーザー目標があります。次に例を示します。
Securely book a specific room at a chosen hotel and receive a confirmation.
CX Agent Studio は、ユーザーの目標に基づいて、評価に使用される会話を自動的に生成します。
シナリオ変数
シナリオを定義するときに、シナリオで使用する変数を指定できます。
シナリオの想定値
評価を行うには、テストケースの期待値を定義します。
期待値には次の 2 種類があります。
- メッセージ: エンドユーザーまたはエージェントが送信するメッセージ。
- ツール呼び出し: 想定される入力と出力を含むツール呼び出し。
期待値には次の条件を設定できます。
- 必須
- 含めてはならない
- ツール呼び出し後
- 変数の値
期待値を作成するには:
- 特定のシナリオをクリックして詳細を開きます。
- [期待] セクションで、[すべて表示] をクリックします。
- インターフェースの手順に沿って、シナリオの期待値を作成します。
Golden
これらのテストケースは、回帰テストの理想的な会話パスを定義するために使用されます。これにより、エージェントを更新しても、コアで重要な会話パスが壊れることはありません。ゴールデン コンバージョンを作成するには、複数の方法があります。
シミュレータから会話をインポートするには:
- シミュレータを使用して会話を開始します。
- シミュレーターの右上にある縦に 3 つ並んだ点(その他アイコン)をクリックして、シミュレーター メニューを表示します。
- [ゴールデンとして保存] をクリックします。
- ゴールデン テストケースの名前を入力し、[保存] をクリックします。[評価] タブに表示されます。
会話履歴からテストケースを作成するには:
- [評価] タブに移動し、[+ テストケースを追加 -> ゴールデン] をクリックします。
- [会話履歴から選択] をクリックします。
- 表示されたウィンドウで、ゴールデン テストケースとして保存する会話を選択します。会話 ID で検索することもできます。
- 秘匿化を有効にしている場合は、不足している情報を処理する前に、エージェントの回答と変数が秘匿化されているかどうかを確認します。
- [追加] をクリックします。
テストケースをゼロから作成するには:
- [評価] タブに移動し、[+ テストケースを追加 -> ゴールデン] をクリックします。
- [create from scratch] をクリックします。
- 表示されたウィンドウで、テストケースの表示名を追加します。
- 必要に応じて、ユーザー入力とエージェントの期待値のテキストを追加します。[+ ユーザー入力の追加] と [+ エージェントの期待値を追加] をクリックして、回答を追加します。[+ ターンを追加] をクリックして、テストケースに新しい会話ターンを追加します。
- [作成] をクリックして、ゴールデン テストケースをテストケースのリストに追加します。
シナリオ テストケースのシミュレートされた会話からテストケースを作成するには:
- 評価実行結果ページに移動します。
- 選択した会話の右にあるメニュー アイコン(縦に並んだ 3 つの点)をクリックし、[Save as golden conversation](ゴールデン会話として保存)をクリックします。
ファイルからテストケースを一括アップロードするには:
ファイル形式と CSV テンプレートの詳細については、ゴールデン テストケースの CSV 形式のページをご覧ください。
ゴールデン エクスペクテーション
評価を行うには、ゴールデン テストケースの期待値を定義します。期待値とは、会話の特定の時点でエージェントから期待される具体的な結果のことです。評価では、エージェントの実際の動作がこれらの期待値と比較されます。
期待値は次のいずれかのタイプになります。
- メッセージ: エージェントからエンドユーザーへの想定されるテキスト レスポンス。評価では、エージェントの回答がこの期待値と意味的に一致しているかどうかが確認されます。
- ツール呼び出し: エージェントが特定のツールとレスポンスを呼び出すという期待値。ツール呼び出しの想定される入力引数を指定することもできます。
- エージェントの引き継ぎ: エージェントが会話を人間のエージェントまたは別の bot に転送することを想定しています。
期待値を作成するには:
- 特定のゴールデン テストケースをクリックして、その詳細を開きます。
- [詳細] セクションで、[ゴールデンを表示] をクリックします。
- インターフェースの手順に沿って、期待事項を追加または変更します。
評価の設定
テストケース リストの見出し行で、評価設定を構成できます。
- ゴールデン:
- 合格/不合格の基準: シミュレートされた会話が合格か不合格かを判断するロジックを設定します。
- ターンレベル:
これらのルールは、個々のターンを評価します。これらのしきい値のいずれかが満たされていない場合、特定の指標は失敗として赤色で色分けされます。
- セマンティック類似性: セマンティック類似性のしきい値。
- ツールの正確性: ツールの正確性のしきい値。
- ハルシネーション: 無効にすると、ハルシネーションは合格/不合格の対象外になります。
- 期待レベル: これらのルールは、ターン内の期待値を判断します。これらのしきい値のいずれかが満たされていない場合、特定の指標は失敗として赤色で色分けされます。
- ツールの正確性: ツールの正確性のしきい値。
- ゴールデン ラン方式: ナイーブな再生検証と安定した再生検証のいずれかを選択します。
- ツール偽装: 実際の本番環境 API 呼び出しの代わりにモックデータを使用します。
- Scenarios:
- シナリオの合格/不合格の基準: シミュレートされた会話が合格か不合格かを判断するロジックを設定します。
- 会話の開始者: 会話を開始するユーザーまたはモデルを設定します。
- ツール偽装: 実際の本番環境 API 呼び出しの代わりにモックデータを使用します。
- 音声評価
- 音声評価の録音
評価を実行する
評価を実行するには、テストケースの行にある実行ボタンをクリックするか、複数のテストケースを選択して実行します。
複数のバージョンを保存している場合は、使用するエージェント バージョンを選択するか、下書きエージェントを新しいバージョンとして実行用に自動的に保存できます。
評価の実行後、指標が更新され、結果が表示されます。
特定の実行評価をクリックすると、実行の詳細な結果が表示されます。標準の指標に加えて、次の指標が表示されます。
- 失敗したターン
- すべてのターンの詳細のページネーション リスト。実際のエージェントの応答と想定されるエージェントの応答の両方が含まれます。
ゴールデン テストケースでは、「安定した再生」という用語が表示されることがあります。これは、テストが一貫した環境で実行されたことを明確にするものです(コンテキストや入力の変更がないなど)。
AI を使用してテストケースを改善する(プレビュー)
必要に応じて、AI を使用して実行のトラブルシューティングを行い、エージェントの品質を改善する方法を提案できます。AI による提案は、実行回数(実行数)が 3 回以上の場合に最適です。AI を有効にするには、評価するテストケースを選択し、[選択したものを実行] をクリックします。ポップアップ表示されたウィンドウで、[AI で問題を見つける] の横にあるチェックボックスをオンにします。
実行が完了すると、結果ページに AI ベースの提案が表示されます。Gemini は、エージェントのパフォーマンスの側面を要約し、改善できる領域をハイライト表示するダウンロード可能な loss_report を自動的に生成します。
AI が提案した修正は誰でも確認できますが、結果に基づいてアクションを実行できるのは、実行を開始したユーザーのみです。
[Gemini に質問] をクリックして、ヘルパー エージェントとやり取りします。最初に、モデルまたはエージェントのハイレベルな問題について説明する損失レポートが表示されます。ヘルパー エージェントにレポートの説明を依頼できます。レポートが要約され、修正案が提示される場合があります。修正が適用されたら、ヘルパー エージェントに評価の再実行を依頼できます。
指標
各テストケースの結果には、選択したテストケースに対するエージェントのパフォーマンスを測定する一連の指標が含まれています。指標は、コンソールに示されているように、ターンレベルまたは期待値(会話)レベルで計算されます。
いずれの場合も、[評価] タブの [設定] メニューで、実行パスに必要な値をカスタマイズできます。
ツールの正確性
ゴールデン テストケースとシナリオ テストケースに対して計算されます。この指標は、想定されるツール呼び出しとその想定されるパラメータ値が与えられた場合に、一致した想定されるパラメータの割合を反映します。ツール呼び出しがなかった場合は 0 点、入力パラメータのないツール呼び出しがあった場合は 1 点となります。ゴールデン評価中に予期しないツール呼び出しが行われた場合、結果は失敗と見なされますが、ツールの正確性の値には影響しません。
ユーザーの目標達成度
シナリオごとに計算されます。ユーザー目標達成度は、ユーザー シミュレーション評価用に設計されたバイナリ指標です。シミュレートされたユーザーが目標を達成したと考えるかどうかを測定します(0=いいえ、1=はい)。入力は、シミュレートされたユーザー構成で定義された user_goal と会話の文字起こしです。指定された user_goal で明示的または暗黙的な目標が指定されていない場合、出力スコアは -1 になります。
ハルシネーション
ゴールデン テストケースとシナリオ テストケースで使用できます。ハルシネーション スコアは、生成されたターンごとに計算されます。この指標は、エージェントがコンテキストで正当化されない主張をしたかどうかを示します(0=なし、1=あり)。コンテキストは、会話の前のターン、セッション変数、ツール呼び出し、エージェントの指示で構成されます。この指標は、ツール呼び出しを含むターンに対してのみ計算されます。ツール呼び出し内のハルシネーションは検出されません。コンテキストとして提供されるツール呼び出しは正しいと想定されます。誤検出を最小限に抑えるため、回答に事実に基づく主張が含まれていない場合や、すでに確立されている一般的な知識のみが含まれている場合、指標は N/A のスコアを返すことがあります。
ハルシネーションは、評価設定で有効または無効にできます。
意味による一致
ゴールデン テストケース用に計算されます。この指標は、観測されたエージェントの発話が、期待されるエージェントの発話とどの程度一致するかを測定します。セマンティック マッチはターンレベルで計算されます。戻り値の範囲は 0(完全に矛盾している)から 4(完全に一貫している)です。
シナリオの想定値
シナリオごとに計算されます。この指標は、シミュレートされたユーザーが想定したエージェントの動作が満足のいくものだったかどうかを測定します(0=いいえ、1=はい)。次の 2 種類のシミュレートされたユーザーの期待値がサポートされています。
- ツール呼び出しの期待値: 次の例外を除き、ツール呼び出しの正しさと同様に計算されます。
- 結果は 0(いいえ)または 1(はい)のいずれかになります。
- 予期しないツール呼び出しはペナルティの対象になりません。期待値は、シミュレートされたユーザーの期待を満たすために会話に不可欠なツール呼び出しのセットを指定するためのものです。
- ツール呼び出しの入力の期待値が満たされると、呼び出しがインターセプトされ、実行時にモックの戻り値に置き換えられます。
- エージェントの回答の期待値: 会話内のエージェントの回答に想定される文字列が含まれているかどうかを確認します。
タスクの完了
シナリオごとに計算されます。タスクの完了は、会話の品質を測る指標です。ユーザーの目標が達成されたかどうかと、エージェントの動作が正しかったかどうかを同時に測定します。次のように定義されます。
User_Goal_Satisfied AND no_hallucinations_detected AND Expectations Satisfied
ペルソナ
ペルソナは、カスタマイズして、シナリオ テストケースでエージェントのテストに使用できるシミュレートされたユーザー ペルソナです。この機能は、エージェントが実行時に遭遇する可能性のある人間のユーザーのタイプに適切に対応できるようにするために役立ちます。
ペルソナを選択しない場合、シナリオの結果ごとにランダムなペルソナが選択されます。
この機能は、テキスト入力と音声入力の両方で使用できます。
ペルソナを作成する
- ペルソナを作成するには、[評価] タブに移動し、[ペルソナ管理](設定アイコンの横)をクリックします。
- [+ ペルソナを追加] をクリックします。
- ポップアップ表示されたメニューで、名前、ユーザーの個性、その他のユーザーのコンテキスト(年齢、場所、電話をかけてきた理由など)を入力します。
- [+ Add] をクリックします。
ペルソナを使用して評価を実行するには:
- メインの [評価] ページに戻り、1 つ以上のシナリオ テストケースを選択します。[選択したものを実行] をクリックします。
- ポップアップ表示されたウィンドウで、[ペルソナ] プルダウン メニューから作成したペルソナを選択し、[実行] をクリックします。