Evaluator

更新时间:
复制 MD 格式

名称

类型

描述

示例值

object

评估任务中的评估器配置,用于引用已创建的评估器,或以内联方式描述本次任务使用的评估器。

{"evaluatorRef":"Builtin.agent_task_completion","resultName":"agent_task_completion","resultType":"score","variableMapping":{"input":"trace.input","output":"trace.output","agent_trajectory":"trace.agent_trajectory"}}

evaluatorRef

string

已注册评估器的引用名称。传入后优先按该引用加载评估器定义,支持内置评估器和自定义评估器。

Builtin.agent_task_completion

name

string

评估器名称。未传 evaluatorRef 的内联评估器场景必填;同一任务内 evaluatorRef 或 name 不能重复。

agent_task_completion

type

string

评估器类型。未传时默认 LLM;内联 CODE 评估器当前不支持,CODE 类型请通过 evaluatorRef 引用已创建评估器。

AGENT

resultName

string

评估结果字段名。内联评估器场景必填;引用已有评估器时未传则使用评估器定义中的 metricName。

agent_task_completion

resultType

string

评估结果类型。内联评估器场景必填;引用已有评估器时未传默认为 score。

score

config

object

评估器运行配置。内联 LLM 评估器需要包含 prompt 等配置;引用已有评估器时通常不传,仅在需要指定版本等运行时参数时传入。

{"version":"1.0.0"}

filters

object

评估器级数据筛选条件,会与任务级 dataFilter.query 共同生效。

{"query":"serviceName='checkout-service'"}

variableMapping

object

变量映射关系,将评估器变量映射到评估数据字段。LLM/AGENT 内联评估器必填,引用已有评估器时变量名必须存在于评估器定义中。

{"input":"trace.input","output":"trace.output","agent_trajectory":"trace.agent_trajectory"}

string

单个变量映射值,表示该评估器变量读取的评估数据字段路径。

trace.input

variableExtractorMapping

object

变量提取规则映射关系,将评估器变量映射到评估数据字段内容中的一部分,适用于变量值不是整个字段、而是字段内容里的一小块的场景。与 variableMapping 共用同一变量名键空间,同一变量只能二选一,重复配置会报错;引用已有评估器时变量名必须存在于评估器定义中。可先调用 ListTraceFieldExtractionsPreview 试跑验证后再保存。

object

单个变量的提取规则,键为评估器变量名,值由被提取字段 originField、提取方式 type 和提取表达式 expression 三部分组成。agent_trajectory、agent_trajectory_full、session_trajectory、tool_context、rag_context 等由引擎接管的轨迹变量不支持配置提取规则。

originField

string

被提取的评估数据字段,提取表达式作用于该字段的内容。随评估任务保存时必填(试跑接口可缺省,由后端从表达式推导);多个变量可以共用同一个源字段。

trace.output

type

string

提取方式。jsonpath 表示在字段的 JSON 内容上按 JSONPath 取值;regex 表示在字段的完整文本上按正则匹配,含捕获组时取第一个捕获组,不含捕获组时取整段匹配。

jsonpath

expression

string

提取表达式,含义由 type 决定。type=jsonpath 时填 JSONPath,既可写相对于 originField 的相对路径($.order.expected),也可写从根开始的绝对路径($trace.output.order.expected);type=regex 时填正则表达式,注意 JSON 中反斜杠需转义。保存时会校验表达式语法,正则还会额外校验 RE2 兼容性,前后向断言、反向引用、命名组、原子组、占有量词等写法会被拒绝。

$.order.expected