這項功能可讓您評估 AI 代理。您可以運用 Gen AI Evaluation Service 評估及提升代理程式的效能、安全性和品質。
評估類型
| 評估類型 | 用途 | 頻率 |
|---|---|---|
| 快速評估 | 測試新的代理程式邏輯或模型變更。 | 頻繁 (開發) |
| 測試案例評估 | 針對特定資料集進行迴歸測試。 | 已排定時間 (CI/CD) |
| 線上監控 | 追蹤生產環境代理程式部署作業的品質。 | Continuous (正式環境) |
評估工作流程
您可以使用 Google Cloud 主控台或 Agent Platform SDK 評估代理。
Google Cloud 控制台
如要執行代理部署的基本評估,請按照下列步驟操作:
- 在 Google Cloud 控制台,前往「Agent Platform」>「Agents」頁面。
- 在左側導覽選單中,選取「部署」,然後選取您的代理程式。
- 選取「資訊主頁」分頁標籤,然後選取「評估」子區段。
- 按一下「New Evaluation」(新增評估)。
- 按照提示定義測試案例並選取指標。
- 按一下「執行評估」。
如需更詳細的指南,請參閱「執行離線評估」或「使用線上監控器進行持續評估」。
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 )
後續步驟
- 執行離線評估
- 查看評估結果
- 進一步瞭解 Gen AI 評估服務