华为云AI开发平台ModelArts创建和修改工作空间_云淘科技

本节通过调用一系列API,以创建和修改工作空间为例介绍ModelArts API的使用流程。

概述

创建和修改工作空间的流程如下:

调用认证鉴权接口获取用户Token,在后续的请求中需要将Token放到请求消息头中作为认证。
调用创建工作空间接口创建一个工作空间。
调用查询工作空间详情接口根据工作空间ID查询工作空间的详细信息。
调用修改工作空间接口根据工作空间ID修改工作空间的名称、描述、授权类型等信息。
当不需要该工作空间时,可以调用删除工作空间接口删除工作空间。

前提条件

已获取IAM的EndPoint和ModelArts的EndPoint。
确认服务的部署区域,获取项目名称和ID、获取帐号名和ID和获取用户名和ID。

操作步骤

调用认证鉴权接口获取用户的Token。

请求消息体:

URI格式:POST https://{iam_endpoint}/v3/auth/tokens

请求消息头:Content-Type →application/json

请求Body:

{
  "auth": {
    "identity": {
      "methods": ["password"],
      "password": {
        "user": {
          "name": "user_name", 
          "password": "user_password",
          "domain": {
            "name": "domain_name"  
          }
        }
      }
    },
    "scope": {
      "project": {
        "name": "cn-north-1"  
      }
    }
  }
}

其中,加粗的斜体字段需要根据实际值填写:

iam_endpoint为IAM的终端节点。
user_name为IAM用户名。
user_password为用户登录密码。
domain_name为用户所属的帐号名。
cn-north-1为项目名,代表服务的部署区域。

返回状态码“201 Created”,在响应Header中获取“X-Subject-Token”的值即为Token,如下所示:

x-subject-token →MIIZmgYJKoZIhvcNAQcCoIIZizCCGYcCAQExDTALBglghkgBZQMEAgEwgXXXXXX...

调用创建工作空间接口创建一个工作空间。

请求消息体:

URI:POST https://{endpoint}/v1/{project_id}/workspaces

请求消息头:

X-auth-Token →MIIZmgYJKoZIhvcNAQcCoIIZizCCGYcCAQExDTALBglghkgBZQMEAgEwgXXXXXX…
Content-Type →application/json

请求Body:

{
	"name": "test_workspace",
	"description": "It is my workspace",
	"enterprise_project_id": "0",
	"auth_type": "PUBLIC",
	"grants": [
		{
		"user_id": "aa7efa8801024da08a7fa92dc0******",
		"user_name": ""
		}
		]
}

其中,加粗的斜体字段需要根据实际值填写:

endpoint为ModelArts的终端节点。
project_id为用户的项目ID。
“X-auth-Token”是上一步获取到的Token值。
“user_id”为用户ID。

返回状态码“200 OK”,响应Body如下所示:

{
    "id": "f3deca1406da4910a50f3919940b9bda",
    "name": "test_workspace",
    "description": "It is my workspace",
    "owner": "test166",
    "create_time": 1625453558000,
    "update_time": 1625453558000,
    "enterprise_project_id": "0",
    "enterprise_project_name": "default",
    "auth_type": "public",
    "status": "NORMAL",
    "status_info": ""
}

“id”为新建的工作空间ID,记录该值用于后续步骤。

调用查询工作空间详情接口根据工作空间ID查询工作空间的详细信息。

请求消息体:

URI:GET https://{endpoint}/v1/{project_id}/workspaces/{workspaces_id}

请求消息头:X-auth-Token →MIIZmgYJKoZIhvcNAQcCoIIZizCCGYcCAQExDTALBglghkgBZQMEAgEwgXXXXXX…

其中,加粗的斜体字段需要根据实际值填写,“workspace_id”为2获取的工作空间ID。

返回状态码“200 OK”,响应Body如下所示:

{
    "id": "f3deca1406da4910a50f3919940b9bda",
    "name": "test_workspace",
    "description": "It is my workspace",
    "owner": "test166",
    "create_time": 1625453558000,
    "update_time": 1625453558000,
    "enterprise_project_id": "0",
    "enterprise_project_name": "default",
    "auth_type": "public",
    "status": "NORMAL",
    "status_info": ""
}

根据响应可以了解工作空间的详细信息,其中“status”为“NORMAL”表示工作空间的状态正常。

调用修改工作空间接口根据工作空间ID修改工作空间的名称、描述、授权类型等信息。

请求消息体:

URI:PUT https://{endpoint}/v1/{project_id}/workspaces/{workspaces_id}

请求消息头:

X-auth-Token →MIIZmgYJKoZIhvcNAQcCoIIZizCCGYcCAQExDTALBglghkgBZQMEAgEwgXXXXXX…
Content-Type →application/json

请求Body:

{
	"name": "new_name",
	"description": "update description",
	"auth_type":"INTERNAL",
	"grants":
	[
		{"user_id": "aa7efa8801024da08a7fa92dc0******"}
	]
}

其中,加粗的斜体字段需要根据实际值填写,“name”和“description”填写要修改的工作空间名称和描述。

返回状态码“200 OK”表示修改完成,响应Body如下所示:

{
    "workspace_id": "f3deca1406da4910a50f3919940b9bda"
}

当不需要该工作空间时,可以调用删除工作空间接口删除工作空间。

请求消息体:

URI:DELETE https://{endpoint}/v1/{project_id}/workspaces/{workspaces_id}

请求消息头:X-auth-Token →MIIZmgYJKoZIhvcNAQcCoIIZizCCGYcCAQExDTALBglghkgBZQMEAgEwgXXXXXX…

其中,加粗的斜体字段需要根据实际值填写。

返回状态码“200 OK”表示删除成功,响应Body如下所示:

{
    "workspace_id": "f3deca1406da4910a50f3919940b9bda"
}

父主题: 应用示例

同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家