AgentLoop 评估任务执行完成后,每个评估器的结果会以一条日志的形式写入您 AgentSpace 对应的 SLS Project 下的 evaluation_detail Logstore。本文描述该 Logstore 中各字段的含义与类型。
名词解释
评估任务(Task):用户创建的一次评估配置,包含数据源、评估器、调度策略等定义。
运行(Run):一次评估任务的实际执行,可以是手动触发,也可以是持续评估窗口内的自动调度。
评估器(Evaluator):对数据执行打分或判定的单元。一个任务可以包含多个评估器,每个评估器独立产出一条结果日志。
评估结果(Evaluation Result):单个评估器对单条数据的打分、判定及解释,是
evaluation_detail中的一条日志。
公共字段
以下字段在每条评估结果日志中均存在。
字段名 | 类型 | 说明 |
timestamp | long | 评估结果产生时间,毫秒时间戳。 |
task_id | text | 评估任务 ID。 |
eval_id | text | 单条评估结果的唯一 ID。 |
eval_base_id | text | 评估数据 ID,用于串联评估队列与结果记录。 |
run_id | text | 本次运行 ID。 |
window_id | text | 持续评估窗口 ID,仅持续评估模式下有值。 |
user_id | long | 用户 ID。 |
region_id | text | 地域(Region)。 |
agentSpace | text | AgentSpace 标识。 |
status | text | 评估状态: |
任务与运行信息
描述本条评估结果所属的任务和运行上下文。
字段名 | 类型 | 说明 |
task_name | text | 评估任务名称。 |
task_mode | text | 任务模式。取值: |
run_name | text | 运行名称。 |
run_type | text | 运行类型。取值: |
channel | text | 任务来源。取值: |
data_start_time | long | 本次运行的数据范围开始时间,毫秒时间戳。 |
data_end_time | long | 本次运行的数据范围结束时间,毫秒时间戳。 |
eval_latency | long | 从运行创建到结果产出的端到端耗时,单位:毫秒。 |
评估结果
描述单个评估器的打分、判定和解释信息。
字段名 | 类型 | 说明 |
evaluator_name | text | 评估器名称。 |
evaluator_display_name | text | 评估器显示名称。 |
score_name | text | 分数名称,用于标识评估器产出的指标项。 |
score_value | double | 评估器原始分数值。 |
normalized_score_value | double | 归一化分数(0~1)。仅在评估器配置了分数范围时有值。 |
score_range | text | 原始分数范围,格式为 |
result_type | text | 结果类型。取值: |
explanation | text | 评分说明,面向用户的可读解释。 |
evaluation_process | text | 分数与说明的推导过程。 |
trajectory_summary | text | Session 逐轮轨迹摘要,仅相关评估结果写入。 |
错误信息
当评估状态为 failed 时,以下字段记录失败原因。
字段名 | 类型 | 说明 |
error_code | text | 失败错误码。 |
error_message | text | 失败原因描述。 |
数据关联(data_link)
data_link 为 JSON 类型字段,记录被评估数据的关联信息,用于追溯评估结果对应的原始数据来源。
字段名 | 类型 | 说明 |
dataset_id | text | 数据集 ID。 |
dataset_item_id | text | 数据集中的数据条目 ID。 |
trace_id | text | 被评估数据的 Trace ID。 |
span_id | text | 被评估数据的 Span ID。 |
session_id | text | 被评估数据的 Session ID。 |
experiment_id | text | 实验 ID。 |
service_id | text | 被评估应用 ID。 |
service_name | text | 被评估应用名称。 |
agent_name | text | 被评估 Agent 名称。 |
data_scope | text | 数据粒度。取值: |
start_time | text | 被评估数据的时间范围起始。 |
end_time | text | 被评估数据的时间范围结束。 |
plan_id | text | 实验计划 ID。 |
project | text | 日志数据来源 SLS Project。 |
logstore | text | 日志数据来源 SLS Logstore。 |
logstore_item_id | text | 日志条目 ID。 |
experiment_group_name | text | 实验分组名称。 |
plan_name | text | 实验计划名称。 |
record_id | text | 记录 ID。 |
record_name | text | 记录名称。 |
run_env | text | 运行环境。 |
评估器元数据(eval_meta)
eval_meta 为 JSON 类型字段,记录评估器执行过程中的调用元信息。
字段名 | 类型 | 说明 |
model_name | text | 评估使用的模型名称。 |
evaluator_request_id | text | 评估器调用请求 ID。 |
evaluator_trace_id | text | 评估器自身执行的 Trace ID(非被评估数据的 trace_id)。 |
evaluator_log_id | text | 评估器调用日志 ID。 |
evaluator_thread_id | text | 评估器会话 Thread ID。 |
评估器度量(eval_metrics)
eval_metrics 为 JSON 类型字段,记录评估器执行的 Token 消耗与耗时信息。
字段名 | 类型 | 说明 |
input_tokens | long | 输入 Token 数。 |
output_tokens | long | 输出 Token 数。 |
total_tokens | long | 总 Token 数。 |
latency | long | 单个评估器执行耗时,单位:毫秒。 |
评估器输入(eval_info)
eval_info 为 JSON 类型字段,记录实际送入评估器的变量内容。字段 Key 对应评估器 variableMapping 中定义的变量名,Value 为该变量的实际取值。
示例:若评估器配置了如下变量映射:
{
"variableMapping": {
"input": "question",
"expected": "label"
}
}则 eval_info 中将包含:
{
"input": "question 字段的实际值",
"expected": "label 字段的实际值"
}自定义输出(custom_outputs)
custom_outputs 为 JSON 类型字段,保存评估器标准结果之外的自定义输出。字段结构由评估器定义,无固定 Schema。