View a markdown version of this page

获取批量评估结果 - 亚马逊基岩 AgentCore

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

获取批量评估结果

检索批量评估作业的状态和结果。轮询此操作,直到作业达到终端状态(COMPLETEDFAILED、或STOPPED)。

代码示例

例
AgentCore CLI

该--wait标志控制agentcore run batch-evaluation行为方式:

  • W --wait ith:命令会一直阻塞,直到任务达到终端状态。

  • 不使用--wait:该命令启动任务并立即返回。您可以单独投票查看状态。

    # Start a job and block until it reaches a terminal state agentcore run batch-evaluation -r MyAgent -e Builtin.Correctness --wait # List previously started jobs (running jobs are refreshed from the service) agentcore batch-evaluations history # Check the status and results of a single job agentcore view batch-evaluation # Non-interactive (JSON) output, the CLI analogue of a get_batch_evaluation polling loop agentcore view batch-evaluation --json # Stop a running job agentcore stop batch-evaluation -i

    使用agentcore batch-evaluations history列表的 CLI 输出中的agentcore run batch-evaluation批量评估 ID。

AWS SDK (boto3)
import time import boto3 client = boto3.client("bedrock-agentcore", region_name="us-west-2") # Poll until terminal state while True: result = client.get_batch_evaluation(batchEvaluationId=batch_eval_id) status = result["status"] print(f"Status: {status}") if status in ("COMPLETED", "COMPLETED_WITH_ERRORS", "FAILED", "STOPPED"): break time.sleep(30) # Display results if result.get("evaluationResults"): er = result["evaluationResults"] print(f"Sessions completed: {er.get('numberOfSessionsCompleted', 0)}") print(f"Sessions failed: {er.get('numberOfSessionsFailed', 0)}") print(f"Total sessions: {er.get('totalNumberOfSessions', 0)}") for summary in er.get("evaluatorSummaries", []): avg = summary.get("statistics", {}).get("averageScore") print(f" {summary['evaluatorId']}: {avg}")

请求参数

参数 Type 必需 描述

batchEvaluationId

字符串

是

返回的批量评估 ID StartBatchEvaluation。作为路径参数传递。

响应

字段 Type 说明

batchEvaluationId

字符串

批量评估 ID。

batchEvaluationArn

字符串

批量评估的 ARN。

batchEvaluationName

字符串

作业名称。

status

字符串

当前状态:PENDING、IN_PROGRESS、COMPLETED、COMPLETED_WITH_ERRORS、FAILED、STOPPING、STOPPED、DELETING。

createdAt

Timestamp

创建任务的时间。

evaluators

列表

使用的评估人员。

outputConfig

对象

CloudWatch 记录每个会话详细信息的目的地。包含cloudWatchConfig.logGroupName和cloudWatchConfig.logStreamName。

evaluationResults

对象

当作业处理了会话时出现。请参阅了解结果和输出。

errorDetails

字符串列表

任务失败时的错误消息。

评估结果字段

字段 Type 说明

numberOfSessionsCompleted

整数

成功评估的会话数。

numberOfSessionsFailed

整数

评估失败的会话数。

numberOfSessionsInProgress

整数

仍在评估的会话数量。

totalNumberOfSessions

整数

已发现的会话总数。

numberOfSessionsIgnored

整数

评估时忽略的会话数。该服务可评估每个任务最多 500 个会话;如果发现更多会话,则选择最近的 500 个会话。

evaluatorSummaries

列表

Per-evaluator 汇总结果。

评估者摘要字段

字段 Type 说明

evaluatorId

字符串

评估者 ID(例如,Builtin.GoalSuccessRate)。

statistics.averageScore

双精度

所有评估会话的平均分数。

totalEvaluated

整数

该评估员得分的会话次数。

totalFailed

整数

此评估器失败的会话数。

状态生命周期

PENDING → IN_PROGRESS → COMPLETED
                      → COMPLETED_WITH_ERRORS
                      → FAILED
         STOPPING     → STOPPED
         DELETING
  • 待处理 — 任务已被接受并正在排队等待处理。

  • IN_PROGRES S — 该服务正在发现会话并运行评估器。

  • 已完成 — 所有会话均已评估。结果可用。

  • COMPLETED_WITH_ERRORS — 作业已完成,但某些会话遇到了错误。部分结果可用。

  • 失败 -任务遇到错误。查看errorDetails详情。

  • 正在停止 — 已收到停止请求。这项工作即将结束。

  • 已停止 — 作业在完成前已停止。可能会有部分结果。

  • 删除 -正在删除作业。

错误

错误 HTTP 状态 说明

ResourceNotFoundException

404

未找到具有指定 ID 的批量评估。

ValidationException

400

批量评估 ID 格式无效。

AccessDeniedException

403

权限不足。

ThrottlingException

429

超出请求速率。

InternalServerException

500

Service-side 错误。