
# 创建评估任务 - CreateOpsEvaluationTask
#### 功能介绍
该接口用于创建新的评估任务，支持离线和在线评估模式，灵活配置评估参数和数据源，适用于各类模型评估和数据质量验证的场景。
适用场景：
- 启动新的离线评估任务进行模型质量测试。
  
 
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-agentarts/agentarts_07_0003.html)。
#### 授权信息
账号根用户具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备如下身份策略权限，更多的权限说明请参见[权限和授权项](https://support.huaweicloud.com/api-agentarts/Permission.html)。
| 授权项                                              | 访问级别  | 资源类型（\*为必须）       | 条件键 | 别名 | 依赖的授权项 |
|:---|:---|:---|:---|:---|:---|
| agentarts:evaluationTask:createOpsEvaluationTask | Write | evaluationTask \* | -   | -  | -      |
   
#### URI
POST /v1/ops/evaluation-tasks
#### 请求参数
表1请求Body参数 
| 参数                       | 是否必选 | 参数类型                                                                          | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| eval_mode                | 否    | String                                                                        | **参数解释：** 评估模式，指定任务是在线评估还是离线评估，影响任务的执行环境和策略。 **约束限制：** 字符串类型，最小长度为1，最大长度为36。 **取值范围：** - OFFLINE：离线评估   - ONLINE：在线评估    **默认取值：** OFFLINE。                                                                                                                                                                                        |
| name                     | 否    | String                                                                        | **参数解释：** 评估任务的名称，用于标识和区分不同的评估任务，方便管理和查找。 **约束限制：** 字符串类型，最小长度为4，最大长度为100。 **取值范围：** 只能由中文字符、英文字母、数字及「_」、「-」、「.」组成，长度为4\~100个字符。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| description              | 否    | String                                                                        | **参数解释：** 评估任务的描述信息，详细说明任务的目的、范围和预期结果等背景信息。 **约束限制：** 字符串类型，最大长度为400。 **取值范围：** 任意字符，长度为0\~400个字符。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| dataset_id               | 否    | String                                                                        | **参数解释：** 评测集ID，离线任务使用的数据集唯一标识符，用于指定评估的数据来源。 通过1.1-创建评测集 - CreateOpsDataset获取。 **约束限制：** 字符串类型，最大长度为36。 **取值范围：** 字符长度0-36，符合通用唯一识别码(UUID)标准的字符串。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                              |
| dataset_version          | 否    | String                                                                        | **参数解释：** 评测集版本号，离线任务使用的评测集版本标识。 **约束限制：** 字符串类型，最大长度为36。 **取值范围：** 字符长度0-36，系统内有效的评测集版本标识。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| human_read_version       | 否    | String                                                                        | **参数解释：** 评测集版本，离线任务使用的评测集可读版本标识。 **约束限制：** 字符串类型，最大长度为36。 **取值范围：** 字符长度0-36，如0.0.1格式。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| dataset_name             | 否    | String                                                                        | **参数解释：** 评测集名称，离线任务使用的评测集显示名称。 **约束限制：** 字符串类型，最小长度为2，最大长度为100。 **取值范围：** 只能由中文字符、英文字母、数字及「_」、「-」、「.」组成，长度为2\~100个字符。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| input_source_type        | 否    | String                                                                        | **参数解释：** 评估数据来源，指定评估数据的类型和来源，影响数据的获取方式。 **约束限制：** 字符串类型，最大长度为36。 **取值范围：** - DATASET_DYNAMIC：动态数据集   - DATASET_STATIC：静态数据集   - TRACE_STREAM：轨迹流    **默认取值：** DATASET_DYNAMIC。 |
| input_source             | 否    | [OpsInputSource] object     | **参数解释：** 评估任务的输入源配置。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| runtime_config           | 否    | [OpsRuntimeConfig] object | **参数解释：** 任务运行时的环境与执行策略配置。 **约束限制：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| evaluation_object_config | 否    | Object                                                                        | **参数解释：** 评估对象配置，指定被评估的对象信息（如模型、流等）。 **约束限制：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| tags                     | 否    | Array of [OpsTmsTag] objects     | **参数解释：** 创建评估任务时绑定的TMS标签列表。 **约束限制：** 数组长度0到50。 **取值范围：** 不涉及。 **默认取值：** 空列表。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
   
 表2OpsInputSource 
| 参数             | 是否必选 | 参数类型                                                                          | 描述                                                                                                                                                                     |
|:---|:---|:---|:---|
| offline_config | 否    | [OpsOfflineConfig] object | **参数解释：** 离线任务的配置信息对象。 **约束限制：** 不涉及。 |
   
 表3OpsOfflineConfig 
| 参数               | 是否必选 | 参数类型                                                                                                | 描述                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| evaluator_config | 否    | Array of [OpsEvaluatorConfigInfo] objects | **参数解释：** 评估器的配置，数组内每个元素为OpsEvaluatorConfigInfo对象，用于配置评估器的各项参数。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 |
   
 表4OpsEvaluatorConfigInfo 
| 参数                         | 是否必选 | 参数类型                                                                                                       | 描述                                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|:---|:---|
| evaluator_id               | 是    | String                                                                                                     | **参数解释：** 评估器的唯一标识符。可通过查询评估器列表接口获取。 **约束限制：** 1到36字符。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
| evaluator_version          | 是    | String                                                                                                     | **参数解释：** 评估器的版本号。 **约束限制：** 1到36字符。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                  |
| evaluator_name             | 是    | String                                                                                                     | **参数解释：** 评估器的显示名称。 **约束限制：** 1到100字符。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                |
| evaluator_variable_mapping | 是    | Map\<String,[OpsEvaluatorVariableMapping]\> | **参数解释：** 变量映射字典配置，Key为变量名称（String类型），Value为变量映射配置（OpsEvaluatorVariableMapping类型，参考OpsEvaluatorVariableMapping定义）。 **约束限制：** 不涉及。                                                                                                                               |
   
 表5OpsEvaluatorVariableMapping 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|:---|
| source     | 是    | String | **参数解释：** 指定评估器变量的数据来源。 **约束限制：** 1到36字符。 **取值范围：** - dataset：数据集来源   - agent_output：智能体输出来源    **默认取值：** 不涉及。 |
| field_name | 否    | String | **参数解释：** 数据源对应的具体字段名。 **约束限制：** 1到200字符。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                              |
   
 表6OpsRuntimeConfig 
| 参数                    | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| execution_time        | 是    | Integer | **参数解释：** 任务的预定执行时间（Unix 时间戳），单位：秒。 **约束限制：** 不涉及。 **取值范围：** 单位为秒，0\~2147483647 **默认取值：** 不涉及。          |
| concurrency           | 否    | Integer | **参数解释：** 任务执行的并发数配置。 **约束限制：** 不涉及。 **取值范围：** 1-100。 **默认取值：** 不涉及。                                    |
| continue_on_exception | 否    | Boolean | **参数解释：** 异常处理策略，是否在遇到非致命异常时继续。 **约束限制：** 不涉及。 **取值范围：** true：遇到异常时继续执行，false：遇到异常时停止执行。 **默认取值：** 不涉及。 |
   
 表7OpsTmsTag 
| 参数    | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                            |
|:---|:---|:---|:---|
| key   | 否    | String | **参数解释：** 标签键名称。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                    |
| value | 否    | String | **参数解释：** 标签值，存储该标签键对应的具体内容。 **约束限制：** 不涉及。 **取值范围：** 长度0-256个字符。 **默认取值：** 不涉及。 |
   
#### 响应参数
**状态码：200**
创建任务成功
**状态码：400**
表8响应Body参数 
| 参数                            | 参数类型                                                                                 | 描述                                                                                                                                                                                                |
|:---|:---|:---|
| error_code                    | String                                                                               | **参数解释：** 系统定义的标准化错误代码。 **取值范围：** 业务异常编码字符串。                     |
| error_msg                     | String                                                                               | **参数解释：** 对错误的详细描述，包含异常原因或解决建议。 **取值范围：** 字符长度2-512，任意文本内容。      |
| encoded_authorization_message | String                                                                               | **参数解释：** 编码后的授权信息，用于客户端解析权限问题。 **取值范围：** Base64编码的字符串。          |
| details                       | Array of [OpsErrorDetail] objects | **参数解释：** 错误详情列表，包含多个子错误的详细信息。 **取值范围：** 不涉及。                    |
| request_id                    | String                                                                               | **参数解释：** 请求的唯一标识符，用于问题排查和链路追踪。 **取值范围：** 符合通用唯一识别码(UUID)标准的字符串。 |
   
 表9OpsErrorDetail 
| 参数         | 参数类型   | 描述                                                                                                                                                                           |
|:---|:---|:---|
| error_code | String | **参数解释：** 子错误的标准化错误代码。 **取值范围：** 业务异常编码字符串。 |
| error_msg  | String | **参数解释：** 对子错误的详细描述。 **取值范围：** 任意文本内容。      |
   
#### 请求示例
创建一个基于工作流（Workflow）和动态评测集（DATASET_DYNAMIC）的离线评估任务，并配置并发数及内置评估器。
```
POST https://api.example.com/v1/ops/evaluation-tasks
{
  "eval_mode" : "OFFLINE",
  "name" : "hzx-4",
  "description" : "调用workflow测试14",
  "dataset_id" : "8f245ce1-aac2-47bf-a6cf-4ea8839fb8c9",
  "dataset_version" : "bd6a8268-c45f-465c-bf10-6ceda5a1d9b6",
  "human_read_version" : "0.0.1",
  "dataset_name" : "OMGEval评测集",
  "input_source_type" : "DATASET_DYNAMIC",
  "runtime_config" : {
    "execution_time" : 1768555998000
  },
  "evaluation_object_config" : { },
  "tags" : [ {
    "key" : "env",
    "value" : "prod"
  }, {
    "key" : "team",
    "value" : "ai-platform"
  } ]
}
```
#### 响应示例
**状态码：200**
创建任务成功
```
{
  "data" : {
    "task_id" : "1769499746650415700514"
  }
}
```
**状态码：400**
请求错误
```
{
  "error_code" : "AgentArts.03400001",
  "error_msg" : "请求错误"
}
```
#### 状态码
| 状态码 | 描述     |
|:---|:---|
| 200 | 创建任务成功 |
| 400 | 请求错误   |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-agentarts/ErrorCode.html)。
