# 修改指定部署的HRA策略配置 - UpdateInferHra
#### 功能介绍
本接口用于在已创建HRA策略的服务上修改指定部署的HRA策略配置，适用于需要根据业务负载或特定时间自动调整服务实例个数的场景。调用此接口前，确保服务已成功部署并获取了有效的服务ID，部署ID，并提供详细的hra策略参数，如HRA规则列表、HRA结果状态、策略状态等。修改成功后，系统将根据设定的策略自动调整服务实例个数，确保服务在指定时间内的性能和可用性。如果提供的服务ID无效、参数配置错误或系统资源不足，将返回相应的异常信息，提示用户检查输入数据的有效性或联系技术支持。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/ModelArts/doc?api=UpdateInferHra)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-modelarts/modelarts_03_0138.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                         | 访问级别 | 资源类型（\*为必须） | 条件键 | 别名 | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | modelarts:service:updateHra | Read | service \*  | -   | -  | -      |
     
  
 
#### URI
PUT /v2/{project_id}/services/{service_id}/deployments/{deployment_id}/hra
表1路径参数 
| 参数            | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|:---|
| project_id    | 是    | String | **参数解释：** 用户项目ID。获取方法请参见[获取项目ID和名称](https://support.huaweicloud.com/api-modelarts/modelarts_03_0147.html)。 **约束限制：** 不涉及。 **取值范围：** 账号的项目ID。 **默认取值：** 不涉及。                                                                                                                                                                                    |
| service_id    | 是    | String | **参数解释：** 服务ID，在[创建服务](https://support.huaweicloud.com/api-modelarts/CreateInferService.html#ZH-CN_TOPIC_0000002723741846)时即可在返回体中获取，也可通过[查询服务列表](https://support.huaweicloud.com/api-modelarts/ListInferServices.html#ZH-CN_TOPIC_0000002723741848)获取当前用户拥有的服务，其中service_id字段即为服务ID。 **约束限制：** 不涉及。 **取值范围：** 服务ID。 **默认取值：** 不涉及。                                                                                         |
| deployment_id | 是    | String | **参数解释：** 部署ID，在[添加部署](https://support.huaweicloud.com/api-modelarts/CreateInferDeployment.html#ZH-CN_TOPIC_0000002723741832)时即可在返回体中获取，也可通过[查询服务部署列表](https://support.huaweicloud.com/api-modelarts/ListInferDeployments.html#ZH-CN_TOPIC_0000002723901750)获取当前用户拥有的部署，其中deployment_id字段即为部署ID。 **约束限制：** 不涉及。 **取值范围：** 部署ID。 **默认取值：** 不涉及。 |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释：** 用户Token。通过调用IAM服务获取用户Token接口获取响应消息头中X-Subject-Token的值。获取方法请参见[获取IAM用户Token（使用密码）](https://support.huaweicloud.com/api-modelarts/modelarts_03_0004.html)。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| Content-Type | 是    | String | **参数解释：** 消息体的类型（格式）。 **约束限制：** 不涉及。 **取值范围：** - application/json   - application/json;charset=utf-8    **默认取值：** 不涉及。 |
   
表3请求Body参数 
| 参数           | 是否必选 | 参数类型                                                                                                                              | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| workspace_id | 是    | String                                                                                                                            | **参数解释：** 工作空间ID。未创建工作空间时默认值为"0"，存在创建并使用的工作空间，以实际取值为准。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                         |
| hra_rules    | 是    | Array of [HraRuleUpdateRequest] objects | **参数解释：** HRA规则列表。 **约束限制：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                             |
| disable      | 否    | Boolean                                                                                                                           | **参数解释：** 用户控制的启用/禁用开关。 **取值范围：** true表示禁用，false表示启用 **约束限制：** 不涉及。 **默认取值：** 不涉及。        |
| min_replicas | 否    | Integer                                                                                                                           | **参数解释：** 最小副本数。 **取值范围：** 1\~128（由于当前版本不会进行实质扩缩，因此该配置值无效）。 **约束限制：** 不涉及。 **默认取值：** 1。   |
| max_replicas | 否    | Integer                                                                                                                           | **参数解释：** 最大副本数。 **取值范围：** 1\~128（由于当前版本不会进行实质扩缩，因此该配置值无效）。 **约束限制：** 不涉及。 **默认取值：** 128。 |
| scale_window | 否    | Integer                                                                                                                           | **参数解释：** 扩缩容时间窗。 **取值范围：** 不涉及。 **约束限制：** 不涉及。 **默认取值：** 300（由于当前版本不会进行实质扩缩，因此该配置值无效）。   |
   
 表4HraRuleUpdateRequest 
| 参数           | 是否必选 | 参数类型                                                                                                            | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| id           | 是    | String                                                                                                          | 规则ID，在[创建HRA策略](https://support.huaweicloud.com/api-modelarts/CreateInferHra.html#ZH-CN_TOPIC_0000002753501509)时即可在返回体中获取，也可通过[获取推理单元配比检测信息](https://support.huaweicloud.com/api-modelarts/ShowInferHra.html#ZH-CN_TOPIC_0000002723741844)获取当前用户拥有的HRA策略，其中id字段即为规则ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| operate      | 是    | String                                                                                                          | **参数解释：** 操作类型。 **取值范围：** - UPDATE：修改HRA策略规则。   - DELETE：删除HRA策略规则。    **约束限制：** 不涉及。 **默认取值：** 不涉及。 |
| scaler_type  | 否    | String                                                                                                          | **参数解释：** 扩缩容类型。 **取值范围：** - SIMULATOR_ALGO：模拟器算法扩缩容类型。    **约束限制：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                |
| slo_info     | 是    | Array of [SloInfo] objects         | **参数解释：** SLO配置参数信息。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| metrics      | 是    | Array of [Metrics] objects         | **参数解释：** 指标信息。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| role_replica | 否    | Array of [RoleReplica] objects | **参数解释：** 角色扩缩策略（不会进行实质扩缩，因此该配置值无效）。 **取值范围：** 1\~128。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
   
 表5SloInfo 
| 参数                     | 是否必选 | 参数类型                                                                                                                | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|:---|
| slo_objectives         | 是    | Array of [SloObjectives] objects | **参数解释：** 仿真期望指标。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                      |
| predict_window_seconds | 否    | Integer                                                                                                             | **参数解释：** 预测时间窗口。 **约束限制：** 60\~600。 **取值范围：** 不涉及。 **默认取值：** 60。 |
   
 表6SloObjectives 
| 参数          | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
|:---|:---|:---|:---|
| metric_ttft | 否    | Integer | **参数解释：** TTFT指标，单位毫秒。 **取值范围：** 0\~10000。 **约束限制：** 不涉及。 **默认取值：** 100。 |
| metric_tpot | 否    | Integer | **参数解释：** TPOT指标，单位毫秒。 **取值范围：** 0\~1000。 **约束限制：** 不涉及。 **默认取值：** 50。   |
| percental   | 否    | Integer | **参数解释：** SLO满足百分比。 **取值范围：** 0\~100。                                                                                                                                                                                                                                                                                                                                                        |
   
 表7Metrics 
| 参数             | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|:---|
| endpoint       | 是    | String | **参数解释：** 指标采集地址，支持IP地址、域名或localhost。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| path           | 否    | String | **参数解释：** 指标采集路径。 **取值范围：** 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| port           | 是    | String | **参数解释：** 指标采集端口。 **取值范围：** 1\~65535。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| scheme         | 是    | String | **参数解释：** 指标采集协议。 **取值范围：** - HTTP。   - HTTPS。                                                                                                                                                                                                                                                                                                                                                                               |
| metrics_source | 否    | String | **参数解释：** 指标来源类型。 **取值范围：** - CONTAINER表示容器内。   - OTHERS表示外部其他地址。    **约束限制：** 不涉及。 **默认取值：** CONTAINER。 |
   
 表8RoleReplica 
| 参数           | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                        |
|:---|:---|:---|:---|
| name         | 是    | String  | **参数解释：** 角色名称。 **取值范围：** 不涉及。     |
| max_replicas | 否    | Integer | **参数解释：** 最大副本数。 **取值范围：** 1\~128。 |
| min_replicas | 否    | Integer | **参数解释：** 最小副本数。 **取值范围：** 1\~128。 |
   
#### 响应参数
**状态码：200**
表9响应Body参数 
| 参数            | 参数类型                                                                                                                     | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|:---|
| id            | String                                                                                                                   | **参数解释：** hra策略ID。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| workspace_id  | String                                                                                                                   | **参数解释：** 工作空间ID。未创建工作空间时默认值为"0"，存在创建并使用的工作空间，以实际取值为准。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| hra_rules     | Array of [HraRuleResponse] objects | **参数解释：** HRA规则列表。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| disable       | Boolean                                                                                                                  | **参数解释：** 用户控制的启用/禁用开关。 **取值范围：** true表示禁用，false表示启用                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| policy_status | String                                                                                                                   | **参数解释：** 策略状态。 **取值范围：** - CREATING 创建。   - ACTIVE 可用。   - INACTIVE 不可用。   - DELETED 已删除。    |
| min_replicas  | Integer                                                                                                                  | **参数解释：** 最小副本数，由于当前版本不会进行实质扩缩，因此该配置值无效。 **取值范围：** 1\~128。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| max_replicas  | Integer                                                                                                                  | **参数解释：** 最大副本数，由于当前版本不会进行实质扩缩，因此该配置值无效。 **取值范围：** 1\~128。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| scale_window  | Integer                                                                                                                  | **参数解释：** 扩缩容时间窗，由于当前版本不会进行实质扩缩，因此该配置值无效。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
   
 表10HraRuleResponse 
| 参数           | 参数类型                                                                                                             | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|:---|
| id           | String                                                                                                           | **参数解释：** 规则ID，在创建HRA策略时即可在返回体中获取，也可通过查询推理单元配比检测信息获取当前用户拥有的HRA策略，其中id字段即为规则ID。 **取值范围：** 规则ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| name         | String                                                                                                           | **参数解释：** 规则名称。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| disable      | Boolean                                                                                                          | **参数解释：** 规则是否禁用。 **取值范围：** - true：禁用。   - false：不禁用。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| scaler_type  | String                                                                                                           | **参数解释：** 扩缩容类型。 **取值范围：** - SIMULATOR_ALGO：模拟器算法扩缩容类型。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| rule_status  | String                                                                                                           | **参数解释：** HRA规则状态。 **取值范围：** - CREATING：创建。   - CONFIG_SUCCESS：配置HRA策略成功。   - EXECUTE_SUCCESS：执行HRA策略成功。   - DELETED：删除。   - FAILED：失败。    |
| slo_info     | Array of [SloInfo] objects         | **参数解释：** SLO配置参数信息。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| metrics      | Array of [Metrics] objects         | **参数解释：** 指标信息。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| role_replica | Array of [RoleReplica] objects | **参数解释：** 角色扩缩策略（不会进行实质扩缩，因此该配置值无效）。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
   
 表11SloInfo 
| 参数                     | 参数类型                                                                                                                 | 描述                                                                                                                                                                                                                                                                      |
|:---|:---|:---|
| slo_objectives         | Array of [SloObjectives] objects | **参数解释：** 仿真期望指标。 **取值范围：** 不涉及。 |
| predict_window_seconds | Integer                                                                                                              | **参数解释：** 预测时间窗口。 **取值范围：** 不涉及。 |
   
 表12SloObjectives 
| 参数          | 参数类型    | 描述                                                                                                                                                                                                                                                                                |
|:---|:---|:---|
| metric_ttft | Integer | **参数解释：** TTFT指标，单位毫秒。 **取值范围：** 0\~10000。 |
| metric_tpot | Integer | **参数解释：** TPOT指标，单位毫秒。 **取值范围：** 0\~1000。  |
| percental   | Integer | **参数解释：** SLO满足百分比。 **取值范围：** 0\~100。      |
   
 表13Metrics 
| 参数             | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|
| endpoint       | String | **参数解释：** 指标采集地址，支持IP地址、域名或localhost。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| path           | String | **参数解释：** 指标采集路径。 **取值范围：** 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| port           | String | **参数解释：** 指标采集端口。 **取值范围：** 1\~65535。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| scheme         | String | **参数解释：** 指标采集协议。 **取值范围：** - HTTP。   - HTTPS。                       |
| metrics_source | String | **参数解释：** 指标来源类型。 **取值范围：** - CONTAINER表示容器内。   - OTHERS表示外部其他地址。    |
   
 表14RoleReplica 
| 参数           | 参数类型    | 描述                                                                                                                                                                                                                                                                        |
|:---|:---|:---|
| name         | String  | **参数解释：** 角色名称。 **取值范围：** 不涉及。     |
| max_replicas | Integer | **参数解释：** 最大副本数。 **取值范围：** 1\~128。 |
| min_replicas | Integer | **参数解释：** 最小副本数。 **取值范围：** 1\~128。 |
   
#### 请求示例
修改指定部署的HRA策略配置。
```
POST https://{end_point}/v2/{project_id}/services/{service_id}/deployments/{deployment_id}/hra
{
  "workspace_id" : "0",
  "disable" : false,
  "hra_rules" : [ {
    "id" : "d4b07447-69e1-42e5-ab8f-e22f848972d6",
    "operate" : "UPDATE",
    "scaler_type" : "SIMULATOR_ALGO",
    "slo_info" : [ {
      "slo_objectives" : [ {
        "metric_ttft" : 100,
        "metric_tpot" : 50,
        "percental" : 90
      } ],
      "predict_window_seconds" : 60
    } ],
    "metrics" : [ {
      "endpoint" : "localhost",
      "path" : "/metrics",
      "port" : 9800,
      "scheme" : "http",
      "metrics_source" : "CONTAINER"
    } ],
    "role_replica" : [ {
      "max_replicas" : 3,
      "min_replicas" : 1,
      "name" : "prefill"
    }, {
      "max_replicas" : 3,
      "min_replicas" : 1,
      "name" : "decode"
    } ]
  } ],
  "min_replicas" : 1,
  "max_replicas" : 128,
  "scale_window" : 0
}
```
#### 响应示例
**状态码：200**
```
{
  "disable" : false,
  "hra_rules" : [ {
    "disable" : false,
    "id" : "d4b07447-69e1-42e5-ab8f-e22f848972d6",
    "metrics" : [ {
      "endpoint" : "localhost",
      "metrics_source" : "CONTAINER",
      "path" : "/metrics",
      "port" : "9800",
      "scheme" : "http"
    } ],
    "name" : "rule-nhqd",
    "role_replica" : [ {
      "max_replicas" : 3,
      "min_replicas" : 1,
      "name" : "prefill"
    }, {
      "max_replicas" : 3,
      "min_replicas" : 1,
      "name" : "decode"
    } ],
    "rule_status" : "CREATING",
    "scaler_type" : "SIMULATOR_ALGO",
    "slo_info" : [ {
      "predict_window_seconds" : 60,
      "slo_objectives" : [ {
        "metric_tpot" : 50,
        "metric_ttft" : 100,
        "percental" : 90
      } ]
    } ]
  } ],
  "id" : "c5a82cef-57e2-4661-a75c-644a5e7a6ef2",
  "max_replicas" : 128,
  "min_replicas" : 1,
  "policy_status" : "ACTIVE",
  "scale_window" : 0,
  "workspace_id" : "0"
}
```
#### 状态码
| 状态码 | 描述         |
|:---|:---|
| 200 | 修改自动扩缩容策略。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-modelarts/modelarts_03_0095.html)。
