华为云用户手册

  • 响应示例 状态码: 200 服务部署规格列表。 { "total_count" : 1, "count" : 1, "clusters" : [ { "cluster_id" : "ff808081673fbb3d01673fbb824d0000", "cluster_name" : "my-cluster", "description" : "", "tenant" : "tenant_id", "project" : "project_id", "owner" : "owner_id", "created_at" : 1574923077927, "status" : "running", "nodes" : { "specification" : "modelarts.vm.cpu.8ud", "count" : 1, "available_count" : 1 }, "allocatable_cpu_cores" : 5.5, "allocatable_memory" : 4096, "allocatable_gpus" : 0.5 } ] }
  • URI GET /v1/{project_id}/clusters 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 用户项目ID。获取方法请参见获取项目ID和名称。 表2 Query参数 参数 是否必选 参数类型 描述 cluster_name 否 String 集群名称,默认不过滤集群名。 status 否 String 集群状态,默认不过滤状态。 offset 否 Integer 分页列表的起始页,默认为0。 limit 否 Integer 指定每一页返回的最大条目数,默认为1000。 sort_by 否 String 指定排序字段,枚举值如下: created_at: 创建时间,默认值。 cluster_name: 集群名称。 order 否 String 排序方式,枚举值如下: asc: 递增排序 desc: 递减排序,默认值
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 total_count Integer 不分页的情况下符合查询条件的总集群数量。 count Integer 当前查询结果的集群数量,不设置offset、limit查询参数时,count与total相同。 clusters Array of Cluster objects 查询到的集群列表。 表5 Cluster 参数 参数类型 描述 owner String 集群归属用户。 cluster_name String 集群名称。 period_num Integer 对应订购周期的个数,仅当集群为包周期类型时返回。 created_at Integer 集群创建时间,距“1970.1.1 0:0:0 UTC”的毫秒数。 description String 集群备注。 project String 集群归属项目。 allocatable_memory Integer 可使用的内存数。 cluster_id String 集群ID。 nodes ClusterNode object 集群节点配置。 allocatable_cpu_cores Float 可使用的CPU核数。 product_id String 产品ID,仅当集群为包周期类型时返回。 allocatable_gpus Float 可使用的GPU核数。 order_id String 购买产品的订单ID,仅当集群为包周期类型时返回。 period_type String 订购周期类型,取值year或month,仅当集群为包周期类型时返回。 tenant String 集群归属租户。 status String 集群状态,取值为: deploying:部署中 running:运行中 concerning:告警 abnormal:异常 表6 ClusterNode 参数 参数类型 描述 available_count Integer 可用节点数。 count Integer 节点数。 specification String 节点规格。
  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 yaml_templates Array of YamlTemplate objects 所有yaml文件的目录和文件名信息。 表3 YamlTemplate 参数 参数类型 描述 algorithm_type_en String AutoSearch算法类型,英文描述。 algorithm_type_zh String AutoSearch算法类型,中文描述。 algorithm_names Array of strings 该算法类型下所有算法的名称。
  • 响应示例 状态码: 200 ok { "yaml_templates" : [ { "algorithm_type_en" : "hpo", "algorithm_type_zh" : "algorithm_type_zh to translate", "algorithm_names" : [ "Anneal", "Bayes", "DragonFly", "FixNorm", "GridSearch", "TPE" ] }, { "algorithm_type_en" : "nas", "algorithm_type_zh" : "algorithm_type_zh to translate", "algorithm_names" : [ "AutoBSS", "AutoEvo", "AutoTopo", "MBNAS" ] }, { "algorithm_type_en" : "augment", "algorithm_type_zh" : "algorithm_type_zh to translate", "algorithm_names" : [ "AdvAutoAugment", "AutoAugment" ] }, { "algorithm_type_en" : "compression", "algorithm_type_zh" : "algorithm_type_zh to translate", "algorithm_names" : [ "AutoCompress" ] } ] }
  • 请求示例 为指定的Notebook添加资源标签。例如设置TMS标签的key为“test”,value为“service-gpu”。 https://{endpoint}/v1/{project_id}/notebooks/a55eba18-1ebf-4e9a-8229-d2d3b593a3dc/tags/create { "tags" : [ { "key" : "test", "value" : "service-gpu" }, { "key" : "model_version", "value" : "0.1" } ] }
  • 响应参数 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String ModelArts错误码。 error_msg String 具体错误信息。 状态码: 401 表5 响应Body参数 参数 参数类型 描述 error_code String ModelArts错误码。 error_msg String 具体错误信息。 状态码: 403 表6 响应Body参数 参数 参数类型 描述 error_code String ModelArts错误码。 error_msg String 具体错误信息。 状态码: 404 表7 响应Body参数 参数 参数类型 描述 error_code String ModelArts错误码。 error_msg String 具体错误信息。
  • 请求示例 对在线服务进行鉴权。设置付费工作流计费周期为“day”,付费工作流可使用的时间为“100”。 POST https://{endpoint}/v2/{project_id}/workflows/service/auth { "content_id" : "xxx", "main_service_id" : "xxx", "consume" : { "period" : "day", "value" : 100 } }
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 main_service_id 否 String 在线服务ID。 content_id 否 String Gallery资产ID。 consume 否 WorkflowConsume object 消费信息。 表3 WorkflowConsume 参数 是否必选 参数类型 描述 period 否 String 付费工作流计费周期。 value 否 Long 付费工作流可使用的时间值。
  • 请求示例 更新调度信息 PUT https://{endpoint}/v2/{project_id}/workflows/{workflow_id}/schedules/fa4ac58e-088b-4fd7-ae8c-b36fee50f884 { "content" : { "cron" : "0 0 0 * * Thu,Tue", "method" : "fixed" }, "enable" : true }
  • 响应示例 状态码: 200 返回调度信息。 { "created_at" : "2022-11-02T09:40:52.714657+08:00", "uuid" : "fa4ac58e-088b-4fd7-ae8c-b36fee50f884", "type" : "time", "content" : { "cron" : "0 0 0 * * Thu,Tue", "method" : "fixed" }, "action" : "run", "policies" : { "on_failure" : "retry", "on_running" : "cancel" }, "workflow_id" : "f1642618-43eb-4ab1-a0b1-9cc584182c60", "user_id" : "75540c679ab44074bc100022d8a4b204", "enable" : true }
  • URI PUT /v2/{project_id}/workflows/{workflow_id}/schedules/{schedule_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 用户项目ID。获取方法请参见获取项目ID和名称。 workflow_id 是 String 工作流的ID。 schedule_id 是 String 工作流调度信息ID。
  • 响应示例 状态码: 200 OK { "total" : 5, "items" : [ { "time" : "2022-10-28T15:31:43.409368+08:00", "duration" : 366181, "workflow_id" : "bd711470-e00f-422a-8da4-8a7fa06f4b8c", "workflow_name" : "wf-test-service-xiahou", "execution_id" : "837f989e-ff44-4089-90f5-ec6d790d339d", "step_name" : "service_step", "step_title" : "install service", "status" : "wait_inputs" }, { "time" : "2022-10-28T15:31:28.753908+08:00", "duration" : 366196, "workflow_id" : "acf1a43e-3037-4e97-8438-d21fe38d31dd", "workflow_name" : "workflow-service-infer2", "execution_id" : "2d235b72-c9e2-4277-9a10-b826746d38e7", "step_name" : "service_step", "step_title" : "service_step", "status" : "wait_inputs" }, { "time" : "2022-10-27T15:01:33.644611+08:00", "duration" : 454391, "workflow_id" : "79232863-7d4c-4e36-af8a-b4030da7b525", "workflow_name" : "MAssist_checkpoint_url_beta2_4dc3a098-2687-400a-a621-11fe1ff6542", "execution_id" : "2d2affa3-892f-4b2f-87de-a22f8b8d018a", "step_name" : "condition_step", "step_title" : "skip training", "status" : "wait_inputs" }, { "time" : "2022-10-20T15:01:42.650076+08:00", "duration" : 1059182, "workflow_id" : "b94d87ad-ccc3-4d7a-ac3e-a4907ccf8247", "workflow_name" : "MAssist_checkpoint_url2_c508a2ac-e146-42dd-8e5b-249dc4a117ee", "execution_id" : "0f2bb91c-3a60-49bd-a32e-190797d90ebd", "step_name" : "condition_step_test", "step_title" : "condition_step_test", "status" : "wait_inputs" }, { "time" : "2022-10-20T14:53:13.05412+08:00", "duration" : 1059692, "workflow_id" : "e6d01c2e-0ff7-42ea-a0da-363660b730bd", "workflow_name" : "MAssist_checkpoint_url3_2086aa8f-09b7-4dae-b262-642d0d80519e", "execution_id" : "2aa33bf2-7ddb-4401-adb9-627952a282e9", "step_name" : "labeling", "step_title" : "data labeling", "status" : "hold" } ] }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 items Array of WorkflowTodo objects 待办列表。 total Integer 条目个数。 表4 WorkflowTodo 参数 参数类型 描述 time String 时间。 duration Integer 运行时长。 workflow_id String 工作流ID。 workflow_name String 工作流名称。填写1-64位,仅包含英文、数字、下划线(_)和中划线(-),并且以英文开头的名称。 execution_id String 工作流执行ID。 step_name String 节点名称。 step_title String 节点的Title。 status String 状态。
  • 响应示例 状态码: 200 OK { "total" : 1, "count" : 1, "items" : [ { "created_at" : "2022-09-09T11:28:29.639658+08:00", "workflow_id" : "6b596c75-fe1f-440b-be83-fe5e240133c4", "name" : "graph-test-has-condition-step", "description" : "", "user_name" : "zuoping", "workspace_id" : "0", "labels" : [ "subgraph" ], "data" : [ { "name" : "a2ff296da618452daa8243399f06db8e", "type" : "obs", "value" : { "obs_url" : "/test-lh/test-metrics/" }, "used_steps" : [ "training_job1" ] }, { "name" : "f78e46676a454ccdacb9907f589f8d67", "type" : "obs", "value" : { "obs_url" : "/test-lh/test-metrics/" }, "used_steps" : [ "training_job2" ] }, { "name" : "dee65054c96b4bf3b7ac98c0709f9ae0", "type" : "obs", "value" : { "obs_url" : "/test-lh/test-metrics/" }, "used_steps" : [ "training_job3" ] } ], "parameters" : [ { "name" : "is_true", "type" : "bool", "delay" : true, "value" : true, "used_steps" : [ "condition_step_test" ] }, { "name" : "train_spec", "type" : "str", "format" : "flavor", "description" : "training specification", "default" : "modelarts.vm.cpu.8u", "used_steps" : [ "training_job1", "training_job2", "training_job3" ] }, { "name" : "service_config1", "type" : "str", "default" : "/test-lh/test-metrics/metrics.json", "used_steps" : [ "training_job1" ] }, { "name" : "service_config2", "type" : "str", "default" : "/test-lh/test-metrics/metrics.json", "used_steps" : [ "training_job2" ] }, { "name" : "service_config3", "type" : "str", "default" : "/test-lh/test-metrics/metrics.json", "used_steps" : [ "training_job3" ] } ], "sub_graphs" : [ { "name" : "stage_A", "steps" : [ "training_job1", "training_job2" ] } ], "policy" : { }, "last_modified_at" : "2022-10-28T16:49:13.056726+08:00", "source_workflow_id" : "05427e9d-42ac-4816-bd45-360c1bfd780b", "latest_execution" : { "execution_id" : "43e317e2-34b0-4348-9c1b-08d3083512e1", "created_at" : "2022-10-28T16:49:03.894771+08:00", "status" : "completed", "duration" : 209 }, "run_count" : 2, "param_ready" : true } ] }
  • URI GET /v2/{project_id}/workflows 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 用户项目ID。获取方法请参见获取项目ID和名称。 表2 Query参数 参数 是否必选 参数类型 描述 name 否 String 工作流名称。 description 否 String 工作流描述信息。 status 否 String 工作流状态。 labels 否 String 工作流标签。 template_id 否 String 工作流模板ID。 limit 否 String 分页参数limit,表示单次查询的条目数上限。假如要查询20~29条记录,offset为20,limit为10。 offset 否 String 分页参数offset,表示单次查询的条目偏移数量。假如要查询20~29条记录,offset为20,limit为10。 sort_by 否 String 排序依据字段,例如sort_by=create_time,则表示以条目的创建时间进行排序。 search_type 否 String 过滤方式。可选值如下: equal表示精确匹配。 contain表示模糊匹配。 具体过滤的字段,由各个接口额外定义参数。例如Workflow支持按照名称(name)进行过滤,则相应的过滤字段为name。name=workflow&search_type=contain表示查询名称中含有Workflow字样的所有工作流。
  • 响应示例 状态码: 200 OK。 { "kind" : "Pool", "apiVersion" : "v2", "metadata" : { "name" : "auto-pool-os-86c13962597848eeb29c5861153a391f", "creationTimestamp" : "2022-09-16T03:10:40Z", "labels" : { "os.modelarts/name" : "auto-pool-os", "os.modelarts/workspace.id" : "0", "os.modelarts/resource.id" : "maos-auto-pool-os-72w8d" }, "annotations" : { "os.modelarts/description" : "", "os.modelarts/billing.mode" : "0" } }, "spec" : { "type" : "Dedicate", "scope" : [ "Train", "Infer" ], "resources" : [ { "flavor" : "modelarts.vm.cpu.4ud", "count" : 2 } ], "network" : { "name" : "network-maos-86c13962597848eeb29c5861153a391f" } }, "status" : { "phase" : "Running", "root" : "auto-pool-os-86c13962597848eeb29c5861153a391f", "scope" : [ { "scopeType" : "Train", "state" : "Enabled" }, { "scopeType" : "Infer", "state" : "Enabled" } ], "resources" : { "available" : [ { "flavor" : "modelarts.vm.cpu.4ud", "count" : 2, "azs" : [ { "az" : "cn-north-7c", "count" : 2 } ] } ] } } } 状态码: 404 Not Found。 { "error_code" : "ModelArts.50015001", "error_msg" : "pool not found" }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 apiVersion String API版本。可选值如下: v2 kind String 资源类型。可选值如下: Pool:资源池 metadata PoolMetadataDeletion object 资源池的metadata信息。 spec PoolSpecModel object 资源池的描述信息。 status PoolStatus object 资源池的状态信息。 表4 PoolMetadataDeletion 参数 参数类型 描述 name String 系统自动生成的pool名称,相当于poolId。 creationTimestamp String 时间戳,例如"2021-11-01T03:49:41Z"。 deletionTimestamp String 时间戳,例如"2021-11-01T03:49:41Z"。 labels PoolMetaLabels object 资源池的标签信息。 annotations PoolMetaAnnotations object 资源池的注释信息。 表5 PoolMetaLabels 参数 参数类型 描述 os.modelarts/workspace.id String 工作空间id。 os.modelarts/name String 用户指定的pool名称。 os.modelarts/resource.id String 资源池的主资源id,通常提供给cbc使用。 os.modelarts/tenant.domain.id String 资源池的租户id,记录资源池创建在哪个租户账号下。 表6 PoolMetaAnnotations 参数 参数类型 描述 os.modelarts/description String 资源池的描述信息。 os.modelarts/billing.mode String 计费模式。可选值如下: 0:按需计费 1:包周期计费 os.modelarts/period.num String 包周期订购周期,比如2。 os.modelarts/period.type String 包周期订购类型。可选值如下: 2:月 3:年 4:小时 os.modelarts/auto.renew String 是否自动续费.可选值如下: 0:不自动续费,默认值 1:自动续费 os.modelarts/promotion.info String 用户在cbc选择的折扣信息。 os.modelarts/service.console.url String 订购订单支付完成后跳转的url地址。 os.modelarts/order.id String 订单id,包周期资源池创建或者计费模式变更的时候该参数必需。 os.modelarts/flavor.resource.ids String 每种规格对应的resourceId,主要和cbc交互使用。 os.modelarts/tms.tags String 创建的时候由用户指定的TMS标签。 表7 PoolSpecModel 参数 参数类型 描述 type String 资源池类型。可选值如下: Dedicate:物理资源池,独立的网络,支持网络打通,定制驱动,定制作业类型。 scope Array of strings 资源池支持的作业类型。至少选择一种,物理资源池支持全部选择。可选值如下: Train:训练作业 Infer:推理作业 Notebook:Notebook作业 resources Array of resources objects 资源池中的资源规格信列表,包括资源规格和相应规格的资源数量。 network network object 资源池网络参数。物理资源池时必选。 jobFlavors Array of strings 资源池支持的作业规格信息列表,内容为作业规格名称。 driver PoolDriver object 资源池的驱动信息。 controlMode Integer 资源池的受限状态。可选值如下: 0:代表不受限 1:转包周期受限 2:规格变更受限 4:服务受限 8:冻结 16:公安冻结(不可退订) 另外状态是可以叠加的,比如9代表转包周期受限+冻结状态。 表8 resources 参数 参数类型 描述 flavor String 资源规格,比如:modelarts.vm.gpu.tnt004。 count Integer 相应规格资源数量。 azs Array of PoolNodeAz objects az列表信息。 表9 PoolNodeAz 参数 参数类型 描述 az String az名称。 count Integer 指定az扩容时,指定az的节点数。 表10 network 参数 参数类型 描述 name String 网络名称;用户接口通过指定网络名称创建网络,系统会自动创建子网,用户无法创建子网。默认将创建在第一个子网下。 表11 PoolDriver 参数 参数类型 描述 gpuVersion String GPU驱动版本,物理资源池中含有GPU规格时可填,例如:"440.33"。 npuVersion String NPU驱动版本,物理资源池中含有ascend规格时可填,例如:"C78"。 updateStrategy String 驱动升级策略。可选值如下: force:强制升级,立即升级节点驱动,可能影响节点上正在运行的作业 idle:安全升级,待节点上没有作业运行时进行驱动升级 表12 PoolStatus 参数 参数类型 描述 phase String 资源池集群状态。可选值如下: Creating:创建中 Running:运行中 Abnormal:资源池不正常 Deleting:删除中 Error:资源池错误 message String 资源池处于当前状态的提示信息。 resources resources object 资源池中不同状态的资源量。 scope Array of scope objects 资源池业务状态信息。 driver driver object 资源池驱动信息。 parent String 资源池父节点名称,物理池为空。 root String 资源池根节点名称,物理池为自己的名称。 表13 resources 参数 参数类型 描述 creating PoolResourceFlavorCount object 状态为创建中状态的资源量。 available PoolResourceFlavorCount object 状态为可用状态的资源量。 abnormal PoolResourceFlavorCount object 状态为非正常状态的资源量。 deleting PoolResourceFlavorCount object 状态为删除中状态的资源量。 表14 PoolResourceFlavorCount 参数 参数类型 描述 flavor String 资源规格名称,比如:modelarts.vm.gpu.tnt004。 count Integer 规格保障使用量。 maxCount Integer 资源规格的弹性使用量,物理池该值和count相同。 azs Array of azs objects 资源所在的AZ的数量。 表15 azs 参数 参数类型 描述 az String AZ的名称。 count Integer AZ的资源数量。 表16 scope 参数 参数类型 描述 scopeType String 业务类型。可选值如下: Train:训练任务 Infer:推理任务 Notebook:Notebook作业 state String 业务状态。可选值如下: Enabling:启动中 Enabled:已启动 Disabling:关闭中 Disabled:已关闭 表17 driver 参数 参数类型 描述 gpu PoolDriverStatus object GPU驱动信息。 npu PoolDriverStatus object NPU驱动信息。 表18 PoolDriverStatus 参数 参数类型 描述 version String 当前驱动版本。 state String 当前驱动状态。可选值如下: Creating:创建中 Upgrading:升级中 Running:运行中 Abnormal:不正常 状态码: 404 表19 响应Body参数 参数 参数类型 描述 error_code String ModelArts错误码。 error_msg String 具体错误信息。
  • 请求示例 创建工作空间。设置工作空间名称为“test-workspace”,授权类型为“internal”,授权的IAM用户名称为“test”。 POST https://{endpoint}/v1/{project_id}/workspaces { "name" : "test-workspace", "description" : "It is a test project", "enterprise_project_id" : "***b0091-887f-4839-9929-cbc884f1e***", "auth_type" : "internal", "grants" : [ { "user_name" : "test" } ] }
  • 响应示例 状态码: 200 创建工作空间成功的响应参数。 { "id" : "**d05d1a553b4e188ea878e7dcb85e**", "name" : "test-workspace", "description" : "It is a test project'", "owner" : "testUser", "create_time" : 1470000020000, "update_time" : 1470000030000, "enterprise_project_id" : "***b0091-887f-4839-9929-cbc884f1e***", "enterprise_project_name" : "test-eps", "auth_type" : "public", "status" : "NORMAL", "status_info" : "" }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 grants 否 Array of grants objects 授权用户列表,默认为空。需要与“auth_type”参数配合使用,且仅当授权类型为“INTERNAL”时才会生效。 auth_type 否 String 授权类型。可选值有PUBLIC、PRIVATE、INTERNAL。默认值为PUBLIC。 PUBLIC:租户内部公开访问。 PRIVATE:仅创建者和主账号可访问。 INTERNAL:创建者、主账号、指定IAM子账号可访问,需要与grants参数配合使用。 enterprise_project_id 否 String 企业项目ID。 name 是 String 工作空间名称。长度限制为4-64字符,支持中文、大小写字母、数字、中划线和下划线。同时'default'为系统预留的默认工作空间名称,用户无法自己创建名为'default'的工作空间。 description 否 String 工作空间描述,默认为空。长度限制为0-256字符。 表4 grants 参数 是否必选 参数类型 描述 user_id 否 String IAM用户ID。此参数与user_name必填一个。两者都填优先使用user_id。 user_name 否 String IAM用户名称。此参数与user_id必填一个。
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 owner String 创建者名称。 auth_type String 授权类型。默认值为PUBLIC。PUBLIC:租户内部公开访问。PRIVATE:仅创建者和主账号可访问。INTERNAL:创建者、主账号、指定IAM子账号可访问,需要与grants参数配合使用。 enterprise_project_id String 企业项目ID。 update_time Integer 最后修改时间,UTC。 create_time Integer 创建时间,UTC。 enterprise_project_name String 企业项目名称。 name String 工作空间名称。 description String 工作空间描述。 id String 工作空间ID,系统生成的32位UUID,不带橫线。 status String 工作空间状态。 CREATE_FAILED:创建失败。 NORMAL:状态正常。 DELETING:正在删除。 DELETE_FAILED:删除失败。 status_info String 状态描述,默认为空。该字段会补充显示状态的详细信息。如删除失败时,可通过该字段查看删除失败的原因。 grants Array of grants objects 授权用户列表。默认为空。需要与“auth_type”参数配合使用,且仅当授权类型为“INTERNAL”时才会生效。 表6 grants 参数 参数类型 描述 user_id String 用户ID,此参数与user_name必填一个。两者都填优先使用user_id。 user_name String IAM用户名称。此参数与user_id必填一个。
  • 请求示例 PUT https://{endpoint}/v1/{project_id}/workspaces/ccd05d1a553b4e188ea878e7dcb85e47 { "name" : "my_workspace", "description" : "It is my workspace", "auth_type" : "INTERNAL", "grants" : [ { "user_name" : "my_iam_user" } ] }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 grants 否 Array of grants objects 训练作业使用的数据集。不可与data_url或dataset_id/dataset_version_id同时使用。 auth_type 否 String 授权类型。可选值有PUBLIC、PRIVATE、INTERNAL。默认值为PUBLIC。 PUBLIC:租户内部公开访问。 PRIVATE:仅创建者和主账号可访问。 INTERNAL:创建者、主账号、指定IAM子账号可访问,需要与grants参数配合使用。 name 否 String 工作空间名称。长度限制为4-64字符,支持中文、大小写字母、数字、中划线和下划线。同时'default'为系统预留的默认工作空间名称,用户无法自己创建名为'default'的工作空间。 description 否 String 工作空间描述,默认为空。长度限制为0-256字符。 表4 grants 参数 是否必选 参数类型 描述 user_id 否 String IAM用户ID。此参数与user_name必填一个。两者都填优先使用user_id。 user_name 否 String IAM用户名称。此参数与user_id必填一个。
  • 请求示例 创建专属资源池。设置资源类型为“Pool”,资源池名称为“pool-001”,资源池类型为“Dedicate”(物理资源池),资源池支持的作业类型为“训练作业”。 POST https://{endpoint}/v2/{project_id}/pools { "kind" : "Pool", "apiVersion" : "v2", "metadata" : { "labels" : { "os.modelarts/name" : "pool-001", "os.modelarts/workspace.id" : "0" }, "annotations" : { "os.modelarts/description" : "", "os.modelarts/billing.mode" : "0" } }, "spec" : { "type" : "Dedicate", "scope" : [ "Train" ], "network" : { "name" : "net-0123-86c13962597848eeb29c5861153a391f" }, "resources" : [ { "flavor" : "modelarts.vm.gpu.tnt004", "count" : 2 } ], "driver" : { "gpuVersion" : "440.31" } } }
  • 响应示例 状态码: 400 Bad request { "error_code" : "ModelArts.50004000", "error_msg" : "Bad request" } 状态码: 409 Already exists { "error_code" : "ModelArts.50015000", "error_msg" : "Pool already exists." }
  • 响应参数 状态码: 200 表11 响应Body参数 参数 参数类型 描述 apiVersion String API版本。可选值如下: v2 kind String 资源类型。可选值如下: Pool:资源池 metadata PoolMetadata object 资源池的metadata信息。 spec PoolSpecModel object 资源池的期望信息。 status PoolStatus object 资源池的状态信息。 表12 PoolMetadata 参数 参数类型 描述 name String 系统自动生成的pool名称,相当于pool ID。 creationTimestamp String 时间戳,例如"2021-11-01T03:49:41Z"。 labels PoolMetaLabels object 资源池的标签信息。 annotations PoolMetaAnnotations object 资源池的注释信息。 表13 PoolMetaLabels 参数 参数类型 描述 os.modelarts/workspace.id String 工作空间id。 os.modelarts/name String 用户指定的pool名称。 os.modelarts/resource.id String 资源池的主资源id,通常提供给cbc使用。 os.modelarts/tenant.domain.id String 资源池的租户id,记录资源池创建在哪个租户账号下。 表14 PoolMetaAnnotations 参数 参数类型 描述 os.modelarts/description String 资源池的描述信息。 os.modelarts/billing.mode String 计费模式。可选值如下: 0:按需计费 1:包周期计费 os.modelarts/period.num String 包周期订购周期,比如2。 os.modelarts/period.type String 包周期订购类型。可选值如下: 2:月 3:年 4:小时 os.modelarts/auto.renew String 是否自动续费.可选值如下: 0:不自动续费,默认值 1:自动续费 os.modelarts/promotion.info String 用户在cbc选择的折扣信息。 os.modelarts/service.console.url String 订购订单支付完成后跳转的url地址。 os.modelarts/order.id String 订单id,包周期资源池创建或者计费模式变更的时候该参数必需。 os.modelarts/flavor.resource.ids String 每种规格对应的resourceId,主要和cbc交互使用。 os.modelarts/tms.tags String 创建的时候由用户指定的TMS标签。 表15 PoolSpecModel 参数 参数类型 描述 type String 资源池类型。可选值如下: Dedicate:物理资源池,独立的网络,支持网络打通,定制驱动,定制作业类型。 scope Array of strings 资源池支持的作业类型。至少选择一种,物理资源池支持全部选择。可选值如下: Train:训练作业 Infer:推理作业 Notebook:Notebook作业 resources Array of resources objects 资源池中的资源规格信列表,包括资源规格和相应规格的资源数量。 network network object 资源池网络参数。物理资源池时必选。 jobFlavors Array of strings 资源池支持的作业规格信息列表,内容为作业规格名称。 driver PoolDriver object 资源池的驱动信息。 controlMode Integer 资源池的受限状态。可选值如下: 0:代表不受限 1:转包周期受限 2:规格变更受限 4:服务受限 8:冻结 16:公安冻结(不可退订) 另外状态是可以叠加的,比如9代表转包周期受限+冻结状态。 表16 resources 参数 参数类型 描述 flavor String 资源规格,比如:modelarts.vm.gpu.tnt004。 count Integer 相应规格资源数量。 azs Array of PoolNodeAz objects az列表信息。 表17 PoolNodeAz 参数 参数类型 描述 az String az名称。 count Integer 指定az扩容时,指定az的节点数。 表18 network 参数 参数类型 描述 name String 网络名称;用户接口通过指定网络名称创建网络,系统会自动创建子网,用户无法创建子网。默认将创建在第一个子网下。 表19 PoolDriver 参数 参数类型 描述 gpuVersion String GPU驱动版本,物理资源池中含有GPU规格时可填,例如:"440.33"。 npuVersion String NPU驱动版本,物理资源池中含有ascend规格时可填,例如:"C78"。 updateStrategy String 驱动升级策略。可选值如下: force:强制升级,立即升级节点驱动,可能影响节点上正在运行的作业 idle:安全升级,待节点上没有作业运行时进行驱动升级 表20 PoolStatus 参数 参数类型 描述 phase String 资源池集群状态。可选值如下: Creating:创建中 Running:运行中 Abnormal:资源池不正常 Deleting:删除中 Error:资源池错误 message String 资源池处于当前状态的提示信息。 resources resources object 资源池中不同状态的资源量。 scope Array of scope objects 资源池业务状态信息。 driver driver object 资源池驱动信息。 parent String 资源池父节点名称,物理池为空。 root String 资源池根节点名称,物理池为自己的名称。 表21 resources 参数 参数类型 描述 creating PoolResourceFlavorCount object 状态为创建中状态的资源量。 available PoolResourceFlavorCount object 状态为可用状态的资源量。 abnormal PoolResourceFlavorCount object 状态为非正常状态的资源量。 deleting PoolResourceFlavorCount object 状态为删除中状态的资源量。 表22 PoolResourceFlavorCount 参数 参数类型 描述 flavor String 资源规格名称,比如:modelarts.vm.gpu.tnt004。 count Integer 规格保障使用量。 maxCount Integer 资源规格的弹性使用量,物理池该值和count相同。 azs Array of azs objects 资源所在的AZ的数量。 表23 azs 参数 参数类型 描述 az String AZ的名称。 count Integer AZ的资源数量。 表24 scope 参数 参数类型 描述 scopeType String 业务类型。可选值如下: Train:训练任务 Infer:推理任务 Notebook:Notebook作业 state String 业务状态。可选值如下: Enabling:启动中 Enabled:已启动 Disabling:关闭中 Disabled:已关闭 表25 driver 参数 参数类型 描述 gpu PoolDriverStatus object GPU驱动信息。 npu PoolDriverStatus object NPU驱动信息。 表26 PoolDriverStatus 参数 参数类型 描述 version String 当前驱动版本。 state String 当前驱动状态。可选值如下: Creating:创建中 Upgrading:升级中 Running:运行中 Abnormal:不正常 状态码: 400 表27 响应Body参数 参数 参数类型 描述 error_code String ModelArts错误码。 error_msg String 具体错误信息。 状态码: 409 表28 响应Body参数 参数 参数类型 描述 error_code String ModelArts错误码。 error_msg String 具体错误信息。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-ModelArts-User-ID 否 String 实际的外部租户ID,如果有的话,工作空间鉴权以该ID为准。 表3 请求Body参数 参数 是否必选 参数类型 描述 apiVersion 是 String API版本。可选值如下: v2 kind 是 String 资源类型。可选值如下: Pool:资源池 metadata 是 PoolMetadataCreation object 资源池的metadata信息。 spec 否 PoolSpecCreation object 资源池的描述信息。 表4 PoolMetadataCreation 参数 是否必选 参数类型 描述 labels 是 PoolLabelsCreation object 资源池的标签信息。 annotations 否 PoolAnnotationsCreation object 资源池的注释信息。 表5 PoolLabelsCreation 参数 是否必选 参数类型 描述 os.modelarts/workspace.id 否 String 工作空间ID,默认值0。 os.modelarts/name 是 String 用户指定的pool名称。 表6 PoolAnnotationsCreation 参数 是否必选 参数类型 描述 os.modelarts/description 否 String 资源池的描述信息。 os.modelarts/billing.mode 否 String 计费模式,可选值如下: 0:按需计费 1:包周期计费 os.modelarts/period.num 否 String 包周期订购周期,比如2。当计费模式为包周期时该参数必传。 os.modelarts/period.type 否 String 包周期订购类型。可选值如下: 2:月 3:年 当计费模式为包周期时该参数必传。 os.modelarts/auto.renew 否 String 是否自动续费。可选值如下: 0:不自动续费,默认值 os.modelarts/promotion.info 否 String 用户在cbc选择的折扣信息。 os.modelarts/service.console.url 否 String 订购订单支付完成后跳转的url地址。 os.modelarts/order.id 否 String 订单id,包周期资源池创建或者计费模式变更的时候该参数必需。 表7 PoolSpecCreation 参数 是否必选 参数类型 描述 type 是 String 资源池类型。可选值如下: Dedicate:物理资源池,独立的网络,支持网络打通,定制驱动,定制作业类型。 scope 是 Array of strings 资源池支持的作业类型。至少选择一种,物理资源池支持全部选择。可选值如下: Train:训练作业 Infer:推理作业 Notebook:Notebook作业 resources 是 Array of PoolResourceFlavor objects 资源池中的资源规格信列表,包括资源规格和相应规格的资源数量。 network 是 network object 资源池网络参数。物理资源池时必选。 jobFlavors 否 Array of strings 资源池支持的作业规格信息列表,内容为作业规格名称。 driver 否 PoolDriver object 资源池的驱动信息。 表8 PoolResourceFlavor 参数 是否必选 参数类型 描述 flavor 是 String 资源规格,比如:modelarts.vm.gpu.tnt004。 count 是 Integer 相应规格资源数量。 表9 network 参数 是否必选 参数类型 描述 name 是 String 网络名称,即网络详情中的metadata.name字段的值。用户接口通过指定网络名称创建网络,系统会自动创建子网,用户无法创建子网。默认将创建在第一个子网下。 表10 PoolDriver 参数 是否必选 参数类型 描述 gpuVersion 否 String GPU驱动版本,物理资源池中含有GPU规格时可填,例如:"440.33"。 npuVersion 否 String NPU驱动版本,物理资源池中含有ascend规格时可填,例如:"C78"。 updateStrategy 否 String 驱动升级策略。可选值如下: force:强制升级,立即升级节点驱动,可能影响节点上正在运行的作业 idle:安全升级,待节点上没有作业运行时进行驱动升级
  • 响应示例 状态码: 200 查询工作空间详情成功的响应参数。 { "id" : "**d05d1a553b4e188ea878e7dcb85e**", "name" : "test-workspace", "status" : "NORMAL", "status_info" : "", "description" : "", "owner" : "testUser", "create_time" : 1470000020000, "update_time" : 1470000030000, "enterprise_project_id" : "***b0091-887f-4839-9929-cbc884f1e***", "enterprise_project_name" : "test-eps", "auth_type" : "INTERNAL", "grants" : [ { "user_id" : "***55d2cd53b4x458ea878e7dcb85***", "user_name" : "test-iam-user" } ] }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 grants Array of grants objects 授权用户列表。默认为空。需要与“auth_type”参数配合使用,且仅当授权类型为“INTERNAL”时才会生效。 owner String 创建者名称。 auth_type String 授权类型。可选值有PUBLIC、PRIVATE、INTERNAL。默认值为PUBLIC。 PUBLIC:租户内部公开访问。 PRIVATE:仅创建者和主账号可访问。 INTERNAL:创建者、主账号、指定IAM子账号可访问,需要与grants参数配合使用。 enterprise_project_id String 企业项目ID。 update_time Integer 最后修改时间,UTC。 create_time Integer 创建时间,UTC。 enterprise_project_name String 企业项目名称。 name String 工作空间名称。长度限制为4-64字符,支持中文、大小写字母、数字、中划线和下划线。同时'default'为系统预留的默认工作空间名称,用户无法自己创建名为'default'的工作空间。 description String 工作空间描述,默认为空。长度限制为0-256字符。 id String 工作空间ID,系统生成的32位UUID,不带橫线。 status String 工作空间状态。 CREATE_FAILED:创建失败。 NORMAL:状态正常。 DELETING:正在删除。 DELETE_FAILED:删除失败。 status_info String 状态描述,默认为空。该字段会补充显示状态的详细信息。如删除失败时,可通过该字段查看删除失败的原因。 表4 grants 参数 参数类型 描述 user_id String IAM用户ID。此参数与user_name必填一个。两者都填优先使用user_id。 user_name String IAM用户名称。此参数与user_id必填一个。
共100000条