快速入門:評估託管代理程式

注意

Azure 開發者 CLI 評估體驗目前處於預覽階段。

在此快速入門中,您將評估您在部署您的第一個託管 Agent 中部署的託管 Agent。 你提供測試資料集,選擇評估者,對部署的代理執行評估,並檢視分數。 每個步驟都展示了五種執行相同任務的方法:Azure Developer CLI(azd)、Microsoft Foundry 入口網站、Python SDK、C# SDK 以及 JavaScript/TypeScript SDK。

評估為你的客服人員建立品質基準,並讓你能設定接受門檻,例如任務依從度通過率,然後再釋出給使用者的變更。

先決條件

在開始之前,您需要:

  • 一個已部署且可調用的託管代理,來自 部署你的第一個託管代理。 對於 Azure Developer CLI 路徑,您還需要在該快速入門中建立的azd專案目錄。

  • Foundry 資源上的 Foundry User 角色。

  • 在同一 Foundry 專案中部署聊天完成模型,以作為評分回覆的評審模型使用。 你可以重用代理已經使用的部署模型,包括之前快速啟動的那個,所以不需要另外部署。

    重要

    Foundry RBAC 角色最近已重新命名。 Foundry 用戶、Foundry 擁有者、Foundry Account Owner 以及 Foundry Project Manager 先前分別被稱為 Azure AI 使用者、Azure AI 擁有者、Azure AI 帳戶擁有者及 Azure AI Project 管理者。 在更名期間,你可能還會在某些地方看到之前的名字。角色 ID 與核心權限不會因命名而改變。

關於所有評估角色的需求,請參閱 「設定評估工作流程權限」。

每個步驟都有五條路徑。 請使用您偏好的方案:

  • Azure Developer CLI:擴充azd ai agent功能(azure.ai.agents),版本 0.1.40-preview 或更新版本,提供azd ai agent eval指令。 這個擴充功能包含在 microsoft.foundry 你之前快速啟動時安裝的擴充功能裡。 使用 azd ext list 確認已安裝的版本,並在必要時執行 azd ext upgrade microsoft.foundry。 請以 azd auth login.登入。
  • Foundry 入口網站:可存取 Foundry 入口網站。
  • Python SDK:Python 3.10 或更新版本,並使用 az login 登入 Azure CLI,以便 DefaultAzureCredential 可以進行驗證。 若要進行安裝,請參閱安裝 Azure CLI。
  • C# SDK:.NET 10 SDK 或更新版本,並且使用 Azure CLI 登入az login,這樣DefaultAzureCredential才能進行認證。
  • JavaScript/TypeScript SDK:Node.js 20 LTS 或更新版本,以及已使用 az login 登入的 Azure CLI,以便 DefaultAzureCredential 進行驗證。

步驟一:確認你已部署的特務

評估會針對已部署且可叫用的代理程式執行。 在設定評估前,請確認你的客服人員已部署並可用。

從你的 azd 專案目錄中,確認代理程式已部署並可調用:

azd ai agent show

發送測試提示:

azd ai agent invoke "Write a haiku about deploying cloud applications."

你應該會在幾秒內看到回覆。

步驟二:設置內建評估器

從內建的評估器開始,根據測試資料集為你的代理程式評分。

首先,為你的代理建立一個測試查詢的 JSONL 檔案。 每一行都是帶有 query 欄位的 JSON 物件。 將它儲存在你代理人的來源資料夾中,格式為 src/<your-agent-name>/tests/queries.jsonl:

{"query": "Write a haiku about deploying cloud applications."}

接著在同一個代理程式原始碼資料夾中建立一個 eval.yaml 檔案,命名為 src/<your-agent-name>/eval.yaml。 它會指向你的資料集,並列出可套用的內建評估器。 dataset.local_uri路徑是相對於這個資料夾的。 請將<your-agent-name>替換成您託管之 Agent 的名稱,並將<your-chat-completion-deployment>替換成裁判模型部署:

name: agent-eval
agent:
  name: <your-agent-name>
  kind: hosted
dataset:
  local_uri: tests/queries.jsonl
evaluators:
  - builtin.intent_resolution
  - builtin.task_adherence
options:
  eval_model: <your-chat-completion-deployment>
max_samples: 15

eval_model值為用來評分回覆的裁判模型;您可以重新使用您的 Agent 已使用的部署。

步驟三:進行評估

將套件與你部署的代理程式對照。 服務會將每個測試查詢傳送給客服人員,擷取回應,並以您選擇的評估者評分。

注意

以目標為基礎的評估會直接叫用你的代管代理程式。 它適用於使用響應或調用協定並進行同步、非串流執行的代理程式。 若要評估使用 A2A 或 Activity 協定,或其他執行模式(例如長時間執行或串流)的代理程式,請改為評估您的代理程式所產生的追蹤資料。 詳見 追蹤評估。

從 azd 工作區根目錄執行評估:

azd ai agent eval run --config eval.yaml

注意

azd ai agent eval run 會將 --config 路徑解析為相對於 src/ 底下代理程式的來源資料夾(例如 src/<your-agent-name>/eval.yaml),而不是目前目錄。 請將 eval.yaml 及其 local_uri 所指向的資料集保留在該資料夾中。

指令讀 eval.yaml,將每個查詢傳送給你的客服人員,評分回應,完成後會列印摘要:

Eval run started
   Eval: eval_b36748dede424e4ba3f8e6c99ca2cf27
   Run:  evalrun_5f72ef189ad24790a32128e6f230b131
   (✓) Done  Eval run

Results:    1 total, 1 passed, 0 failed, 0 errored

Per-criteria results:
  intent_resolution: 1 passed, 0 failed, 0 errored
  task_adherence: 1 passed, 0 failed, 0 errored

步驟四:檢視結果

評估通常會在幾分鐘內完成,視查詢數量而定。

列出近期評價:

azd ai agent eval list
    Eval ID                                Name        Status of last run  Runs
    -------                                ----        ------------------  ----
*   eval_b36748dede424e4ba3f8e6c99ca2cf27  agent-eval  Completed           1

* = active eval in current environment

顯示最新的評估及其執行結果:

azd ai agent eval show
Eval:   eval_b36748dede424e4ba3f8e6c99ca2cf27
Name:   agent-eval
Agent:  <your-agent-name>
Runs:   1

Recent runs:
  Run ID                                    Status     Passed  Failed  Created
  ------                                    ------     ------  ------  -------
  evalrun_5f72ef189ad24790a32128e6f230b131  Completed  1/1     0       2026-06-17 14:52 UTC

使用這些結果來確認受評估的是哪個代理程式版本,以及產生了哪些評估器分數。 欲查看每位評估者詳細資料及 Foundry 入口網站報告連結,請執行 azd ai agent eval show <eval-id> --eval-run-id <run-id>。

清理資源

本快速入門會在您的 Foundry 專案中註冊資料集、評估及執行記錄。 這些資產幾乎不會產生持續成本。

要移除託管代理和你建立的 Azure 資源,請依照「部署你的第一個託管代理」中的清理步驟。

Troubleshooting

Issue Solution
azd ai agent eval 找不到命令 執行 azd ext list,並確認擴充功能 azd ai agent 的版本為 0.1.40-preview 或更新版本。 使用 azd ext upgrade microsoft.foundry 升級。
azd ai agent eval run 找不到那名特工 確認代理已部署並可用 azd ai agent show呼叫。 如有需要,使用 azd deploy 重新部署。
ModuleNotFoundError 適用於 azure.ai.projects 或 azure.identity 安裝 SDK: pip install "azure-ai-projects>=2.0.0" azure-identity.
C#: The type or namespace name 'Evals' (or 'AIProjectClient') could not be found 加入這些套件:dotnet add package Azure.AI.Projects --prerelease、dotnet add package OpenAI 和 dotnet add package Azure.Identity。
AuthenticationError, DefaultAzureCredential或 Forbidden 失敗 使用 az login 登入(若使用 CLI 路徑,則使用 azd auth login),並確認你在該專案上具有 Foundry User 角色。 資料集上傳也需要對專案儲存空間的寫入權限。 關於所有角色需求,請參閱 「設定評估工作流程權限」。
找不到代理程式目標 使用 project_client.agents.get("<your-agent-name>") 或 project_client.agents.list() 驗證代理程式名稱和版本。
許多發生錯誤的資料列或異常偏低的分數 打開報告網址,檢查列是否因代理回應或評估器錯誤而失敗。 先修正潛在錯誤,然後重新執行評估。
未找到評估模型部署 在FOUNDRY_MODEL_NAMEeval_modeleval.yaml底下,驗證裁判模型部署 (針對 SDK 為,或者是>中的) 出現在您的專案中。

你學到了什麼

在這篇快速啟動指南中,您將:

  • 為你的代管代理程式建立測試資料集並選擇評估者。
  • 對已部署的 Agent 已進行評估。
  • 已檢視彙總及列級結果。
  • 每個任務都用 Azure Developer CLI、Foundry 入口、Python SDK、C# SDK 或 JavaScript/TypeScript SDK 完成。

下一步

持續優化您的評估工作流程: