この機能を使用すると、AI エージェントを評価できます。Gen AI Evaluation Serviceを使用すると、エージェントのパフォーマンス、安全性、品質を測定して改善できます。
評価の種類
| 評価の種類 | ユースケース | 頻度 |
|---|---|---|
| Rapid Evaluation | 新しいエージェント ロジックまたはモデルの変更をテストする。 | 頻繁(開発) |
| テストケースの評価 | 特定のデータセットに対する回帰テスト。 | スケジュール設定(CI/CD) |
| オンライン モニタリング | 本番環境エージェントのデプロイの品質をトラッキングします。 | Continuous(本番環境) |
評価ワークフロー
エージェントを評価するには、Google Cloud コンソールまたは Agent Platform SDK を使用します。
Google Cloud コンソール
エージェントのデプロイの基本的な評価を実行するには:
- Google Cloud コンソールで、[エージェント プラットフォーム] > [エージェント] ページに移動します。
- 左側のナビゲーション メニューで [デプロイ] を選択し、エージェントを選択します。
- [ダッシュボード] タブを選択し、[評価] サブセクションを選択します。
- [新しい評価] をクリックします。
- プロンプトに従って、テストケースを定義し、指標を選択します。
- [評価を実行] をクリックします。
詳細なガイドについては、オフライン評価を実行するまたはオンライン モニターによる継続評価をご覧ください。
Agent Platform SDK
エージェントの改善ワークフローは、評価、分析、最適化の継続的なサイクルである品質フライホイールに基づいて構築されています。エージェントのパフォーマンスを評価し、結果を分析して障害のクラスタを特定し、プロンプトまたは構成を最適化してこれらの問題に対処します。この反復プロセスにより、パフォーマンスのギャップを事前に検出して解決できます。
始める前に
必要な拡張機能を含む Agent Platform SDK をインストールします。
pip install google-cloud-aiplatform[adk,evaluation]
Agent Platform SDK クライアントを初期化します。
import vertexai from vertexai import Client client = Client(project="YOUR_PROJECT_ID", location="YOUR_LOCATION")
ここで
YOUR_PROJECT_ID: 実際の Google Cloud プロジェクト ID。YOUR_LOCATION: クラウド リージョン(例:us-central1)。
1. 評価ケースを定義する(ユーザー シミュレーション)
テストケースを手動で作成する代わりに、ユーザー シミュレーションを使用して、エージェントの指示に基づいて合成の複数ターンの会話プランを生成します。
# Generate scenarios from agent info eval_dataset = client.evals.generate_conversation_scenarios( agent_info=my_agent_info, config={ "count": 5, "generation_instruction": "Generate scenarios where a user asks for a refund.", }, )
詳細については、Agent Platform SDK リファレンスをご覧ください。
2. 推論を実行する
エージェントに対して評価ケースを実行して、トレースをキャプチャします。
# Generate behavior traces using a multi-turn user simulator traces = client.evals.run_inference( agent=my_agent, src=eval_dataset, config={"user_simulator_config": {"max_turn": 5}} )
3. 計算指標(AutoRaters)
マルチターン AutoRater を使用して、キャプチャしたトレースをスコアリングします。これらの評価者は、会話の履歴全体を分析して、指示の遵守とツールの使用状況を確認します。
# Evaluate the traces using multi-turn metrics eval_result = client.evals.evaluate( traces=traces, metrics=[ "MULTI_TURN_TASK_SUCCESS", "MULTI_TURN_TOOL_USE_QUALITY" ] )
4. 分析を実施する(障害クラスタ)
システムは、エージェントの主な問題を特定するために、失敗した評価を自動的に損失クラスタにグループ化します。
# Identify the top failure patterns in the results loss_clusters = client.evals.generate_loss_clusters(eval_result=eval_result)
5. エージェントを最適化する
最後に、Optimizer サービスを使用して、障害データに基づいてエージェントのシステム指示またはツール説明をプログラムで調整します。
# Automatically refine the system prompt to fix identified issues optimize_result = client.optimizer.optimize( targets=["system_prompt"], benchmark=eval_result, tests=eval_dataset )