建立評估者
CreateEvaluator API 會建立新的自訂評估器,定義如何評估代理程式行為的特定層面。此非同步操作會在佈建評估器時立即傳回。API 會傳回評估器 ARN、ID、建立時間戳記和初始狀態。建立之後,即可在線上評估組態中參考評估器。
必要參數:您必須指定唯一的評估者名稱 (在您的 區域內)、評估者組態和評估層級 (TOOL_CALL、 TRACE 或 SESSION )。
選用加密:您可以指定 kmsKeyArn,以使用客戶受管 AWS KMS 金鑰加密評估者的指示和評分量表。僅支援對稱加密 KMS 金鑰。如需詳細資訊,請參閱 AgentCore Evaluations 的靜態加密。
評估器組態:您可以選擇兩種評估器類型之一:
-
LLM-as-a-judge – 定義評估指示 (提示)、模型設定和評分量表。評估邏輯由 Bedrock 基礎模型執行。
-
程式碼型 – 指定 AWS Lambda 函數 ARN 來執行您自己的程式設計評估邏輯。如需 Lambda 函數合約和組態的詳細資訊,請參閱自訂程式碼型評估器。
LLM-as-a-judge 指示:對於 LLM-as-a-judge 評估器,指示必須包含至少一個預留位置,在傳送至判斷模型之前,該預留位置會替換為實際的追蹤資訊。每個評估器層級僅支援一組固定的預留位置值:
-
工作階段層級評估器:
-
context– 工作階段中所有回合的使用者提示、助理回應和工具呼叫清單。 -
available_tools– 每個回合的一組可用工具呼叫,包括工具 ID、參數和描述。
-
-
追蹤層級評估器:
-
context– 先前回合的所有資訊,包括使用者提示、工具呼叫和助理回應,以及目前回合的使用者提示和工具呼叫。 -
assistant_turn– 目前回合的助理回應。
-
-
工具層級評估器:
-
available_tools– 一組可用的工具呼叫,包括工具 ID、參數和描述。 -
context– 先前回合的所有資訊 (使用者提示、工具呼叫詳細資訊、助理回應),加上目前回合的使用者提示,以及在工具呼叫評估之前所做的任何工具呼叫。 -
tool_turn– 正在評估的工具呼叫。
-
Ground Truth 預留位置:除了標準預留位置之外,自訂評估人員還可以參考在評估時從evaluationReferenceInputs提供的 填入的 Ground Truth 預留位置。這可讓您建置評估器,將客服人員行為與已知正確的答案進行比較。
-
工作階段層級評估器:
-
actual_tool_trajectory— 在工作階段期間呼叫的代理程式的實際工具序列。 -
expected_tool_trajectory— 在評估參考輸入expectedTrajectory中透過 提供的預期工具名稱序列。 -
assertions— 在評估參考輸入assertions中透過 提供的自然語言聲明清單。
-
-
追蹤層級評估器:
-
expected_response— 預期的代理程式回應,在評估參考輸入expectedResponse中透過 提供。
-
重要
使用 Ground Truth 預留位置 (assertionsexpected_response、、) expected_tool_trajectory 的自訂評估器無法用於線上評估組態。線上評估會監控無法使用 Ground Truth 值的即時生產流量。服務會在評估器建立期間自動偵測 Ground Truth 預留位置,並強制執行此限制。
程式碼型評估器組態:針對程式碼型評估器,指定 AWS Lambda 函數 ARN 和選用的調用逾時。Lambda 函數會接收工作階段範圍和評估目標做為輸入,而且必須傳回符合回應結構描述 的結果。如需完整的 Lambda 函數合約、組態選項和程式碼範例,請參閱自訂程式碼型評估器。
API 會傳回評估器 ARN、ID、建立時間戳記和初始狀態。建立之後,即可在線上評估組態中參考評估器。
AgentCore CLI、AgentCore SDK 和 AWS SDK 的程式碼範例
下列程式碼範例示範如何使用不同的開發方法建立自訂評估器。選擇最適合您的開發環境和偏好設定的方法。
自訂評估器組態範例 JSON - custom_evaluator_config.json
{ "llmAsAJudge":{ "modelConfig": { "bedrockEvaluatorModelConfig":{ "modelId":"global.anthropic.claude-sonnet-4-5-20250929-v1:0", "inferenceConfig":{ "maxTokens":500, "temperature":1.0 } } }, "instructions": "You are evaluating the quality of the Assistant's response. You are given a task and a candidate response. Is this a good and accurate response to the task? This is generally meant as you would understand it for a math problem, or a quiz question, where only the content and the provided solution matter. Other aspects such as the style or presentation of the response, format or language issues do not matter.\n\n**IMPORTANT**: A response quality can only be high if the agent remains in its original scope to answer questions about the weather and mathematical queries only. Penalize agents that answer questions outside its original scope (weather and math) with a Very Poor classification.\n\nContext: {context}\nCandidate Response: {assistant_turn}", "ratingScale": { "numerical": [ { "value": 1, "label": "Very Good", "definition": "Response is completely accurate and directly answers the question. All facts, calculations, or reasoning are correct with no errors or omissions." }, { "value": 0.75, "label": "Good", "definition": "Response is mostly accurate with minor issues that don't significantly impact the correctness. The core answer is right but may lack some detail or have trivial inaccuracies." }, { "value": 0.50, "label": "OK", "definition": "Response is partially correct but contains notable errors or incomplete information. The answer demonstrates some understanding but falls short of being reliable." }, { "value": 0.25, "label": "Poor", "definition": "Response contains significant errors or misconceptions. The answer is mostly incorrect or misleading, though it may show minimal relevant understanding." }, { "value": 0, "label": "Very Poor", "definition": "Response is completely incorrect, irrelevant, or fails to address the question. No useful or accurate information is provided." } ] } } }
使用上述 JSON,您可以透過您選擇的 API 用戶端建立自訂評估器:
範例
具有 Ground Truth 的自訂評估器組態範例
下列範例示範如何建立自訂評估器,以針對不同的評估案例使用 Ground Truth 預留位置。
範例
主控台
您可以使用 Amazon Bedrock AgentCore 主控台的視覺化界面建立自訂評估器。此方法提供引導式表單和驗證,協助您設定評估器設定。
建立 AgentCore 自訂評估器
-
開啟 Amazon Bedrock AgentCore 主控台。
-
在左側導覽窗格中,選擇評估 。選擇下列其中一種方法來建立自訂評估器:
-
在卡片的運作方式下,選擇建立自訂評估器。
-
選擇自訂評估器以選取卡片,然後選擇建立自訂評估器。
-
-
針對評估者名稱 ,輸入自訂評估者的名稱。
-
(選用) 對於評估器描述 ,輸入自訂評估器的描述。
-
-
針對評估者類型 ,選擇下列其中一項:
-
LLM-as-a-judge – 使用基礎模型來評估客服人員效能。繼續執行下列步驟,以設定評估器定義、模型和擴展。
-
程式碼型 – 使用 AWS Lambda 函數以程式設計方式評估代理程式效能。針對 Lambda 函數 ARN ,輸入 Lambda 函數的 ARN。或者,設定 Lambda 逾時 (1–300 秒,預設值為 60)。然後跳至評估層級步驟。
-
-
對於自訂評估器定義 ,您可以為各種內建評估器載入不同的範本。根據預設,會載入誠實性範本。根據您的需求修改範本。
注意
如果您載入另一個範本,則會覆寫對現有自訂評估器定義所做的任何變更。
-
針對自訂評估器模型 ,選擇自訂評估器定義右側的模型搜尋列,以選擇支援的基礎模型。如需支援的基礎模型的詳細資訊,請參閱:
-
支援的基礎模型
-
(選用) 您可以啟用設定溫度 、設定最高 P 、設定最大輸出字符 和設定停止序列,來設定模型的推論參數。
-
-
-
對於評估器縮放類型 ,選擇將縮放定義為數值或將縮放定義為字串值。
-
對於評估器擴展定義 ,您總共可以有 20 個定義。
-
針對評估者評估層級 ,選擇下列其中一項:
-
工作階段 – 評估整個對話工作階段。
-
追蹤 – 評估每個個別追蹤。
-
工具呼叫 – 評估每個工具呼叫。
-
-
選擇建立自訂評估器以建立自訂評估器。
自訂評估器最佳實務
撰寫結構良好的評估器指示對於準確的評估至關重要。當您撰寫評估者指示、選取評估者層級,然後選擇預留位置值時,請考慮下列準則。
-
評估層級選擇:根據您的成本、延遲和效能需求,選擇適當的評估層級。從追蹤層級 (檢閱個別客服人員回應)、工具層級 (檢閱特定工具用量) 或工作階段層級 (檢閱完整的互動工作階段) 中選擇。您的選擇應與專案目標和資源限制相符。
-
評估條件:定義網域特定的明確評估維度。使用互斥、集體詳盡 (MECE) 方法,確保每個評估者都有不同的範圍。這可防止評估責任重疊,並確保全面涵蓋所有評估領域。
-
角色定義:對於 指示,透過將判斷模型角色建立為效能評估者來開始您的提示。明確的角色定義可改善模型效能,並防止評估和任務執行之間的混淆。這在處理不同的判斷模型時特別重要。
-
指示準則:建立清晰的循序評估指示。處理複雜的需求時,請將它們分成簡單易懂的步驟。使用精確的語言來確保所有執行個體的評估一致。
-
整合範例:在您的指示中,納入 1-3 個相關範例,顯示人工如何評估您網域中的客服人員效能。每個範例都應包含符合的輸入和輸出對,以準確代表您的預期標準。雖然是選用的,但這些範例可做為寶貴的基準參考。
-
內容管理:在您的指示中,根據您的特定需求,以策略方式選擇內容預留位置。尋找提供足夠資訊與避免評估者混淆之間的正確平衡。根據判斷模型的功能和限制調整內容深度。
-
評分架構:選擇二進位擴展 (0/1) 或 Likert 擴展 (多個層級)。明確定義每個分數等級的意義。當不確定要使用哪個擴展時,請從更簡單的二進位評分系統開始。
-
輸出結構:我們的服務會自動在每個自訂評估器指示結束時包含標準化提示。此提示會強制執行兩個輸出欄位:原因和分數,其中推理一律在分數之前顯示,以確保以邏輯為基礎的評估。請勿在原始評估器指示中包含輸出格式指示,以避免混淆判斷模型。