A/B 測試
A/B 測試會分割兩個變體之間的即時生產流量,並持續評估具有統計意義的效能。AgentCore Gateway 會處理流量路由;您的代理程式程式碼不會變更。
A/B 測試是 AgentCore 最佳化改進迴圈中的驗證步驟。產生建議並使用離線批次評估進行驗證後,您會執行 A/B 測試以確認變更可改善即時流量的效能,然後再進行完整推出。您可以將流量路由到單獨的 AgentCore 執行期 (目標型),或將不同的組態交付到相同的 AgentCore 執行期 (組態套件)。
何時使用 A/B 測試
當您需要下列項目時,請使用 A/B 測試:
-
在將所有生產流量路由到最佳化組態之前驗證建議。
-
在具有統計嚴格性的即時流量上比較兩個模型版本 (例如,從一個基礎模型移至另一個基礎模型)。
-
測量實際使用者工作階段間提示變更的影響,而不是精心策劃的測試集。
-
在完全部署之前,透過對一部分的即時流量進行驗證,逐步推出新功能 (新工具、更新系統提示)。
運作方式
A/B 測試遵循此流程:
-
您可以使用 啟動 A/B 測試
agentcore run ab-test,指定已部署的 AgentCore Gateway、兩種變體 (控制和處理)、流量權重和線上評估組態以進行評分。(執行角色為選用 — 傳遞--role-arn以自攜,或讓 CLI 建立一個。) 每個變體都會參考 AgentCore Gateway 目標或組態套件版本。一旦命令傳回 (使用--disable-on-create開始停止),測試就會啟動 RUNNING。 -
AgentCore Gateway 會分割流量。測試執行後,閘道會根據執行階段工作階段 ID 分割兩個變體之間的傳入流量。指派是黏性的;指定的工作階段 ID 一律會路由至相同的變體。
-
線上評估會為每個工作階段評分。您指定的線上評估組態會在每個工作階段完成時對其執行評估程式。A/B 測試彙總管道會將分數映射至變體。
-
服務會計算統計意義。隨著樣本大小的增加,服務會計算每個變體的每個評估器指標:平均分數、絕對和百分比變化、p 值、信賴區間和顯著性標記。低於 0.05 的 p 值表示差異具有統計顯著性。
agentcore view ab-test <id>隨時使用 輪詢結果,而不會影響統計有效性。 -
您可以提升處理變體。當結果顯著時,執行
agentcore promote ab-test -i <id>以停止測試並將處理變體寫入agentcore.json,然後agentcore deploy轉出。(您也可以agentcore stop ab-test -i <id>在不提升的情況下進行提升。)
A/B 測試模式
A/B 測試支援兩種變體組態模式:
目標型變體
當變更包含程式碼變更、架構升級,或您想要比較完全不同的客服人員實作時,請使用 。每個變體都會路由至指向不同執行時間端點的不同 AgentCore Gateway 目標。
組態套件變體
當變更純為組態時 (系統提示字元、模型 ID 或工具描述),請使用 。這兩個變體都以不同的組態套件版本在相同的 AgentCore 執行期上執行。AgentCore Gateway 透過 W3C 套件標頭將套件參考插入每個請求,執行時間可以使用它來使用 AgentCore SDK 提取組態。
選擇模式
| 面向 | 目標型變體 | 組態套件變體 |
|---|---|---|
|
有何不同 |
整個執行時間端點 (程式碼、架構、模型) |
系統提示、工具描述、模型參數 |
|
路由 |
每個變體的目標不同 |
相同的目標、不同的組態套件 |
|
評估組態 |
每個 AgentCore 執行期一個線上評估組態 |
單一共用線上評估組態 |
|
使用情況 |
程式碼變更、架構升級、比較不同的客服人員 |
單一 AgentCore 執行時間上的僅限組態變更 |