修改智能体优化任务
功能介绍
本接口用于更新指定任务的具体配置。为确保训练逻辑与数据的一致性,系统严格限制仅处于“draft(草稿)”状态的任务才允许被修改。
适用场景:
- 在任务提交训练前,根据最新的业务需求调整任务的基础模型或优化目标智能体。
- 修正草稿阶段发现的配置错误(如名称拼写错误、描述信息不准确),完善任务元数据。
URI
PUT /v1/ops/model-tuning-tasks/{task_id}
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| task_id | 是 | String | 参数解释: 智能体优化任务ID,标识任务的唯一标识符。获取方法请参考查询智能体优化任务列表。 约束限制: 不涉及 取值范围: 32位ID字符串。 默认取值: 无 |
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| Content-Type | 是 | String | 参数解释: 消息体编码格式。用于告知服务端请求体(Body)所采用的主体数据类型,以便服务端正确解析。 约束限制: 不涉及 取值范围: application/json 默认取值: application/json |
| Authorization | 是 | String | 参数解释: 签名认证信息,当使用AK/SK方式认证时,使用SDK对请求进行签名的过程中会自动填充该字段。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
| X-Sdk-Date | 是 | String | 参数解释: 请求发送的时间,当使用AK/SK方式认证时,使用SDK对请求进行签名的过程中会自动填充该字段。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| name | 是 | String | 参数解释: 任务名称,用于标识和区分不同的优化。 约束限制: 不涉及 取值范围: 长度1-64个字符,支持中文、字母、数字、中划线及下划线。 默认取值: 无 |
| description | 否 | String | 参数解释: 任务的详细描述,用于记录任务目的或备注信息。 约束限制: 不涉及 取值范围: 长度0-1024个字符。 默认取值: 空字符串 |
| agent | 是 | OpsTuningTargetAgent object | 参数解释: 调优目标对象,指定本次优化任务针对的目标智能体或工作流。 约束限制: 不涉及 取值范围: 符合OpsTuningTargetAgent定义的对象。 默认取值: 无 |
| model_name | 是 | String | 参数解释: 调优模型名称,用于指定优化任务使用的基础模型。 约束限制: 必须是系统支持的基础模型。 取值范围: 可选qwen3_8b或qwen3_1_7b。 默认取值: 无 |
| training_type | 否 | String | 参数解释: 训练类型,指定模型训练的方式。 约束限制: 目前仅支持强化学习。 取值范围: 固定值为rl。 默认取值: rl |
| tuning_method | 否 | String | 参数解释: 调优方法,指定模型参数优化的算法。 约束限制: 目前仅支持群组相对优化。 取值范围: 固定值为grpo。 默认取值: grpo |
| reward_setting | 是 | OpsTuningRewardSetting object | 参数解释: 奖励函数。 约束限制: 不涉及 取值范围: 符合OpsTuningRewardSetting定义的对象。 默认取值: 无 |
| parameter_setting | 是 | OpsTuningParamSetting object | 参数解释: 训练超参数设置。 约束限制: 不涉及 取值范围: 符合OpsTuningParamSetting定义的对象。 默认取值: 无 |
| dataset | 是 | OpsDataset object | 参数解释: 训练数据集配置信息。 约束限制: 不涉及 取值范围: 符合OpsDataset定义的对象。 默认取值: 无 |
| train_product_path | 是 | String | 参数解释: 训练产物OBS路径。 约束限制: 必须是真实存在的OBS路径且具备读写权限。 取值范围: 有效路径字符串。 默认取值: 无 |
| agency_name | 是 | String | 参数解释: 委托名称。 约束限制: 必须是IAM中已创建的有效委托。 取值范围: 合法的委托名称字符串。 默认取值: 无 |
| tags | 否 | Array of OpsTasksTagForTMS objects | 参数解释: 资源标签列表,用于资源分类。 约束限制: 不涉及 取值范围: 数组长度0-20。 默认取值: 空数组 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| type | 是 | String | 参数解释: 智能体类型,指定优化目标的对象类型。 约束限制: 不涉及 取值范围: 单智能体agent,工作流workflow。 默认取值: 无 |
| id | 是 | String | 参数解释: 智能体ID,标识被优化的智能体或工作流的唯一标识符。可通过查询智能体优化任务详情接口查询。 约束限制: 必须是系统中存在的真实ID。 取值范围: 有效标识符字符串。 默认取值: 无 |
| version | 否 | String | 参数解释: 智能体版本。 约束限制: 不涉及 取值范围: 版本号字符串。 默认取值: latest |
| node_type | 否 | String | 参数解释: 工作流节点类型,指定工作流中需要优化的节点类型。 约束限制: 仅当type为workflow时生效。 取值范围: 意图识别节点intent_detection,大模型节点llm。 默认取值: 无 |
| node_id | 否 | String | 参数解释: 工作流节点ID。可通过查询智能体优化任务详情接口查询。 约束限制: 仅当type为workflow时生效。 取值范围: 有效节点标识符字符串。 默认取值: 无 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| reward_type | 是 | String | 参数解释: 奖励类型,决定如何评估模型输出的质量。 约束限制: 不涉及 取值范围: rule(规则奖励,基于预定义规则进行评分)或generative(生成式奖励,使用判别模型进行评分)。 默认取值: 无 |
| model_name | 否 | String | 参数解释: 判别模型名称,用于生成式奖励打分的裁判模型。 约束限制: generative类型必填。 取值范围: 支持的判别模型名称字符串。 默认取值: 无 |
| apikey_credential_provider | 否 | String | 参数解释: API密钥凭证提供者,用于访问判别模型的认证信息。 约束限制: generative类型必填。 取值范围: 系统中配置的凭证名称。 默认取值: 无 |
| rubric | 否 | String | 参数解释: 评分标准,指导判别模型进行评分的提示词内容。 约束限制: generative类型必填。 取值范围: 长度0-4096个字符的提示词。 默认取值: 无 |
| rules | 否 | Array of OpsTuningRewardRule objects | 参数解释: 规则列表,定义具体的正则匹配规则。 约束限制: rule类型必填。 取值范围: 数组长度1-10。 默认取值: 无 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| function_name | 是 | String | 参数解释: 规则名称,对应具体的奖励计算逻辑。 约束限制: 不涉及 取值范围: 思维链式奖励think_format_reward,精准匹配奖励exact_match_reward,数值匹配奖励math_correctness_reward。 默认取值: 无 |
| weight | 是 | Double | 参数解释: 权重。 约束限制: 不涉及 取值范围: 0.0到1.0之间的浮点数。 默认取值: 无 |
| regex | 是 | String | 参数解释: 正则表达式。 约束限制: 不涉及 取值范围: 合法的正则表达式字符串。 默认取值: 无 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| actor_optimizer_lr | 是 | String | 参数解释: 优化器学习率,控制模型参数更新的步长。 约束限制: 不涉及 取值范围: 科学计数法字符串,如1.0E-5。 默认取值: 无 |
| train_batch_size | 是 | Integer | 参数解释: 批大小,单次训练迭代中使用的样本数量。 约束限制: 不涉及 取值范围: 正整数。 默认取值: 无 |
| rollout_num | 是 | Integer | 参数解释: 分组大小,GRPO算法中每次生成用于对比的样本组数量。 约束限制: 不涉及 取值范围: 正整数。 默认取值: 无 |
| epoch_num | 是 | Integer | 参数解释: 训练轮数,全量数据集被模型训练的次数。 约束限制: 不涉及 取值范围: 1到1000的正整数。 默认取值: 无 |
| max_length | 是 | Integer | 参数解释: 最大长度,模型生成序列的最大Token数。 约束限制: 不涉及 取值范围: 1到100000的正整数。 默认取值: 无 |
| ckpt_save_step | 是 | Integer | 参数解释: step保存频率,每隔多少个训练步保存一次模型检查点。 约束限制: 不涉及 取值范围: 1到10000正整数。 默认取值: 无 |
响应参数
状态码:200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | String | 参数解释: 智能体优化任务ID。 取值范围: UUID格式字符串。 |
| name | String | 参数解释: 任务名称。 取值范围: 长度1-64个字符的字符串。 |
| description | String | 参数解释: 任务描述。 取值范围: 长度0-255个字符的字符串。 |
| agent | OpsTuningTargetAgent object | 参数解释: 调优目标对象,指定本次优化任务针对的目标智能体或工作流。 取值范围: 符合OpsTuningTargetAgent定义的对象。 |
| model_name | String | 参数解释: 调优模型名称。 取值范围: qwen3_8b或qwen3_1_7b。 |
| train_agent | OpsTuningTrainAgent object | 参数解释: 训练实例对象,包含训练过程中实际使用的模型实例信息。 取值范围: 符合OpsTuningTrainAgent定义的对象。 |
| training_type | String | 参数解释: 训练类型。 取值范围: 固定值为rl(强化学习)。 |
| tuning_method | String | 参数解释: 调优方法。 取值范围: 固定值为grpo(群组相对策略优化)。 |
| reward_setting | OpsTuningRewardSetting object | 参数解释: 奖励函数。 取值范围: 符合OpsTuningRewardSetting定义的对象。 |
| parameter_setting | OpsTuningParamSetting object | 参数解释: 超参数设置。 取值范围: 符合OpsTuningParamSetting定义的对象。 |
| dataset | OpsDatasetInfo object | 参数解释: 数据集。 取值范围: 符合OpsDatasetInfo定义的对象。 |
| validation_set_ratio | Integer | 参数解释: 验证集比例。 取值范围: 0到100的整数。 |
| train_product_path | String | 参数解释: 训练产物路径。 取值范围: 不涉及 |
| agency_name | String | 参数解释: 委托名称,赋予服务访问用户资源的权限。 取值范围: 有效的IAM委托名称字符串。 |
| status | String | 参数解释: 任务状态。 取值范围: draft草稿态,training训练中,stopped已停止,success成功,fail失败,deleting删除中,stopping停止中。 |
| fail_detail | OpsFailDetail object | 参数解释: 失败详情信息。 取值范围: 符合OpsFailDetail定义的对象。 |
| progress | Double | 参数解释: 任务进度,单位:%。 取值范围: 0.0到100.0之间的浮点数。 |
| created_at | Long | 参数解释: 创建时间,单位:毫秒(13位时间戳)。 取值范围: 13位毫秒级时间戳。 |
| updated_at | Long | 参数解释: 更新时间,单位:毫秒(13位时间戳)。 取值范围: 13位毫秒级时间戳。 |
| executed_time | Integer | 参数解释: 运行时长,单位:分钟。 取值范围: 大于等于0的整数。 |
| tags | Array of OpsTasksTagForTMS objects | 参数解释: 资源标签列表。 取值范围: 符合OpsTasksTagForTMS定义的对象数组。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| type | String | 参数解释: 智能体类型。 取值范围: 单智能体agent,工作流workflow。 |
| id | String | 参数解释: 智能体ID。 取值范围: 必须是系统中存在的真实ID。 |
| version | String | 参数解释: 智能体版本。 取值范围: 版本号字符串,默认为latest。 |
| node_type | String | 参数解释: 工作流节点类型。仅当type为workflow时生效。 取值范围: 意图识别节点intent_detection,大模型节点llm。 |
| node_id | String | 参数解释: 工作流节点ID。仅当type为workflow时生效。 取值范围: 有效节点标识符字符串。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | String | 参数解释: 智能体ID,训练实例关联的智能体。 取值范围: 有效标识符字符串。 |
| version | String | 参数解释: 智能体版本。 取值范围: 版本号字符串。 |
| model_provider_id | String | 参数解释: 训练模型的供应商ID,标识模型来源的服务商。 取值范围: 供应商标识字符串。 |
| model_id | String | 参数解释: 训练模型ID,标识正在被训练的具体模型实例。 取值范围: 模型标识字符串。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| reward_type | String | 参数解释: 奖励类型。 取值范围: rule(规则奖励),generative(生成式奖励)。 |
| model_name | String | 参数解释: 模型名称,用于生成式奖励打分的裁判模型。 取值范围: 支持的判别模型名称字符串。 |
| apikey_credential_provider | String | 参数解释: API密钥凭证提供者,用于访问判别模型的认证信息。 取值范围: 系统中配置的凭证名称。 |
| rubric | String | 参数解释: 评分标准,指导判别模型进行评分的提示词内容。 取值范围: 长度0-4096个字符的提示词。 |
| rules | Array of OpsTuningRewardRule objects | 参数解释: 规则列表,定义具体的正则匹配规则。 取值范围: 数组长度1-10。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| function_name | String | 参数解释: 规则名称。 取值范围: 思维链式奖励think_format_reward,精准匹配奖励exact_match_reward,数值匹配奖励math_correctness_reward。 |
| weight | Double | 参数解释: 权重。 取值范围: 0.0到1.0之间的浮点数。 |
| regex | String | 参数解释: 正则表达式。 取值范围: 合法的正则表达式字符串。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| actor_optimizer_lr | String | 参数解释: 优化器学习率,控制模型参数更新的步长。 取值范围: 科学计数法字符串,如1.0E-5。 |
| train_batch_size | Integer | 参数解释: 批大小,单次训练迭代中使用的样本数量。 取值范围: 正整数。 |
| rollout_num | Integer | 参数解释: 分组大小,GRPO算法中每次生成用于对比的样本组数量。 取值范围: 正整数。 |
| epoch_num | Integer | 参数解释: 训练轮数,全量数据集被模型训练的次数。 取值范围: 1到1000的正整数。 |
| max_length | Integer | 参数解释: 最大长度,模型生成序列的最大Token数。 取值范围: 1到100000的正整数。 |
| ckpt_save_step | Integer | 参数解释: step保存频率,每隔多少个训练步保存一次模型检查点。 取值范围: 1到10000正整数。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | String | 参数解释: 数据集ID。 取值范围: 真实存在的数据集ID字符串。 |
| version | String | 参数解释: 数据集版本。 取值范围: 版本号字符串。 |
| version_name | String | 参数解释: 版本显示名称。 取值范围: 版本显示名称字符串。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 参数解释: 错误码。 取值范围: 规范化的系统错误码字符串。 |
| error_msg | String | 参数解释: 错误信息。 取值范围: 错误描述字符串。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| key | String | 参数解释: 标签键。 取值范围: 不能为空或者空字符串,不能为空格,校验和使用之前先trim前后半角空格。最大长度128个unicode字符。 |
| value | String | 参数解释: 标签值。 取值范围: 不校验字符集范围。每个值最大长度255个unicode字符。 |
状态码:400
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 参数解释: 机器可读的错误代码。 取值范围: 系统错误码字符串。 |
| error_msg | String | 参数解释: 人类可读的错误消息。 取值范围: 详细错误说明字符串。 |
状态码:404
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 参数解释: 机器可读的错误代码。 取值范围: 系统错误码字符串。 |
| error_msg | String | 参数解释: 人类可读的错误消息。 取值范围: 详细错误说明字符串。 |
状态码:500
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 参数解释: 机器可读的错误代码。 取值范围: 系统错误码字符串。 |
| error_msg | String | 参数解释: 人类可读的错误消息。 取值范围: 详细错误说明字符串。 |
请求示例
更新指定任务的具体配置。
PUT https://*.com/v1/ops/model-tuning-tasks/{task_id}
Content-Type:application/json
X-Sdk-Date:20240416T095341Z
Authorization:SDK-HMAC-SHA256 Access=****************, SignedHeaders=content-type;host;x-sdk-date, Signature=****************
{
"name": "新任务名",
"description": "测试任务。",
"agent": {
"type": "agent",
"id": "f0fab58d-8285-4c47-b856-1079cad570op"
},
"model_name": "qwen3_8b",
"training_type": "rl",
"tuning_method": "grpo",
"reward_setting": {
"reward_type": "generative",
"model_name": "Qwen3-8B",
"apikey_credential_provider": "my-credential",
"rubric": "你是一个评分大模型,请根据正确答案评估模型输出..."
},
"parameter_setting": {
"actor_optimizer_lr": "1.0E-5",
"train_batch_size": 5,
"rollout_num": 5,
"epoch_num": 10,
"max_length": 10000,
"ckpt_save_step": 50
},
"dataset": {
"id": "b1ba4480-ad2d-4af6-8bae-af392b4eef83",
"version": "dd31db39-3973-4eff-b0e7-01a29454635b"
},
"train_product_path": "obs://train/output",
"agency_name": "rl-trust",
"tags": [
{
"key": "env",
"value": "test"
}
]
} 响应示例
状态码:200
{
"id" : "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"name" : "新任务名",
"description" : "测试任务。",
"agent" : {
"type" : "agent",
"id" : "agent-1234567890abcdef",
"version" : "latest",
"node_type" : null,
"node_id" : null
},
"model_name" : "qwen3_8b",
"train_agent" : {
"id" : "train-agent-001",
"version" : "1.0.0",
"model_provider_id" : "provider-001",
"model_id" : "model-001"
},
"training_type" : "rl",
"tuning_method" : "grpo",
"reward_setting" : {
"reward_type" : "generative",
"model_name" : "Qwen3-8B",
"apikey_credential_provider" : "my-credential",
"rubric" : "你是一个评分大模型,请根据正确答案评估模型输出...",
"rules" : null
},
"parameter_setting" : {
"actor_optimizer_lr" : "1.0E-5",
"train_batch_size" : 5,
"rollout_num" : 5,
"epoch_num" : 10,
"max_length" : 10000,
"ckpt_save_step" : 50
},
"dataset" : {
"id" : "b1ba4480-ad2d-4af6-8bae-af392b4eef83",
"version" : "dd31db39-3973-4eff-b0e7-01a29454635b",
"version_name" : "v1.0.0"
},
"validation_set_ratio" : 20,
"train_product_path" : "obs://train/output",
"agency_name" : "rl-trust",
"status" : "draft",
"fail_detail" : null,
"progress" : 0,
"created_at" : 1704067200000,
"updated_at" : 1704153600000,
"executed_time" : 0,
"tags" : [ {
"key" : "env",
"value" : "test"
} ]
} 状态码
| 状态码 | 描述 |
|---|---|
| 200 | 参数解释: 模型优化任务详情。 取值范围: 无 |
| 400 | 参数解释: 无效的请求体。 取值范围: 无 |
| 404 | 参数解释: 模型优化任务未找到。 取值范围: 无 |
| 500 | 参数解释: 内部服务器错误。 取值范围: 无 |
错误码
请参见错误码。