文档首页/ 智果(AgentArts)智能体平台/ API参考/ API/ 评估/ 评估器管理/ 细粒度评估 - InvokeOpsFineGrainedEvaluation
更新时间:2026-06-16 GMT+08:00
分享

细粒度评估 - InvokeOpsFineGrainedEvaluation

功能介绍

该接口提供细粒度评估能力,基于评估器维度,无需预先创建评测集和评估任务,只需指定评估器并传入待评估数据即可完成评估,评估结果通过流式(SSE)或非流式方式返回。

适用场景:

  • 场景1(dataset):对已有的输入输出数据进行评估评分。

  • 场景2(agent):传入输入调用智能体获取输出后进行评估。

  • 场景3(trace):传入TraceId,从可观测子服务获取trace数据后进行评估。

与现有评估任务流程的区别:

  • 无需创建评测集,数据直接在请求中传入。

  • 无需创建评估任务,即发即评。

  • 评估结果默认不持久化,仅在响应中返回。

  • 支持SSE流式返回,评估过程中实时推送结果。

调用方法

请参见如何调用API

授权信息

账号根用户具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备如下身份策略权限,更多的权限说明请参见权限和授权项

授权项

访问级别

资源类型(*为必须)

条件键

别名

依赖的授权项

agentarts:evaluator:InvokeOpsFineGrainedEvaluation

Write

evaluator *

g:ResourceTag/<tag-key>

-

-

URI

POST /v1/ops/evaluators/{evaluator_id}/evaluations

表1 路径参数

参数

是否必选

参数类型

描述

evaluator_id

String

参数解释:

评估器的唯一标识符,用于指定本次评估使用的评估器。

通过1.1-创建评估器 - CreateOpsEvaluator获取。

约束限制:

字符串类型,长度1到36字符,评估器必须已存在。

取值范围:

符合通用唯一识别码(UUID)标准的字符串。

默认取值:

不涉及。

表2 Query参数

参数

是否必选

参数类型

描述

scenario

String

参数解释:

评估场景,指定本次评估的数据来源和处理方式。

约束限制:

必须为枚举值之一。

取值范围:

  • dataset:评测集评估,直接传入输入输出数据进行评估。

  • agent:智能体调用评估,传入输入调用智能体获取输出后进行评估。

  • trace:Trace评估,传入TraceId从可观测子服务获取trace数据后进行评估。

默认取值:

不涉及。

请求参数

表3 请求Body参数

参数

是否必选

参数类型

描述

evaluator_version

String

参数解释:

评估器的版本号,用于指定使用评估器的特定版本。

约束限制:

字符串类型,最大长度36。不传时使用评估器的最新版本。

取值范围:

系统内有效的评估器版本号。

默认取值:

评估器最新版本。

data

FineGrainedEvaluationData object

参数解释:

待评估的数据,根据scenario字段的不同,需要传入不同的数据结构。

约束限制:

需符合FineGrainedEvaluationData定义。

取值范围:

不涉及。

默认取值:

不涉及。

stream

Boolean

参数解释:

是否启用流式返回。启用后,评估结果通过SSE(Server-Sent Events)协议逐步推送,调用方可实时获取评估进度和结果。

约束限制:

不涉及。

取值范围:

true(流式返回)、false(非流式返回,等待全部评估完成后一次性返回JSON结果)。

默认取值:

true。

表4 FineGrainedEvaluationData

参数

是否必选

参数类型

描述

items

Array of FineGrainedEvaluationDatasetItem objects

参数解释:

待评估的数据条目列表,scenario=dataset和scenario=agent时必填。每条数据为键值对列表,字段名和字段数量由评估器Prompt模板决定。

  • scenario=dataset时,每条需包含评估器Prompt中引用的所有变量对应的字段(如input、actual_output等)。

  • scenario=agent时,每条需包含输入相关字段(如input),API将调用智能体获取actual_output后自动填充。

约束限制:

数组长度1到100。

取值范围:

不涉及。

默认取值:

不涉及。

evaluation_object_config

FineGrainedEvaluationObjectConfig object

参数解释:

评估对象(智能体)配置,scenario=agent或scenario=trace时必填。

约束限制:

需符合FineGrainedEvaluationObjectConfig定义。

取值范围:

不涉及。

默认取值:

不涉及。

agent_output_variable

String

参数解释:

评估器中接收智能体输出的变量名,scenario=agent时使用。API调用智能体获取输出后,将输出填入该变量名对应的字段中。若不传,默认为actual_output。

约束限制:

字符长度1到100。

取值范围:

评估器Prompt模板中定义的变量名。

默认取值:

actual_output。

trace_ids

Array of strings

参数解释:

待评估的TraceId列表,API将根据TraceId从可观测子服务获取对应的trace数据后进行评估,scenario=trace时必填。

约束限制:

数组长度1到100,每个元素字符长度1到100。TraceId必须在可观测子服务中存在,否则返回TRACE_NOT_FOUND错误。

取值范围:

不涉及。

默认取值:

不涉及。

表5 FineGrainedEvaluationDatasetItem

参数

是否必选

参数类型

描述

[数组元素]

Array of FineGrainedEvalFieldKV objects

参数解释:

待评估的单条数据,以键值对列表形式传入,字段名和字段数量由评估器的Prompt模板中引用的变量决定。评估器Prompt中使用{{key}}引用对应字段的value。

  • scenario=dataset时,需包含评估器Prompt中引用的所有变量对应的字段(如input、actual_output等)。

  • scenario=agent时,需包含输入相关的字段(如input),actual_output由API调用智能体后自动填充。

约束限制:

不允许为空数组,同一item内key不允许重复。

取值范围:

不涉及。

默认取值:

不涉及。

表6 FineGrainedEvalFieldKV

参数

是否必选

参数类型

描述

key

String

参数解释:

字段名,与评估器Prompt模板中的变量名对应。

约束限制:

字符长度1到100,同一item内不允许重复。

取值范围:

不涉及。

默认取值:

不涉及。

value

String

参数解释:

字段值。

约束限制:

字符长度0到10000。

取值范围:

不涉及。

默认取值:

不涉及。

表7 FineGrainedEvaluationObjectConfig

参数

是否必选

参数类型

描述

id

String

参数解释:

评估对象的唯一标识符。

约束限制:

字符长度1到36。

取值范围:

符合通用唯一识别码(UUID)标准的字符串。

默认取值:

不涉及。

type

String

参数解释:

评估对象的类型。

约束限制:

必须为枚举值之一。

取值范围:

WORKFLOW, AGENT, MULTI_AGENT。

默认取值:

不涉及。

name

String

参数解释:

评估对象的名称。

约束限制:

字符长度1到100。

取值范围:

不涉及。

默认取值:

不涉及。

version

String

参数解释:

评估对象的版本号。

约束限制:

字符长度1到100。

取值范围:

不涉及。

默认取值:

不涉及。

inputs_mapping

inputs_mapping object

参数解释:

输入数据来源映射定义,scenario=agent时必填。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表8 inputs_mapping

参数

是否必选

参数类型

描述

input

String

参数解释:

智能体执行时的输入参数来源字段。

约束限制:

字符长度1到100。

取值范围:

不涉及。

默认取值:

不涉及。

workflow_input

workflow_input object

参数解释:

工作流输入参数来源配置。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表9 workflow_input

参数

是否必选

参数类型

描述

query

String

参数解释:

工作流执行时的参数来源。

约束限制:

字符长度1到100。

取值范围:

不涉及。

默认取值:

不涉及。

响应参数

状态码:200

评估请求成功。当stream为true时,返回SSE流式事件;为false时,返回完整JSON结果。

状态码:400

表10 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

系统定义的标准化错误代码。

取值范围:

业务异常编码字符串。

error_msg

String

参数解释:

对错误的详细描述,包含异常原因或解决建议。

约束限制:

字符串类型,最小长度为2,最大长度为512。

取值范围:

字符长度2-512,任意文本内容。

状态码:404

表11 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

系统定义的标准化错误代码。

取值范围:

业务异常编码字符串。

error_msg

String

参数解释:

对错误的详细描述,包含异常原因或解决建议。

约束限制:

字符串类型,最小长度为2,最大长度为512。

取值范围:

字符长度2-512,任意文本内容。

状态码:429

表12 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

系统定义的标准化错误代码。

取值范围:

业务异常编码字符串。

error_msg

String

参数解释:

对错误的详细描述,包含异常原因或解决建议。

约束限制:

字符串类型,最小长度为2,最大长度为512。

取值范围:

字符长度2-512,任意文本内容。

状态码:500

表13 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

系统定义的标准化错误代码。

取值范围:

业务异常编码字符串。

error_msg

String

参数解释:

对错误的详细描述,包含异常原因或解决建议。

约束限制:

字符串类型,最小长度为2,最大长度为512。

取值范围:

字符长度2-512,任意文本内容。

请求示例

  • 使用已有评估器对评测集中的输入输出数据进行细粒度评估(场景1:dataset)

    POST https://*.com/agentarts/v1/ops/evaluators/7ebc91e2-2380-4072-a503-6b20888abb08/evaluations?scenario=dataset
    
    {
      "evaluator_version" : "1.0.0",
      "data" : {
        "items" : [ [ {
          "key" : "input",
          "value" : "请介绍一下量子计算的基本原理"
        }, {
          "key" : "actual_output",
          "value" : "量子计算是利用量子力学原理进行计算的技术..."
        }, {
          "key" : "expected_output",
          "value" : "量子计算利用量子比特的叠加和纠缠特性..."
        } ], [ {
          "key" : "input",
          "value" : "什么是机器学习?"
        }, {
          "key" : "actual_output",
          "value" : "机器学习是人工智能的一个分支..."
        } ] ]
      },
      "stream" : true
    }
  • 使用已有评估器对智能体输出进行评估,API内部调用智能体获取输出后评估(场景2:agent)

    POST https://*.com/agentarts/v1/ops/evaluators/7ebc91e2-2380-4072-a503-6b20888abb08/evaluations?scenario=agent
    
    {
      "evaluator_version" : "1.0.0",
      "data" : {
        "evaluation_object_config" : {
          "id" : "5d61ce56-ae88-4dbd-85e7-07a6b1f38b46",
          "type" : "AGENT",
          "name" : "my-agent",
          "version" : "1772677877865",
          "inputs_mapping" : {
            "input" : "instruction"
          }
        },
        "agent_output_variable" : "actual_output",
        "items" : [ [ {
          "key" : "input",
          "value" : "请帮我分析一下这段代码的时间复杂度"
        } ], [ {
          "key" : "input",
          "value" : "写一个快速排序算法"
        } ] ]
      },
      "stream" : true
    }
  • 使用已有评估器对智能体运行产生的trace进行评估,API从可观测子服务获取trace数据后评估(场景3:trace)

    POST https://*.com/agentarts/v1/ops/evaluators/7ebc91e2-2380-4072-a503-6b20888abb08/evaluations?scenario=trace
    
    {
      "evaluator_version" : "1.0.0",
      "data" : {
        "trace_ids" : [ "trace-a64cd819-6f91-4568-9f2f-57ef9562ab7b", "trace-b73de920-7a02-5679-0a3g-68fg0463bc8c" ]
      },
      "stream" : true
    }

响应示例

状态码:200

评估请求成功。当stream为true时,返回SSE流式事件;为false时,返回完整JSON结果。

{
  "data" : {
    "items" : [ {
      "index" : 0,
      "item_id" : "item_0",
      "status_code" : "0",
      "score" : 0.85,
      "reason" : "回答准确,逻辑清晰"
    }, {
      "index" : 1,
      "item_id" : "item_1",
      "status_code" : "0",
      "score" : 0.78,
      "reason" : "回答基本正确,但存在遗漏"
    } ]
  }
}

状态码:400

请求错误

{
  "error_code" : "AgentArts.100004000",
  "error_msg" : "请求错误"
}

状态码:404

资源不存在

{
  "error_code" : "AgentArts.100004040",
  "error_msg" : "评估器不存在"
}

状态码:429

请求过于频繁

{
  "error_code" : "AgentArts.100004290",
  "error_msg" : "并发评估请求超过限制"
}

状态码:500

评估内部错误

{
  "error_code" : "AgentArts.100005000",
  "error_msg" : "评估内部错误"
}

状态码

状态码

描述

200

评估请求成功。当stream为true时,返回SSE流式事件;为false时,返回完整JSON结果。

400

请求错误

404

资源不存在

429

请求过于频繁

500

评估内部错误

错误码

请参见错误码

相关文档