什麼是代理優化器?

Foundry Agent Service 中的代理優化器會自動透過評估代理行為並產生更佳配置,來改善即時代理與託管代理。 根據代理類型,這些配置可能包括改進的指令、技能、工具描述及型號選擇。

打造有效的 AI 代理程式需要大量提示詞工程。 你會部署一個帶有手工指令的代理,測試與真實情境,找出弱點,修改提示,然後重複。 這個循環緩慢、主觀且無法擴展。 代理優化器會自動化這個循環,讓你能專注於代理的核心邏輯。

支援的代理類型

優化器對兩種代理類型使用相同的評估驅動改進迴路,但設定、優化目標與部署經驗有所不同。

代理人類型 優化器能改進的地方 如何開始執行
提示代理 指令、函式呼叫工具描述與模型選擇 請使用Foundry入口網站的優化精靈。 不需要變更程式碼。
託管代理 說明、技能、函式呼叫工具描述與型號選擇 使用 Foundry Toolkit,自動建置最佳化支援,或讓代理程式支援最佳化工具,並使用 Azure Developer CLI。

提示詞 Agent

對於提示代理,優化器會評估選定的代理版本並產生替代指令。 它也能改善函式呼叫工具的描述,並比較多個候選模型部署中的提示。

提示代理程式函式呼叫工具會在用戶端上執行。 優化器可以改進工具與參數描述,以指導模型函式呼叫,但無法在工具描述優化過程中評估工具執行。

從代理人在 Foundry 入口網站的 優化 標籤啟動優化精靈。 精靈會在提交執行前引導你選擇代理版本、資料集、評估標準及優化模型。 你可以從代理人追蹤產生資料集,選擇現有的 Foundry 資料集,或在嚮導中上傳資料集。

當執行結束後,比較分數變化、檢閱前後提示,並檢查每個評估工具的結果。 接著你可以將選中的候選者從優化執行中提升到新的提示代理版本。

關於端對端入口網站體驗,請參見 快速啟動:優化提示代理。

託管代理

對於託管代理,優化器會改善執行時程式碼載入的設定。 代理程式需要優化套件和一個基線設定,該設定能揭露指令,並可選擇性地提供技能與函式呼叫工具定義。 Foundry Toolkit 可以自動為此整合建立基礎架構。 在 Azure Developer CLI 工作流程中,請先加入整合,再執行最佳化工具。 優化器接著能在不改變代理核心邏輯的情況下產生並評估候選配置。

託管代理程式最佳化支援本機 JSONL 資料集及 Foundry 專案中註冊的資料集,包括從追蹤產生的評估資料集。 執行後,將選中的候選方案套用到本地設定,檢視變更後重新部署代理程式。

關於端對端的託管代理體驗,請參見 快速入門:優化託管代理。

優化工作流程

兩種代理類型遵循相同的高階路徑:

  1. 選擇代理人基線。 選擇您比較候選項目的提示代理程式版本或託管代理程式組態。
  2. 選擇一個評估資料集。 請使用現有或已上傳資料集中的具代表性任務。 你也可以使用由代理人追蹤產生的註冊資料集。
  3. 選擇評估標準。 選擇內建或客製化評估器,來衡量你想改善的行為。
  4. 執行優化器。 選擇可用的優化目標與模型,然後產生並評估候選對象。 針對提示代理程式,請在提交執行前先在入口網站中檢閱成本估算。
  5. 查看結果。 將候選人分數與你的基準比較,然後挑選最佳候選人。 在可取得的情況下,請檢閱執行後測量的權杖使用量。 請參見 「了解優化結果」。
  6. 套用選取的候選項目。 將提示詞代理程式候選版本提升為新的代理程式版本,或套用受託管代理程式的設定並重新部署。

託管代理需要與優化器相容的程式碼整合。 當你開始優化時,Foundry Toolkit 會自動為這個整合做支架。 對於 Azure 開發者 CLI 工作流程,開始前先加入優化套件和基準設定。 請參閱讓您的代理程式可供最佳化工具使用 提示詞代理不需要這類程式碼整合。

代理優化器的運作方式

代理優化器執行閉環評估與改進循環:

  1. 評估基線。 優化器會根據任務資料集調用你的代理,並根據你定義的標準或內建預設值來評分每個回應。 基準分數是你的代理程式在任何變更前的分數。
  2. 培養候選人。 優化器會產生稱為 候選配置的替代配置,例如重寫指令、發現技能、改良工具描述或不同模型選擇。 可用的候選人類型取決於代理人類型。
  3. 評估候選人。 優化器會針對相同資料集測試每個候選者。
  4. 排序並推薦。 優化器依據綜合 分數排名結果,該分數介於 0.0 至 1.0 之間,代表整體表現,並以 標記最佳候選者。 ★ 接著你申請並派遣中獎者。

整個流程都運行在雲端。 執行時間取決於資料集大小、候選數量及所選模型。

對於託管代理來說,當你讓代理程式 優化器就緒後,執行間就不需要再做程式碼變更。 load_config() 正常回傳基準線,並在執行過程中提供最佳化配置,沒有功能旗標或條件邏輯。

Warning

在最佳化期間,最佳化工具會針對資料集中的每個工作調用您的 Agent 來進行評估。 如果您的代理呼叫外部工具——如 API、資料庫或第三方服務——這些呼叫會在每次評估執行中執行。 為避免意外副作用(電荷、狀態突變或速率限制),建議在優化時使用測試端點或模擬工具實作。

優化目標

優化目標是代理程式設定中的特定層面,優化器可對其加以改進。 可用的目標取決於劑型。 對於託管代理,優化器會自動從基準設定 eval.yaml 中啟用適用的目標。

標的 優化器改進的部分 提示代理程式 託管代理
指令調校 重寫並優化系統提示以提升分數。 以所選的提示代理版本作為基準。 當基線有檔案 instructions.md 時會啟動。
技能提升 在不改變用途的情況下,優化每個可重複使用技能的內容。 不支援。 當基準中有包含 SKILL.md 檔案的 skills/ 目錄時,便會啟用。
工具優化 改進函式呼叫工具與參數描述,使模型能更準確地呼叫工具。 它不會改變類型、預設值或必填欄位。 可用於函式呼叫工具。 由於這些工具由客戶執行,優化過程中不會評估工具執行。 當基線有檔案 tools.json 時會啟動。 僅支援函式呼叫工具。
型號選擇 跨多個模型部署評估該代理,以找出品質與成本之間的最佳權衡。 在優化精靈中選擇候選模型。 在 eval.yaml 中將候選項目部署新增至 model_search_space。

關於託管代理基線輸入,請參見 「讓你的代理優化器就緒」。 要執行與設定託管代理目標,請參閱 優化代理指令、技能、工具與模型。

型號

代理優化器在優化執行時會使用兩個模型。 兩者都必須部署在您的 Foundry 專案中。

模型 託管代理程式設定金鑰 託管代理程式 CLI 旗標 Role 支援的模型
評估模型 eval_model --eval-model 根據資料集中的標準評分代理人的反應 任何對話補全模型 (例如 gpt-4.1-mini)
最佳化模型 optimization_model --optimize-model 產生候選配置(指令、技能、工具、模型選擇) gpt-5、gpt-5.1、gpt-5.2、gpt-5.4、gpt-5.5、DeepSeek-V4-Pro、DeepSeek-V-3.2

評估模型會針對每位評估者、每項任務及每次候選人評估各執行一次。 它會讀取代理人的回應和每個標準,然後回傳一個二進位分數。 優化模型分析基線結果,並在配置目標中生成更優秀的候選人,包括指示、技能、工具與模型。 由於它能針對整個資料集進行推理,更強大的優化模型通常能產生更優秀的候選方案。

對於提示代理人,請在優化精靈中選擇評估模型與候選模型。 對於託管代理,請在 eval.yaml 中指定模型,或使用 CLI 旗標。 此 optimization_model 設定是主機代理執行所必需的。 關於配置步驟,請參見 「選擇評估與優化模型」。

了解優化結果

本節說明結果表、綜合分數的計算方法,以及如何解讀改進。

Tip

在 Foundry 入口網站查看優化結果。 進入你的專案 ,選擇代理人,再選擇你的代理人,然後點選 「優化 」標籤,查看分數比較、提示或設定變更,以及評估者細節。

針對提示代理程式,已完成的執行會顯示基準分數與候選項目分數、提示的前後版本比較、模型和工具描述比較,以及每個評估工具的分數。

對於託管代理,CLI 也會顯示結果表:

Results:
  Candidate              Score  Eval  Strategy
  ──────────────────── ───────  ────  ────────
  baseline                0.93  View
  candidate_1             0.90  View  skill_policy-reviewer
  candidate_2 ★           0.94  View  skill_policy-reviewer, tools
  candidate_3             0.94  View  skill_policy-reviewer, system_prompt, tools
  candidate_4             0.93  View  skill_policy-reviewer, tools

  Candidate IDs:
      baseline             cand_a8a951...
      candidate_1          cand_8d5c85...
    ★ candidate_2          cand_a0ea2e...
      candidate_3          cand_2ae7bb...
      candidate_4          cand_0f6485...

  Apply the best candidate locally, then deploy:
    azd ai agent optimize apply --candidate cand_a0ea2e...
    azd deploy

結果表欄位

Column Description
候選人 組態的名稱。 baseline 是你目前在最佳化前的代理程式。
分數 所有任務與標準的綜合分數範圍為0.0至1.0。
Eval Foundry 入口網站的評估職缺連結。
策略 候選項目中包含的突變目標,例如,skill_policy-reviewer, tools。

★ 表示綜合分數最高的候選人。 這是建議部署的候選項。

分數的計算方式

你資料集中的每位評估者都會產生代理人回應的原始分數。 優化器會處理這些分數,產生結果所示的綜合分數:

  • 重新調整:每位評估者的原始分數會重新調整為0–1。
  • 必要時翻轉:若評估器設定為較低為佳,分數會被翻轉,以便所有評估器皆採用「越高越好」的標準。
  • 平均值:將所有評估者與任務的重新調整分數平均以產生綜合分數。

綜合分數:所有重新調整後評估者在所有任務中分數的平均值。

解讀分數提升

改進 解譯
低於0.03 噪音。 這並不是實質性的改善。
0.03 到 0.10 中度改善。 值得部署。
0.10 到 0.20 明顯的進步。
大於0.20 大幅改善。 很可能源自不佳的基線。

詞元取捨

優化後的指令通常更長且更詳細,這會增加回應標記的使用率。 考量下列因素:

  • 代幣提升是否與分數提升成正比
  • 費用增加是否符合你的預算
  • 回應是否不必要地冗長,或額外長度是否帶來價值

關於執行前的成本範圍及執行後測量使用量的詳細資訊,請參閱 代理優化器成本估算與代幣使用。

限制與可取得性

  • 代理優化器支援提示代理與託管代理。
  • 提示代理程式最佳化執行會在 Foundry 入口網站中開始。 您可以從已完成的執行中,將所選候選項目提升為新的代理程式版本。
  • 託管代理優化在 所有有託管代理的地區皆可使用,挪威東部除外。
  • 託管代理優化需要回應 協定。