回答流暢,並不能證明 AI 代理程式使用了規定的流程。AWS 於 9 月 22 日發布的指南說明 Strands Evals 與 Amazon Bedrock AgentCore 如何根據記錄的執行軌跡評估技能選擇及指示遵循情況。兩個系統處理缺少評估的方式不同,會影響讀者對通過旗標的解讀。
重大變化
- 有哪些改變:這些工具分別檢查流程是否載入、是否適合任務,以及其步驟是否獲得遵循。
- 為何重要:檢視的 Strands 原始碼可能將未經評判的個案標為通過。若僅根據該旗標決定是否發布,可能忽略根本未載入的必需技能。
- 後續觀察重點:除了分數,也要檢查評估覆蓋率:哪些預期載入事件有被觀察到?哪些呼叫有足夠的執行紀錄可供判斷?
三種檢查,各自回答不同問題
《Agent Skills 規格》將技能定義為一個SKILL.md檔案。技能名稱與說明可協助代理程式判斷何時使用;啟用後才會載入指示本文。因此,成功載入與是否適當選擇或執行,是不同的問題。
檢查項目 | 證據與結果 | 限制 |
|---|---|---|
Strands | 記錄到指定技能成功載入;以確定性方式判定通過或失敗。 | 不評估技能是否適用或是否確實執行。 |
AgentCore 選擇準確度 | 有技能被呼叫時會檢視技能、請求內容、先前上下文,以及可用時的技能目錄;由模型判斷「是」或「否」。 | 不評判完全沒有呼叫技能是否正確。 |
AgentCore 指示遵循情況 | 檢視已載入的指示與完整工作階段,分成五級,從完全遵循到未遵循。 | 評估的是有紀錄可查的步驟遵循情況,而非底層工作的正確性。 |
經固定版本確認的SkillInvoked實作要求有一筆狀態為loaded的相符載入事件。若沒有成功載入,缺少、失敗或尚未解決的嘗試都會使這項斷言失敗。系統不會呼叫評判模型。若測試案例要求使用特定技能,這項檢查可直接驗證是否載入。
AgentCore 可能回傳零筆結果
依據AgentCore 文件,若未偵測到呼叫紀錄或技能本文訊號,兩種評判器都會略過工具呼叫。若工作階段中沒有偵測到技能呼叫,就不會產生任何結果。
即使沒有技能目錄,仍可評判選擇:評估器會使用請求與對話上下文。指示遵循評估則需要被呼叫的技能及其載入本文,並以完整工作階段作為後續步驟的證據。
Strands 可能回傳通過的 N/A 列
檢視原始碼可見,Strands Evals 在已檢查的提交版本9ea55c9中採用不同呈現方式;本文說明的是該實作,並非所有已安裝的 SDK 版本。
若有執行軌跡但沒有技能呼叫,選擇評估器會回傳不適用的列,並以0.0作為佔位分數,test_pass=true。是否應該不使用技能,不在該評估器的判斷範圍內。
指示遵循評估器在沒有技能呼叫、載入遭拒或本文不可用時,也會回傳通過的 N/A 列。若缺少執行軌跡,兩種評估器都會回傳通過旗標為 false 的 N/A。
其彙總函式不會將 N/A 列納入平均值。若所有列都是 N/A,則保留佔位數值 0,並合併各列的通過旗標。因此,必須同時查看數值、旗標與原因,才能正確解讀。
若路由規則要求使用特定技能,應將兩種評判器與具名載入斷言搭配使用。若要評估是否遵循指示,應先確認指示與執行證據都有記錄,再將通過旗標視為判斷結果。BIG CHANGE 檢視文件與原始碼,並未實際執行這些評估器。



