更新时间:2026-07-03 GMT+08:00

添加部署 - CreateV2Deployment

功能介绍

将模型部署为在线服务

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

授权信息

账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。

  • 如果使用角色与策略授权,具体权限要求请参见权限和授权项
  • 如果使用身份策略授权,需具备如下身份策略权限。

    授权项

    访问级别

    资源类型(*为必须)

    条件键

    别名

    依赖的授权项

    modelarts:service:createDeployment

    Read

    service *

    -

    -

    -

URI

POST /v2/{project_id}/services/{service_id}/deployments

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释:

用户项目ID。获取方法请参见获取项目ID和名称

约束限制:

不涉及。

取值范围:

账号的项目ID。

默认取值:

不涉及。

service_id

String

参数解释:

服务ID,在创建服务时即可在返回体中获取,也可通过查询服务列表获取当前用户拥有的服务,其中service_id字段即为服务ID。

约束限制:

不涉及。

取值范围:

服务ID。

默认取值:

不涉及。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:

用户Token。通过调用IAM服务获取用户Token接口获取响应消息头中X-Subject-Token的值。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

Content-Type

String

参数解释:

消息体的类型(格式)。

约束限制:

不涉及。

取值范围:

  • application/json。

  • application/json;charset=utf-8。

默认取值:

不涉及。

表3 请求Body参数

参数

是否必选

参数类型

描述

id

String

参数解释:

部署ID。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

name

String

参数解释:

部署名称。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

pool_id

String

参数解释:

资源池ID,查询指定资源池下的服务,默认不过滤。可通过查询资源池列表获取。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

count

Integer

参数解释:

部署场景下,服务实例数量。

约束限制:

不涉及。

取值范围:

[1, 128]。

默认取值:

不涉及。

system_log_dump_enable

Boolean

参数解释:

系统日志转储开关。

约束限制:

只有NPU资源池有,且逻辑池是没有的。

取值范围:

不涉及

默认取值:

false

unit_configs

Array of UnitConfig objects

参数解释:

实例单元配置。

约束限制:

单机推理时,个数只会为1;如果是分布式推理时,根据不同框架,实例单元配置可灵活配置。

weight

Integer

参数解释:

权重百分比,分配到此模型的流量权重,仅当模型部署为在线服务时需要配置。

约束限制:

不涉及。

取值范围:

[0, 100]。

默认取值:

不涉及。

secret_type

String

参数解释:

凭证类型相关配置,用户可以在此处选择使用的凭证类型(dew,agency)

约束限制:

1.使用临时委托凭证类型约束限制:集群已安装CCE容器存储(Everest)v2.4.204及以上版本,且集群版本为v1.28及以上且确保局点已启用IAM5服务。

2.若插件版本不足或集群不支持临时委托凭证,则需通过DEW服务挂载。

取值范围:

  • dew:DEW密钥。

  • agency:临时委托凭证。

默认取值:

不涉及。

priority

Integer

参数解释:

服务优先级。

约束限制:

  • 如服务处于“运行中”,priority字段为必要参数,且value必须为原版的值;

  • 如服务处于“停止”,priority字段为非必要参数。

取值范围:

[1, 3]。

默认取值:

不涉及。

high_avail_switch

Boolean

参数解释:

高可用开关,开启后不同实例的pod将尽量均匀分布到不同的节点上。(准备下线,请使用schedule_strategy字段)

约束限制:

不涉及

取值范围:

不涉及

默认取值:

true

schedule_strategy

String

参数解释:

调度策略。

约束限制:

不涉及。

取值范围:

  • HIGH_AVAILABILITY:高可用调度

  • HIGH_UTILIZATION:紧凑调度

  • HIGH_PERFORMANCE:高性能调度

默认取值:

HIGH_AVAILABILITY。

description

String

参数解释:

服务备注。

约束限制:

不涉及。

取值范围:

长度不可以超过512,不能包含大于号,小于号。

默认取值:

默认为空。

advanced_config

AdvancedConfig object

参数解释:

高级配置,服务部署时的配置。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

model

Model object

参数解释:

推理单元共用模型相关配置,用户可以在此处选择模型及权重文件配合镜像使用,此配置对所有推理单元生效。

约束限制:

不涉及。

workload_type

String

参数解释:

工作负载类型。

取值范围:

  • DEPLOYMENT:DEPLOYMENT类型

  • LWS:LWS类型

表4 UnitConfig

参数

是否必选

参数类型

描述

id

String

参数解释:

实例单元ID。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

name

String

参数解释:

实例单元角色名称。

约束限制:

最大长度为16字符,且需满足正则:^[a-z0-9]([-a-z0-9]*[a-z0-9])?$

默认取值:

不涉及。

role

String

参数解释:

实例单元角色。

约束限制:

不涉及。

取值范围:

mindIe场景下:

  • scheduler:表示调度单元。

  • manager:表示管理单元。

  • worker:表示工作单元。

  • prefill:表示全量单元。

  • decode:表示增量单元。

  • common:表示其他角色。

vllm场景下:

默认取值:

不涉及。

custom_spec

CustomSpec object

参数解释:

自定义资源规格配置。

约束限制:

不涉及。

flavor

String

参数解释:

资源规格,根据所提供版本选择适合业务的规格。当specification为custom为自定义规格。由custom_spec指定部署的规格配置。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

image

Image object

参数解释:

镜像配置信息,包含镜像地址,镜像来源。

约束限制:

不涉及。

models

Array of Model objects

参数解释:

废弃参数,推荐使用files替代使用

模型相关配置,用户可以在此处选择模型及权重文件配合镜像使用。

约束限制:

不涉及。

codes

Array of Code objects

参数解释:

废弃参数,推荐使用files替代使用

代码相关配置,用户可以在此处选择代码所在的obs路径等。

约束限制:

不涉及。

files

Array of File objects

参数解释:

模型和代码相关配置,用户可以在此处选择模型、权重文件以及代码所在的obs路径等配合镜像使用。

约束限制:

不涉及。

count

Integer

参数解释:

配置实例个数,单机推理无需配置。

约束限制:

不填保留原有值。

取值范围:

不涉及。

默认取值:

不涉及。

group_count

Integer

参数解释:

单元副本数,当部署类型deploy_type为SINGLE时,该参数无效。

约束限制:

不填不会保留原有值。

取值范围:

最小为1,最大为100。

默认取值:

默认值为1。

cmd

String

参数解释:

启动命令。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

envs

Map<String,String>

参数解释:

环境变量。

约束限制:

变量键长度不大于64,由字母、数字、下划线、中划线、点组成,不能以数字开头。值的输入内容不能存在HTML格式,如:<9>、<^>、<...>。

readiness_health

Health object

参数解释:

就绪健康检查。

约束限制:

不涉及。

startup_health

Health object

参数解释:

启动健康检查。

约束限制:

不涉及。

liveness_health

Health object

参数解释:

存活健康检查。

取值范围:

不涉及。

port

Integer

参数解释:

端口。

约束限制:

不涉及。

取值范围:

[1,65535]。

默认取值:

不涉及。

recovery

String

参数解释:

自动重建策略,开启后,由于部署配置变更或者故障等原因导致Pod重启时,平台将按策略自动执行重建。若不开启,平台将不会主动干预处理。

取值范围:

  • Instance:部署副本重建,故障时重新拉起整个部署。

  • Role:单元重建,当部署单元内的Pod出现故障时,重启该单元内的所有Pod。

  • Pod:Pod重建,故障时重新拉起故障pod。

默认取值:

不涉及。

npu_reset_enable

Boolean

参数解释:

是否开启恢复策略。

约束限制:

不涉及。

取值范围:

  • true:开启恢复策略。

  • false:不开启恢复策略。

默认取值:

不涉及。

affinity

Affinity object

参数解释:

节点亲和调度设置。

约束限制:

不涉及。

security_config

SecurityConfig object

参数解释:

设置容器用户ID、用户组ID。

dumps

Array of Dump objects

参数解释:

产物转储相关配置,用户可以在此处配置产物转储的目的和容器挂载路径。

约束限制:

不涉及。

group_policy

UnitGroupPolicy object

参数解释:

单副本资源实例调度约束配置。

约束限制:

不涉及。

表5 CustomSpec

参数

是否必选

参数类型

描述

gpu

Number

参数解释:

GPU个数。

约束限制:

不涉及。

取值范围:

支持配置小数,输入值不能小于0(最多支持2位小数,小数点后第3位做四舍五入处理)。

默认取值:

不涉及。

memory

Integer

参数解释:

内存,单位为MB。

约束限制:

不涉及。

取值范围:

仅支持整数。

默认取值:

不涉及。

cpu

Number

参数解释:

CPU核数。

约束限制:

不涉及。

取值范围:

支持配置小数,输入值不能小于0.01(最多支持2位小数,小数点后第3位做四舍五入处理)。

默认取值:

不涉及。

ascend

Integer

参数解释:

Ascend芯片个数。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表6 Image

参数

是否必选

参数类型

描述

id

String

参数解释:

镜像id。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

source

String

参数解释:

镜像类别,标识镜像来源。

约束限制:

不涉及。

取值范围:

  • swr:软件仓库服务。

  • image:[通用镜像]。

  • ai-gallery:[AI资源库]。

默认取值:

不涉及。

swr_path

String

参数解释:

镜像地址,source不同取值时,地址为不同值。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

category

String

参数解释:

镜像支持的规格。

约束限制:

不涉及。

取值范围:

  • GPU:图形处理器。

  • CPU:中央处理器。

  • ASCEND:昇腾芯片。

默认取值:

CPU。

表7 Model

参数

是否必选

参数类型

描述

source

String

参数解释:

代码来源类别。

约束限制:

不涉及。

取值范围:

如下参数不区分大小写

  • OBS:对象存储服务。

  • OBSFS:OBS的文件系统接口。

  • EFS:弹性文件服务。

  • LOCAL:挂载宿主机本地存储目录。

默认取值:

不涉及。

address

String

参数解释:

代码来源地址,格式遵循不同存储系统。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

mount_path

String

参数解释:

挂载到容器内的路径,要求以/开头,后面可包含中划线,反斜杠,下划线,点号,字母,数字。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

host_cache

Boolean

参数解释:

是否支持模型本地缓存,默认是不支持。

约束限制:

不涉及。

取值范围:

  • true:支持。

  • false:不支持。

默认取值:

false。

efs_sub_path

String

参数解释:

当存储类别为EFS时,支持配置子目录。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

read_only

Boolean

参数解释:

挂载权限设置,是否只读。

约束限制:

不涉及。

取值范围:

  • true:只读。

  • false:非只读。

默认取值:

不涉及。

os_warm_up

Boolean

参数解释:

os预热。

约束限制:

不涉及。

取值范围:

  • true:预热。

  • false:不预热。

默认取值:

不涉及。

source_name

String

参数解释:

预热名称。

约束限制:

os_warm_up为true时必填。

取值范围:

支持1-64位字符,可包含字母、中文、数字、中划线、下划线。

默认取值:

不涉及。

表8 Code

参数

是否必选

参数类型

描述

source

String

参数解释:

代码来源类别。

约束限制:

不涉及。

取值范围:

  • OBS:对象存储服务。

  • OBSFS:OBS的文件系统接口。

  • EFS:弹性文件服务。

默认取值:

不涉及。

address

String

参数解释:

代码来源地址,格式遵循不同存储系统。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

source_id

String

参数解释:

代码来源id,与address二选一,当且仅当source为EFS时,可以传入sfs turbo的id。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

mount_path

String

参数解释:

挂载到容器内的路径,要求以/开头,后面可包含中划线,反斜杠,下划线,点号,字母,数字。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

efs_sub_path

String

参数解释:

sfs 子路径。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

read_only

Boolean

参数解释:

是否只读。

约束限制:

不涉及。

取值范围:

  • true:只读。

  • false:非只读。

默认取值:

不涉及。

表9 File

参数

是否必选

参数类型

描述

source

String

参数解释:

代码来源类别。

约束限制:

不涉及。

取值范围:

如下参数不区分大小写

  • OBS:对象存储服务。

  • OBSFS:OBS的文件系统接口。

  • EFS:弹性文件服务。

  • LOCAL:挂载宿主机本地存储目录。

默认取值:

不涉及。

address

String

参数解释:

代码来源地址,格式遵循不同存储系统。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

mount_path

String

参数解释:

挂载到容器内的路径。

约束限制:

不涉及。

取值范围:

以(/)开头和结尾,可包含字母、数字、中划线、下划线,整个挂载路径长度不能超过255位。

默认取值:

不涉及。

host_cache

Boolean

参数解释:

是否支持模型本地缓存,默认是不支持。

约束限制:

不涉及。

取值范围:

  • true:支持。

  • false:不支持。

默认取值:

false。

efs_sub_path

String

参数解释:

当存储类别为EFS时,支持配置子目录。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

read_only

Boolean

参数解释:

挂载权限设置,是否只读。

约束限制:

不涉及。

取值范围:

  • true:只读。

  • false:非只读。

默认取值:

不涉及。

os_warm_up

Boolean

参数解释:

OS预热。

约束限制:

不涉及。

取值范围:

  • true:预热。

  • false:不预热。

默认取值:

不涉及。

source_name

String

参数解释:

预热名称。

约束限制:

os_warm_up为true时必填。

取值范围:

支持1-64位字符,可包含字母、中文、数字、中划线、下划线。

默认取值:

不涉及。

表10 Health

参数

是否必选

参数类型

描述

check_method

String

参数解释:

健康检查方式:HTTP 或者 EXEC(命令行)。

约束限制:

不涉及。

取值范围:

  • HTTP:超文本传输协议。

  • EXEC:命令行。

默认取值:

不涉及。

cmd

String

参数解释:

当健康检查方式为EXEC时必填,配置的命令行。

约束限制:

字符长度限制[0, 1024],不能包含字符:#~^$|%&*<>()'"[]{}

取值范围:

不涉及。

默认取值:

不涉及。

url

String

参数解释:

当健康检查方式为HTTP 时必填,配置的请求地址。

约束限制:

字符长度限制[0, 1024],首字符为/,后续字符可以是:字母 数字 中划线 下划线 / :

取值范围:

不涉及。

默认取值:

不涉及。

protocol

String

参数解释:

连接协议。默认HTTP。

约束限制:

不涉及。

取值范围:

  • HTTPS:超文本传输协议安全版。

  • HTTP:超文本传输协议。

  • WSS:网络通信协议安全版。

  • WS:网络通信协议。

  • TCP:传输控制协议。

  • NA:不使用任何协议。

默认取值:

不涉及。

initial_delay_seconds

Integer

参数解释:

执行首次探测时,应该等待的时间,默认30秒,最小1秒。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

timeout_seconds

Integer

参数解释:

执行探测的超时时间,默认30秒,最小1秒。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

period_seconds

Integer

参数解释:

执行健康检查的周期时间,执行探测的频率。默认是10秒,最小1秒。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

failure_threshold

Integer

参数解释:

探测成功后,最少连续探测失败多少次才被认定为失败。默认是3。最小值是1。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表11 Affinity

参数

是否必选

参数类型

描述

affinity_type

String

参数解释:

节点亲和类型。

约束限制:

不涉及。

取值范围:

  • AFFINITY:亲和。

  • ANTI_AFFINITY:反亲和。

默认取值:

不涉及。

required

Boolean

参数解释:

是否设置强亲和。

约束限制:

不涉及。

取值范围:

  • true:设置强亲和。

  • false:不设置强亲和。

默认取值:

不涉及。

selection_mode

String

参数解释:

选择节点方式。

约束限制:

不涉及。

取值范围:

IP

默认取值:

不涉及。

targets

Map<String,String>

参数解释:

通过上述方式选择的列表,长度不能超过20。

约束限制:

不涉及。

表12 SecurityConfig

参数

是否必选

参数类型

描述

user_id

String

参数解释:

设置容器用户ID。

group_id

String

参数解释:

设置容器用户组ID。

表13 Dump

参数

是否必选

参数类型

描述

source

String

参数解释:

产物转储目的类别。

约束限制:

不涉及。

取值范围:

如下参数不区分大小写

  • OBSFS:OBS并行文件系统。

默认取值:

不涉及。

mount_path

String

参数解释:

挂载到容器内的路径。

约束限制:

不涉及。

取值范围:

以(/)开头和结尾,可包含字母、数字、中划线、下划线,整个挂载路径长度不能超过255位。

默认取值:

不涉及。

address

String

参数解释:

产物转储目的地址,格式遵循OBSFS系统。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表14 UnitGroupPolicy

参数

是否必选

参数类型

描述

schedule_scope

String

参数解释:

调度范围。

取值范围:

  • HYPERNODE:超节点调度

  • SLICE:柜级调度

表15 AdvancedConfig

参数

是否必选

参数类型

描述

deploy_timeout_minutes

String

参数解释:

部署超时时间

upgrade_config

UpgradeConfig object

参数解释:

滚动升级配置

service_secret

ServiceSecret object

参数解释:

服务密钥

dynamic_routing_enable

Boolean

参数解释:

智能路由开关

strategy

String

参数解释:

智能路由策略

ems_enable

Boolean

参数解释:

EMS加速开关

metric_api_scheme

String

参数解释:

智能路由指标采集scheme

metric_api_port

String

参数解释:

智能路由指标采集端口

metric_api_path

String

参数解释:

智能路由指标采集地址

custom_metrics_path

String

参数解释:

自定义监控采集指标地址

port

Integer

参数解释:

容器端口

protocol

String

参数解释:

容器请求协议。当选择WSS与WS时,服务接口会升级为WebSocket。开启WebSocket时,不支持同时设置“服务流量限制”。

取值范围:

  • HTTP:HTTP协议。

  • HTTPS:HTTPS协议。

  • WSS:WebSocket Secure协议。

  • WS:WebSocket协议。

  • TCP:传输控制协议。

  • NA:不使用任何协议。

表16 UpgradeConfig

参数

是否必选

参数类型

描述

type

String

参数解释:

升级类型。

约束限制:

不涉及。

取值范围:

  • ROLLING:滚动升级,默认值。

  • REPLACE:替换升级。

默认取值:

不涉及。

rolling_update

RollingUpdate object

参数解释:

滚动更新配置。

约束限制:

不涉及。

表17 RollingUpdate

参数

是否必选

参数类型

描述

max_surge

String

参数解释:

滚动更新时最多可以启动多少个Pod。

约束限制:

百分数类型字符串。

取值范围:

1%-100%。

默认取值:

1%。

max_unavailable

String

参数解释:

滚动更新时最多可以删除多少个Pod。

约束限制:

百分数类型字符串。

取值范围:

1%-100%。

默认取值:

1%。

表18 ServiceSecret

参数

是否必选

参数类型

描述

secret_enable

Boolean

参数解释:

是否启用密钥。

约束限制:

不涉及。

取值范围:

  • true:启用密钥。

  • false:不启用密钥。

默认取值:

false。

secret_type

String

参数解释:

密钥类型。

约束限制:

不涉及。

取值范围:

  • custom:自定义密钥。

  • dew:DEW密钥。

默认取值:

不涉及。

secret_volumes

SecretVolume object

参数解释:

密钥挂载。

约束限制:

上限30个。

group_enable

Boolean

参数解释:

是否启用镜像的用户组。

约束限制:

不涉及。

取值范围:

  • true:启用镜像的用户组。

  • false:不启用镜像的用户组。

默认取值:

false。

group_id

Long

参数解释:

镜像的用户组id。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表19 SecretVolume

参数

是否必选

参数类型

描述

secret_name

String

参数解释:

密钥名称。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

secret_key

String

参数解释:

密钥key。

约束限制:

长度不大于63。

取值范围:

不涉及。

默认取值:

不涉及。

secret_value

String

参数解释:

密钥值。

约束限制:

长度不大于32768。

取值范围:

不涉及。

默认取值:

不涉及。

mount_path

String

参数解释:

挂载路径。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

响应参数

状态码:200

表20 响应Body参数

参数

参数类型

描述

id

String

参数解释:

部署ID。

取值范围:

不涉及。

name

String

参数解释:

部署名称。

取值范围:

不涉及。

pool_id

String

参数解释:

资源池ID,查询指定资源池下的服务,默认不过滤。可通过查询资源池列表获取。

取值范围:

不涉及。

count

Integer

参数解释:

部署场景下,服务实例数量。

约束限制:

不涉及。

取值范围:

[1, 128]。

默认取值:

不涉及。

unit_configs

Array of UnitConfigResponse objects

参数解释:

实例单元配置。

weight

Integer

参数解释:

权重百分比,分配到此模型的流量权重,仅当模型部署为在线服务时需要配置。

取值范围:

[0, 100]。

secret_type

String

参数解释:

凭证类型相关配置,用户可以在此处选择使用的凭证类型(dew,agency)

约束限制:

不涉及。

取值范围:

  • dew:DEW密钥。

  • agency:临时委托凭证。

默认取值:

不涉及。

secret_name

String

参数解释:

凭证名称,用户使用dew类型凭证时可以在此处选择使用的凭证。

约束限制:

不涉及。

priority

Integer

参数解释:

服务优先级。

约束限制:

不涉及。

取值范围:

[1, 3]。

默认取值:

不涉及。

version

String

参数解释:

版本号。

取值范围:

不涉及。

status

String

参数解释:

部署状态。

取值范围:

  • DEPLOYING:部署中 。

  • FAILED:失败 。

  • STOPPED:停止。

  • RUNNING:运行中。

  • DELETING:删除中 。

  • STOPPING:停止中 。

  • CONCERNING:告警 。

  • UPGRADING:升级中 。

  • ERROR:异常 。

  • INTERRUPTING:中断中。

failure_reason

String

参数解释:

部署失败原因。

取值范围:

不涉及。

create_at

String

参数解释:

创建时间,根据创建时的当前时间自动生成。

取值范围:

毫秒级时间戳,13位数字,如1609459200000。

update_at

String

参数解释:

更新时间,根据更新时的当前时间自动生成。

取值范围:

毫秒级时间戳,13位数字,如1609459200000。

description

String

参数解释:

描述。

取值范围:

不涉及。

advanced_config

AdvancedConfigResponse object

参数解释:

高级配置,服务部署时的配置。

model

ModelResponse object

参数解释:

推理单元共用模型相关配置,用户可以在此处选择模型及权重文件配合镜像使用,此配置对所有推理单元生效。

约束限制:

不涉及。

schedule_strategy

String

参数解释:

调度策略。

取值范围:

  • HIGH_AVAILABILITY:高可用调度

  • HIGH_UTILIZATION:紧凑调度

  • HIGH_PERFORMANCE:高性能调度

表21 UnitConfigResponse

参数

参数类型

描述

id

String

参数解释:

实例单元ID。

取值范围:

不涉及。

role

String

参数解释:

实例单元角色。

取值范围:

  • common:表示其他角色。

custom_spec

CustomSpecResponse object

参数解释:

自定义资源规格配置。

flavor

String

参数解释:

资源规格,根据所提供版本选择适合业务的规格。当specification为custom时表示自定义规格。由custom_spec指定部署的规格配置。

取值范围:

不涉及。

image

ImageResponse object

参数解释:

镜像配置信息,包含镜像地址,镜像来源。

models

Array of ModelResponse objects

参数解释:

模型相关配置,用户可以在此处选择模型及权重文件配合镜像使用。

codes

Array of CodeResponse objects

参数解释:

代码相关配置,用户可以在此处选择代码所在的obs路径等。

files

Array of FileResponse objects

参数解释:

模型和代码相关配置,用户可以在此处选择模型及权重文件和代码所在的obs路径等配合镜像使用。

count

Integer

参数解释:

配置实例个数,单机推理无需配置。

取值范围:

不涉及。

cmd

String

参数解释:

启动命令。

取值范围:

不涉及。

envs

Map<String,String>

参数解释:

环境变量。

readiness_health

HealthResponse object

参数解释:

就绪健康检查。

startup_health

HealthResponse object

参数解释:

启动健康检查。

liveness_health

HealthResponse object

参数解释:

存活健康检查。

port

Integer

参数解释:

端口。

取值范围:

[1,65535]。

recovery

String

参数解释:

自动重建策略,开启后,由于部署配置变更或者故障等原因导致Pod重启时,平台将按策略自动执行重建。若不开启,平台将不会主动干预处理。

取值范围:

  • Instance:部署副本重建,故障时重新拉起整个部署。

  • Role:单元重建,当部署单元内的Pod出现故障时,重启该单元内的所有Pod。

  • Pod:Pod重建,故障时重新拉起故障pod。

npu_reset_enable

Boolean

参数解释:

是否开启恢复策略。

取值范围:

  • true:开启恢复策略。

  • false:不开启恢复策略。

affinity

AffinityResponse object

参数解释:

节点亲和调度设置。

dumps

Array of DumpResponse objects

参数解释:

产物转储相关配置。

group_policy

UnitGroupPolicyResponse object

参数解释:

单副本资源实例调度约束配置。

约束限制:

不涉及。

表22 CustomSpecResponse

参数

参数类型

描述

gpu

Number

参数解释:

GPU个数。

取值范围:

支持配置小数,输入值不能小于0(最多支持2位小数,小数点后第3位做四舍五入处理)。

memory

Integer

参数解释:

内存,单位为MB。

取值范围:

仅支持整数。

cpu

Number

参数解释:

CPU核数。

取值范围:

支持配置小数,输入值不能小于0.01(最多支持2位小数,小数点后第3位做四舍五入处理)。

ascend

Integer

参数解释:

Ascend芯片个数。

取值范围:

不涉及。

表23 ImageResponse

参数

参数类型

描述

id

String

参数解释:

镜像id。

取值范围:

不涉及。

source

String

参数解释:

镜像类别,标识镜像来源。

取值范围:

  • swr:软件仓库服务。

swr_path

String

参数解释:

镜像地址,source不同取值时,地址为不同值。

取值范围:

不涉及。

category

String

参数解释:

镜像支持的规格。

取值范围:

  • GPU:图形处理器。

  • CPU:中央处理器。

  • ASCEND:昇腾芯片。

表24 ModelResponse

参数

参数类型

描述

source

String

参数解释:

代码来源类别。

取值范围:

  • OBS:对象存储服务。

  • OBSFS:OBS的文件系统接口。

  • EFS:弹性文件服务。

  • LOCAL:挂载宿主机本地存储目录。

address

String

参数解释:

代码来源地址,格式遵循不同存储系统。

取值范围:

不涉及。

mount_path

String

参数解释:

挂载到容器内的路径,要求以/开头,后面可包含中划线、反斜杠、下划线、点号、字母、数字。

取值范围:

不涉及。

host_cache

Boolean

参数解释:

是否支持模型本地缓存,默认是不支持。

取值范围:

  • true:支持。

  • false:不支持。

efs_sub_path

String

参数解释:

当存储类别为EFS时,支持配置子目录。

取值范围:

不涉及。

read_only

Boolean

参数解释:

挂载权限设置,是否只读。

取值范围:

  • true:只读。

  • false:非只读。

os_warm_up

Boolean

参数解释:

os预热。

取值范围:

  • true:预热。

  • false:不预热。

source_name

String

参数解释:

预热名称。

约束限制:

os_warm_up为true时必填。

取值范围:

支持1-64位字符,可包含字母、中文、数字、中划线、下划线。

默认取值:

不涉及。

asset_id

String

参数解释:

预置资产id。

取值范围:

支持1-64位字符,可包含字母、中文、数字、中划线、下划线。

表25 CodeResponse

参数

参数类型

描述

source

String

参数解释:

代码来源类别。

取值范围:

  • OBS:对象存储服务。

  • OBSFS:OBS的文件系统接口。

  • EFS:弹性文件服务。

address

String

参数解释:

代码来源地址,格式遵循不同存储系统。

取值范围:

不涉及。

source_id

String

参数解释:

代码来源id,与address二选一,当且仅当source为EFS时,可以传入sfs turbo的id。

取值范围:

不涉及。

mount_path

String

参数解释:

挂载到容器内的路径,要求以/开头,后面可包含中划线、反斜杠、下划线、点号、字母、数字。

取值范围:

不涉及。

efs_sub_path

String

参数解释:

sfs 子路径。

取值范围:

不涉及。

read_only

Boolean

参数解释:

是否只读。

取值范围:

  • true:只读。

  • false:非只读。

表26 FileResponse

参数

参数类型

描述

source

String

参数解释:

代码来源类别。

取值范围:

  • OBS:对象存储服务。

  • OBSFS:OBS的文件系统接口。

  • EFS:弹性文件服务。

  • LOCAL:挂载宿主机本地存储目录。

address

String

参数解释:

代码来源地址,格式遵循不同存储系统。

取值范围:

不涉及。

mount_path

String

参数解释:

挂载到容器内的路径,要求以/开头,后面可包含中划线、反斜杠、下划线、点号、字母、数字。

取值范围:

不涉及。

host_cache

Boolean

参数解释:

是否支持模型本地缓存,默认是不支持。

取值范围:

  • true:支持。

  • false:不支持。

efs_sub_path

String

参数解释:

当存储类别为EFS时,支持配置子目录。

取值范围:

不涉及。

read_only

Boolean

参数解释:

挂载权限设置,是否只读。

取值范围:

  • true:只读。

  • false:非只读。

os_warm_up

Boolean

参数解释:

os预热。

取值范围:

  • true:预热。

  • false:不预热。

source_name

String

参数解释:

预热名称。

约束限制:

os_warm_up为true时必填。

取值范围:

支持1-64位字符,可包含字母、中文、数字、中划线、下划线。

默认取值:

不涉及。

表27 HealthResponse

参数

参数类型

描述

check_method

String

参数解释:

健康检查方式:HTTP 或者 EXEC(命令行)。

取值范围:

  • HTTP:超文本传输协议。

  • EXEC:命令行。

cmd

String

参数解释:

当健康检查方式为EXEC时,配置的命令行。

取值范围:

不涉及。

url

String

参数解释:

当健康检查方式为HTTP 时,配置的请求地址。

取值范围:

不涉及。

protocol

String

参数解释:

连接协议。

取值范围:

  • HTTP:HTTP协议。

  • HTTPS:HTTPS协议。

  • WSS:WebSocket Secure协议。

  • WS:WebSocket协议。

  • TCP:传输控制协议。

  • NA:不使用任何协议。

initial_delay_seconds

Integer

参数解释:

执行首次探测时,应该等待的时间。

取值范围:

不涉及。

timeout_seconds

Integer

参数解释:

执行探测的超时时间,默认1秒,最小1秒。

取值范围:

不涉及。

period_seconds

Integer

参数解释:

执行健康检查的周期时间,执行探测的频率。默认是10秒,最小1秒。

取值范围:

不涉及。

failure_threshold

Integer

参数解释:

探测成功后,最少连续探测失败多少次才被认定为失败。默认是3。最小值是1。

取值范围:

不涉及。

表28 AffinityResponse

参数

参数类型

描述

affinity_type

String

参数解释:

节点亲和类型。

取值范围:

  • AFFINITY:亲和。

  • ANTI_AFFINITY:反亲和。

required

Boolean

参数解释:

是否设置强亲和。

取值范围:

  • true:设置强亲和。

  • false:不设置强亲和。

selection_mode

String

参数解释:

选择节点方式。

取值范围:

IP。

targets

Map<String,String>

参数解释:

通过上述方式选择的列表,长度不能超过20。

表29 DumpResponse

参数

参数类型

描述

address

String

参数解释:

挂载的PFS目录。

取值范围:

不涉及。

mount_path

String

参数解释:

挂载到容器内的路径,要求以/开头,后面可包含中划线、反斜杠、下划线、点号、字母、数字。

取值范围:

不涉及。

source

String

参数解释:

转储目的类别。

取值范围:

  • OBSFS:OBS并行文件系统。

表30 UnitGroupPolicyResponse

参数

参数类型

描述

schedule_scope

String

参数解释:

调度范围。

取值范围:

HYPERNODE:超节点调度

SLICE:柜级调度

表31 AdvancedConfigResponse

参数

参数类型

描述

deploy_timeout_minutes

String

参数解释:

部署超时时间

upgrade_config

UpgradeConfigResponse object

参数解释:

在线服务升级配置。

service_secret

ServiceSecretResponse object

参数解释:

服务密钥挂载。

dynamic_routing_enable

String

参数解释:

动态路由开关。

取值范围:

  • TRUE:开启动态路由。

  • FALSE:不开启动态路由。

strategy

String

参数解释:

智能路由策略。

取值范围:

  • ROUND_ROBIN:轮询。

  • ORIGIN_IP_HASH:源IP哈希。

  • MIN_CONN:最小连接数。

  • MIN_FIRST_TOKEN_TIME:最小首token时延。

  • COMPOSITE:综合负载。

  • SLO_BASED:SLO优先级。

metric_api_scheme

String

参数解释:

指标接口服务请求协议。

取值范围:

  • HTTP:HTTP协议。

  • HTTPS:HTTPS协议。

metric_api_port

String

参数解释:

指标接口端口号。

取值范围:

[1, 65535]。

metric_api_path

String

参数解释:

指标接口path。

取值范围:

默认值metrics。

ems_enable

String

参数解释:

是否开启EMS加速。

取值范围:

  • TRUE:开启EMS加速。

  • FALSE:不开启EMS加速。

custom_metrics_path

String

参数解释:

自定义监控采集指标地址

port

Integer

参数解释:

容器端口号。

取值范围:

[1, 65535]。

protocol

String

参数解释:

服务请求协议。当选择WSS与WS时,服务接口会升级为WebSocket。开启WebSocket时,不支持同时设置“服务流量限制”。

取值范围:

  • HTTP:HTTP协议。

  • HTTPS:HTTPS协议。

  • WSS:WebSocket Secure协议。

  • WS:WebSocket协议。

  • TCP:传输控制协议。

  • NA:不使用任何协议。'

表32 UpgradeConfigResponse

参数

参数类型

描述

type

String

参数解释:

升级类型。

取值范围:

  • ROLLING:滚动升级,默认值。

  • REPLACE:替换升级。

rolling_update

RollingUpdateResponse object

参数解释:

滚动更新配置。

表33 RollingUpdateResponse

参数

参数类型

描述

max_surge

String

参数解释:

滚动更新时最多可以启动多少个Pod。

取值范围:

不涉及。

max_unavailable

String

参数解释:

滚动更新时最多可以删除多少个Pod。

取值范围:

不涉及。

表34 ServiceSecretResponse

参数

参数类型

描述

secret_enable

Boolean

参数解释:

是否启用密钥。

取值范围:

  • true:启用密钥。

  • false:不启用密钥。

secret_type

String

参数解释:

密钥类型。

取值范围:

  • custom:自定义密钥。

  • dew:DEW密钥。

secret_volumes

SecretVolumeResponse object

参数解释:

密钥挂载。

约束限制:

上限30个。

group_enable

Boolean

参数解释:

是否启用镜像的用户组。

取值范围:

  • true:启用镜像的用户组。

  • false:不启用镜像的用户组。

group_id

Long

参数解释:

镜像的用户组id。

取值范围:

不涉及。

表35 SecretVolumeResponse

参数

参数类型

描述

secret_name

String

参数解释:

密钥名称。

取值范围:

不涉及。

secret_key

String

参数解释:

密钥key。

取值范围:

长度不大于63。

secret_value

String

参数解释:

密钥值。

取值范围:

长度不大于32768。

mount_path

String

参数解释:

挂载路径。

取值范围:

不涉及。

请求示例

创建在线推理服务。

POST https://{endpoint}/v2/{project_id}/services/{service_id}/deployments

{
  "description" : null,
  "name" : "deployment-example",
  "weight" : 100,
  "pool_id" : "pool-example",
  "framework" : "COMMON",
  "count" : 1,
  "advanced_config" : {
    "upgrade_config" : {
      "rolling_update" : {
        "max_surge" : "1%",
        "max_unavailable" : "1%"
      },
      "type" : "ROLLING"
    },
    "port" : 0,
    "protocol" : "HTTPS"
  }
}

响应示例

状态码:200

创建在线推理服务成功。

{
  "count" : 1,
  "framework" : "COMMON",
  "id" : "8a927efb-43f6-4a0b-8222-a1b87d2d2fa8",
  "name" : "deployment-example",
  "description" : "infer-description",
  "pool_id" : "pool-xinfer-1216-dev-04f258c84780d5a52f3bc00dc15aa5e7",
  "priority" : 1,
  "unit_configs" : [ {
    "codes" : [ ],
    "count" : 1,
    "custom_spec" : {
      "cpu" : 0.1,
      "memory" : 50
    },
    "envs" : {
      "additionalProp1" : "string",
      "additionalProp2" : "string",
      "a" : "1"
    },
    "id" : "8a0e4ab7970bc24d01970bcd7f460003",
    "image" : {
      "category" : "CPU",
      "id" : "bc84b0e49e910cd7918b1dfaeaa478f9c7e5242c6733525ca88304f026fa24e4",
      "source" : "SWR",
      "swr_path" : "swr.cn-north-7.myhuaweicloud.com/example/helloworld-example:0.0.1"
    },
    "npu_reset_enable" : false,
    "port" : 65535,
    "role" : "COMMON"
  } ],
  "weight" : 100,
  "version" : "0.0.0",
  "status" : "DEPLOYING"
}

状态码

状态码

描述

200

创建在线推理服务成功。

错误码

请参见错误码