# 查询模型优化任务产物列表 - ListOpsModelTuningTaskProducts
#### 功能介绍
本接口用于检索模型优化任务成功结束后生成的全部模型产物（Checkpoints/最终模型文件），包含产物的唯一标识、版本号及存储位置。
适用场景：
- 在训练完成后，浏览所有生成的模型检查点（Checkpoints），根据奖励值和训练步数筛选最优模型版本。
- 获取指定模型产物的下载地址（OBS路径），以便将优化后的模型部署至推理环境或进行离线评估。
- 对比不同训练轮次下的产物指标，分析模型在训练过程中的演变情况，确定最佳的发布版本。
 
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-agentarts/agentarts_07_0003.html)。
#### 授权信息
账号根用户具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备如下身份策略权限，更多的权限说明请参见[权限和授权项](https://support.huaweicloud.com/api-agentarts/Permission.html)。
| 授权项                                                     | 访问级别   | 资源类型（\*为必须）         | 条件键                         | 别名 | 依赖的授权项 |
|:---|:---|:---|:---|:---|:---|
| agentarts:modelTuningTask:listOpsModelTuningTaskProducts | List | modelTuningTask \* | g:ResourceTag/\<tag-key\> | -    | -     |
   
#### URI
GET /v1/ops/model-tuning-tasks/{task_id}/products
表1路径参数 
| 参数      | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| task_id | 是    | String | **参数解释：** 模型优化任务ID，标识任务的唯一标识符。获取方法请参考[查询模型优化任务列表 - ListOpsModelTuningTasks](https://support.huaweicloud.com/api-agentarts/ListOpsModelTuningTasks.html)。 **约束限制：** 不涉及 **取值范围：** 长度为32的ID字符串，最小长度32，最大长度32。 **默认取值：** 无 |
   
表2Query参数 
| 参数     | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|:---|
| offset | 否    | Integer | **参数解释：** 索引位置偏移量，用于指定从第几条记录开始返回，单位：条（记录数）。 **约束限制：** 不涉及 **取值范围：** 大于等于0且小于等于100000的整数。 **默认取值：** 0 |
| limit  | 否    | Integer | **参数解释：** 查询记录数，表示单页返回的最大任务数，单位：条。 **约束限制：** 不涉及 **取值范围：** 1到100的正整数。 **默认取值：** 10                        |
| name   | 否    | String  | **参数解释：** 产物名称，用于根据产物名称关键词筛选。 **约束限制：** 选填参数，支持模糊匹配。 **取值范围：** 合法的产物名称字符串，最小长度0，最大长度64。 **默认取值：** 无         |
   
#### 请求参数
无
#### 响应参数
**状态码：200**
表3响应Body参数 
| 参数       | 参数类型                                                                                            | 描述                                                                                                                                                                                                                     |
|:---|:---|:---|
| total    | Integer                                                                                         | **参数解释：** 满足条件的产物记录总数，用于计算分页总页数，单位：条。 **取值范围：** 大于等于0的整数。                  |
| products | Array of [OpsTuningProduct] objects | **参数解释：** 模型产物列表，包含模型产物的详细信息，符合OpsTuningProduct定义的对象数组。 **取值范围：** 不涉及。 |
   
 表4OpsTuningProduct 
| 参数                | 参数类型    | 描述                                                                                                                                                                                                               |
|:---|:---|:---|
| id                | String  | **参数解释：** 产物ID，标识模型产物的唯一ID。 **取值范围：** 唯一标识符字符串。                 |
| name              | String  | **参数解释：** 产物名称。 **取值范围：** 产物名称字符串。                              |
| epoch             | Integer | **参数解释：** 训练轮数，生成该产物时模型已完成训练的轮数，单位：轮。 **取值范围：** 大于等于0的整数。          |
| step              | Integer | **参数解释：** 训练步数，生成该产物时模型已完成训练的步，单位：步。 **取值范围：** 大于等于0的整数。          |
| reward_value      | Double  | **参数解释：** 奖励值，该产物模型在评估时的得分。 **取值范围：** 0-1的浮点数。                  |
| eval_reward_value | Double | **参数解释：** 在该步数下计算得出验证集上的奖励值，反映模型生成结果的质量。 **取值范围：** 浮点数。         |
| response_length   | Double  | **参数解释：** 平均响应长度，模型生成内容的平均Token数，单位：Token。 **取值范围：** 大于等于0的整数。         |
| url               | String  | **参数解释：** 产物地址（如OBS路径）。 **取值范围：** 不涉及                                 |
| created_at        | Long    | **参数解释：** 创建时间。 **取值范围：** 13位毫秒级时间戳，最小值0，最大值9223372036854775807。 |
| status              | String | **参数解释：** 产物文件上传状态。 **取值范围：** uploading上传中，uploaded已上传，failed上传失败。    |
| fail_reason        | String | **参数解释：** 产物转存错误信息。 **取值范围：** 无。                                         |
   
**状态码：400**
表5响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                                                                              |
|:---|:---|:---|
| error_code | String | **参数解释：** 机器可读的错误代码。 **取值范围：** 系统错误码字符串。  |
| error_msg  | String | **参数解释：** 人类可读的错误消息。 **取值范围：** 详细错误说明字符串。 |
   
**状态码：404**
表6响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                                                                              |
|:---|:---|:---|
| error_code | String | **参数解释：** 机器可读的错误代码。 **取值范围：** 系统错误码字符串。  |
| error_msg  | String | **参数解释：** 人类可读的错误消息。 **取值范围：** 详细错误说明字符串。 |
   
**状态码：500**
表7响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                                                                              |
|:---|:---|:---|
| error_code | String | **参数解释：** 机器可读的错误代码。 **取值范围：** 系统错误码字符串。  |
| error_msg  | String | **参数解释：** 人类可读的错误消息。 **取值范围：** 详细错误说明字符串。 |
   
#### 请求示例
检索任务成功结束后生成的全部模型产物（Checkpoints/最终模型文件），包含产物的唯一标识、版本号及存储位置。
```
GET /v1/ops/model-tuning-tasks/57ae91cf2f504899921a50d1c75f0547/products?offset=0&limit=10&name=checkpoint
```
#### 响应示例
**状态码：200**
```
{
  "total" : 2,
  "products" : [ {
    "id" : "prod-001",
    "name" : "checkpoint_epoch_5_step_1000",
    "epoch" : 5,
    "step" : 1000,
    "reward_value" : 0.876,
    "response_length" : 256,
    "url" : "obs://model-output/task_123/epoch_5/checkpoint-1000.pt",
    "created_at" : 1704153600000
  }, {
    "id" : "prod-002",
    "name" : "final_model",
    "epoch" : 10,
    "step" : 2000,
    "reward_value" : 0.932,
    "response_length" : 312,
    "url" : "obs://model-output/task_123/final_model.bin",
    "created_at" : 1704240000000
  } ]
}
```
#### 状态码
| 状态码 | 描述         |
|:---|:---|
| 200 | 调优产物列表数据。  |
| 400 | 无效的请求参数。   |
| 404 | 模型优化任务未找到。 |
| 500 | 内部服务器错误。   |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-agentarts/ErrorCode.html)。
