After an AgentLoop evaluation task completes, the result of each evaluator is written as a single log entry to the evaluation_detail Logstore. The Logstore belongs to the Alibaba Cloud Simple Log Service (SLS) project that corresponds to your AgentSpace. This topic describes the type and meaning of each field in the Logstore.
Key concepts
Evaluation task: An evaluation configuration that you create. It contains definitions such as the data source, evaluators, and scheduling policy.
Run: An actual execution of an evaluation task. A run can be manually triggered or automatically scheduled within a continuous evaluation window.
Evaluator: A unit that scores or judges data. A task can contain multiple evaluators, and each evaluator produces one result log entry.
Evaluation result: The score, judgment, and explanation that a single evaluator produces for a single piece of data. Each evaluation result is one log entry in the
evaluation_detailLogstore.
Common fields
The following fields are common to every evaluation result log entry. Some fields have a value only in specific modes.
| Field | Type | Description |
timestamp | long | The time when the evaluation result was generated. Unit: milliseconds. |
task_id | text | The ID of the evaluation task. |
eval_id | text | The unique ID of an evaluation result. |
eval_base_id | text | The ID of the evaluation data. It links the evaluation queue to the result record. |
run_id | text | The ID of the run. |
window_id | text | The ID of the continuous evaluation window. This field has a value only in continuous evaluation mode. |
user_id | long | The user ID. |
region_id | text | The region. |
agentSpace | text | The AgentSpace identifier. |
status | text | The evaluation status. Valid values: success, failed, and unknown. |
Task and run information
The following fields describe the task and run context of the evaluation result.
| Field | Type | Description |
task_name | text | The name of the evaluation task. |
task_mode | text | The task mode. Valid values: batch, oneshot (one-time), and stream (streaming). |
run_name | text | The name of the run. |
run_type | text | The run type. Valid values: backfill and continuous. |
channel | text | The source of the task. Valid values: default, experiment, and AgentRun (triggered by AgentRun). |
data_start_time | long | The start time of the data range for the current run. Unit: milliseconds. |
data_end_time | long | The end time of the data range for the current run. Unit: milliseconds. |
eval_latency | long | The end-to-end duration from run creation to result generation. Unit: milliseconds. |
Evaluation result
The following fields describe the score, judgment, and explanation that a single evaluator produces.
| Field | Type | Description |
evaluator_name | text | The name of the evaluator. |
evaluator_display_name | text | The display name of the evaluator. |
score_name | text | The score name, which identifies the metric item that the evaluator produces. |
score_value | double | The raw score value of the evaluator. |
normalized_score_value | double | The normalized score, in the range of 0 to 1. This field has a value only when a score range is configured for the evaluator. |
score_range | text | The raw score range, in the [min,max] format. |
result_type | text | The result type. Valid values: score (numeric scoring), binary (binary judgment), and text. |
explanation | text | A human-readable explanation of the score. |
evaluation_process | text | The derivation process of the score and explanation. |
trajectory_summary | text | The turn-by-turn trajectory summary of the session. This field has a value only for relevant evaluation results. |
Error information
When the evaluation status is failed, the following fields record the cause of the failure.
| Field | Type | Description |
error_code | text | The error code of the failure. |
error_message | text | The error message that describes the failure cause. |
Data association (data_link)
data_link is a JSON field that records the association information of the evaluated data. You can use this field to trace the raw data source of an evaluation result.
| Field | Type | Description |
dataset_id | text | The ID of the dataset. |
dataset_item_id | text | The ID of the item in the dataset. |
trace_id | text | The trace ID of the evaluated data. |
span_id | text | The span ID of the evaluated data. |
session_id | text | The session ID of the evaluated data. |
experiment_id | text | The ID of the experiment. |
service_id | text | The ID of the evaluated application. |
service_name | text | The name of the evaluated application. |
agent_name | text | The name of the evaluated agent. |
data_scope | text | The data granularity. Valid values: span, trace, session, log, and dataset. |
start_time | text | The start of the time range of the evaluated data. |
end_time | text | The end of the time range of the evaluated data. |
plan_id | text | The ID of the experiment plan. |
project | text | The SLS project from which the log data comes. |
logstore | text | The SLS Logstore from which the log data comes. |
logstore_item_id | text | The ID of the log entry. |
experiment_group_name | text | The name of the experiment group. |
plan_name | text | The name of the experiment plan. |
record_id | text | The ID of the record. |
record_name | text | The name of the record. |
run_env | text | The runtime environment. |
Evaluator metadata (eval_meta)
eval_meta is a JSON field that records the invocation metadata generated during evaluator execution.
| Field | Type | Description |
model_name | text | The name of the model used for evaluation. |
evaluator_request_id | text | The request ID of the evaluator invocation. |
evaluator_trace_id | text | The trace ID of the evaluator's own execution. This field is not the trace_id of the evaluated data. |
evaluator_log_id | text | The log ID of the evaluator invocation. |
evaluator_thread_id | text | The thread ID of the evaluator session. |
Evaluator metrics (eval_metrics)
eval_metrics is a JSON field that records the token consumption and duration of the evaluator execution.
| Field | Type | Description |
input_tokens | long | The number of input tokens. |
output_tokens | long | The number of output tokens. |
total_tokens | long | The total number of tokens. |
latency | long | The execution duration of a single evaluator. Unit: milliseconds. |
Evaluator input (eval_info)
eval_info is a JSON field that records the actual variable values that are passed to the evaluator. Each key corresponds to a variable name defined in the evaluator's variableMapping, and each value is the actual value of that variable.
For example, if the evaluator is configured with the following variable mapping:
{
"variableMapping": {
"input": "question",
"expected": "label"
}
}eval_info contains the following content:
{
"input": "The actual value of the question field",
"expected": "The actual value of the label field"
}Custom outputs (custom_outputs)
custom_outputs is a JSON field that stores custom outputs in addition to the standard results of the evaluator. The structure of this field is defined by the evaluator and has no fixed schema.