华为云用户手册

  • 响应消息 响应参数如表5所示。 表5 响应参数 参数 参数类型 说明 is_success Boolean 请求是否成功。 error_message String 调用失败时的错误信息。 调用成功时无此字段。 error_code String 调用失败时的错误码,具体请参见错误码。 调用成功时无此字段。 job_id Long 可视化作业的ID。 job_name String 可视化作业的名称 status Integer 可视化作业的运行状态,详细作业状态列表请参见作业状态参考。 create_time Long 可视化作业的创建时间,时间戳格式。 service_url String 可视化作业的endpoint。
  • 请求消息 请求参数如表2所示。 表2 请求参数 参数 是否必选 参数类型 说明 job_name 是 String 可视化作业名称。限制为1-20位只含数字,字母,下划线,中划线的名称。 job_desc 否 String 对可视化作业的描述,默认为空,字符串的长度限制为[0, 256]。 train_url 是 String OBS路径地址。 job_type 否 String 可视化的类型,可选的有tensorboard和mindinsight,默认为tensorboard。 flavor 否 Object 创建可视化作业选择的规格,用户无需填写。参见表3。 schedule 否 Object 自动停止设置。参见表4。 表3 flavor属性列表 参数 是否必选 参数类型 说明 code 是 String 可视化作业选择的资源规格编码。通过flavor接口获得。 表4 schedule属性列表 参数 是否必选 参数类型 说明 type 是 String 设置为stop。 time_unit 是 String 自动停止功能的时间单位 HOURS。 duration 是 Int 自动停止,时间范围为[0,24]。
  • 响应示例 成功响应示例 { "spec_code": "modelarts.vm.gpu.v100", "user_image_url": "100.125.5.235:20202/jobmng/custom-cpu-base:1.0", "user_command": "bash -x /home/work/run_train.sh python /home/work/user-job-dir/app/mnist/mnist_softmax.py --data_url /home/work/user-job-dir/app/mnist_data", "gpu_type": "nvidia-v100", "dataset_version_id": "2ff0d6ba-c480-45ae-be41-09a8369bfc90", "engine_name": "TensorFlow", "is_success": true, "nas_mount_path": "/home/work/nas", "worker_server_num": 1, "nas_share_addr": "192.168.8.150:/", "train_url": "/test/minst/train_out/out1/", "nas_type": "nfs", "spec_id": 4, "parameter": [ { "label": "learning_rate", "value": 0.01 } ], "log_url": "/usr/log/", "config_name": "config123", "app_url": "/usr/app/", "create_time": 1559045426000, "dataset_id": "38277e62-9e59-48f4-8d89-c8cf41622c24", "volumes": [ { "nfs": { "id": "43b37236-9afa-4855-8174-32254b9562e7", "src_path": "192.168.8.150:/", "dest_path": "/home/work/nas", "read_only": false } }, { "host_path": { "src_path": "/root/work", "dest_path": "/home/mind", "read_only": false } } ], "cpu": "64", "model_id": 4, "boot_file_url": "/usr/app/boot.py", "dataset_name": "dataset-test", "pool_id": "pool9928813f", "config_desc": "This is a config desc test", "gpu_num": 1, "data_source": [ { "type": "obs", "data_url": "/test/minst/data/" } ], "pool_name": "pnt1", "dataset_version_name": "dataset-version-test", "core": "8", "engine_type": 1, "engine_id": 3, "engine_version": "TF-1.8.0-python2.7", "data_url": "/test/minst/data/" } 失败响应示例 { "is_success": false, "error_message": "Error string", "error_code": "ModelArts.0105" }
  • 响应消息 响应参数如表3所示。 表3 响应参数 参数 参数类型 说明 is_success Boolean 请求是否成功。 error_message String 调用失败时的错误信息。 调用成功时无此字段。 error_code String 调用失败时的错误码,具体请参见错误码。调用成功时无此字段。 config_name String 训练作业参数的名称。 config_desc String 训练作业参数的描述信息。 worker_server_num Integer 训练作业worker的个数。 app_url String 训练作业的代码目录。 boot_file_url String 训练作业的代码启动文件。 model_id Long 训练作业的模型ID。 parameter JSON Array 训练作业的运行参数,为“label-value”格式;当为 自定义镜像 训练作业的时候,此参数为容器环境变量。详情请查看表8 spec_id Long 训练作业资源规格ID。 data_url String 训练作业的数据集。 dataset_id String 训练作业的数据集ID。 dataset_version_id String 训练作业的数据集版本ID。 data_source JSON Array 训练作业使用的多数据集。详情请查看表4。 engine_type Integer 训练作业的引擎类型。 engine_name String 训练作业的引擎名称。 engine_id Long 训练作业的引擎ID。 engine_version String 训练作业使用的引擎版本。 train_url String 训练作业的输出文件OBS路径URL,默认为空,如“/usr/train/”。 log_url String 训练作业的日志OBS输出路径URL,默认为空。如:“/usr/train/”。 user_image_url String 自定义镜像训练作业的自定义镜像的SWR-URL。 user_command String 自定义镜像训练作业的自定义镜像的容器的启动命令。 spec_code String 训练作业资源规格。 gpu_type String 资源规格gpu的类型。 create_time Long 训练作业参数创建时间 。 cpu String 资源规格CPU内存。 gpu_num Integer 资源规格gpu的个数。 core String 资源规格的核数。 dataset_name String 训练作业的数据集名称。 dataset_version_name String 训练作业的数据集名称。 pool_id String 资源池ID。 pool_name String 资源池名称。 volumes JSON Array 训练作业可使用的存储卷。具体请参见表5。 nas_mount_path String SFS Turbo (NAS) 训练本地挂载路径。如:“/home/work/nas”。 nas_share_addr String SFS Turbo (NAS) 共享路径。如:“192.168.8.150:/”。 nas_type String 当前仅支持 nfs。如:“nfs”。 表4 data_source属性列表 参数 参数类型 说明 dataset_id String 训练作业的数据集ID。 dataset_version String 训练作业的数据集版本ID。 type String 数据集类型。 “obs”:表示使用OBS的数据。 “dataset”:表示使用数据集的数据。 data_url String OBS的桶路径。
  • URI GET /v1/{project_id}/training-job-configs/{config_name} 参数说明如表1所示。 表1 路径参数 参数 是否必选 参数类型 说明 project_id 是 String 用户项目ID。获取方法请参见获取项目ID和名称。 config_name 是 String 训练作业参数的名称。 表2 Query参数 参数 是否必选 参数类型 说明 config_type 否 String 指定要查询的配置类型,可选值有以下两种 “custom”为查询用户自定义配置。 “sample”为查询示例配置,默认为“custom”。
  • 请求示例 如下以更新名为“config”的作业参数为例。 PUT https://endpoint/v1/{project_id}/training-job-configs/config { "config_desc": "This is config", "worker_server_num": 1, "app_url": "/usr/app/", "boot_file_url": "/usr/app/boot.py", "parameter": [ { "label": "learning_rate", "value": 0.01 }, { "label": "batch_size", "value": 32 } ], "spec_id": 1, "dataset_id": "38277e62-9e59-48f4-8d89-c8cf41622c24", "dataset_version_id": "2ff0d6ba-c480-45ae-be41-09a8369bfc90", "engine_id": 1, "train_url": "/usr/train/", "log_url": "/usr/log/", "model_id": 1 }
  • 响应消息 响应参数如表3所示。 表3 响应参数 参数 参数类型 说明 is_success Boolean 请求是否成功。 error_message String 调用失败时的错误信息。调用成功时无此字段。 error_code String 调用失败时的错误码,具体请参见错误码。调用成功时无此字段。 config_total_count Integer 查询到的训练作业参数的总数。 configs Array of ConfigResponse objects configs参数属性列表。 表4 configs属性列表说明 参数 参数类型 说明 config_name String 训练作业参数的名称。 config_desc String 训练作业参数的描述信息。 create_time Long 训练作业的创建时间。 engine_type integer 训练作业的引擎类型。 engine_name String 训练作业的引擎名称。 engine_id Long 训练作业的引擎ID。 engine_version String 训练作业使用的引擎版本。 user_image_url String 自定义镜像训练作业的自定义镜像的SWR-URL。如:“100.125.5.235:20202/jobmng/custom-cpu-base:1.0” user_command String 自定义镜像训练作业的自定义镜像的容器的启动命令。形式为:“bash /home/work/run_train.sh python /home/work/user-job-dir/app/train.py {python_file_parameter}”。
  • 响应示例 成功响应示例 { "is_success": true, "config_total_count": 3, "configs": [ { "config_name": "testConfig", "config_desc": "This is config", "create_time": 1524189990635, "engine_type": 1, "engine_name": "TensorFlow", "engine_id": 1, "engine_version": "TF-1.4.0-python2.7", "user_image_url": "100.125.5.235:20202/jobmng/custom-cpu-base:1.0", "user_command": "bash -x /home/work/run_train.sh python /home/work/user-job-dir/app/mnist/mnist_softmax.py --data_url /home/work/user-job-dir/app/mnist_data" } ] } 失败响应示例 { "is_success": false, "error_message": "Error string", "error_code": "ModelArts.0105" }
  • 请求示例 如下以创建名为“testConfig”,描述为“This is config”的训练作业参数为例。 POST https://endpoint/v1/{project_id}/training-job-configs { "config_name": "testConfig", "config_desc": "This is config", "worker_server_num": 1, "app_url": "/usr/app/", "boot_file_url": "/usr/app/boot.py", "parameter": [ { "label": "learning_rate", "value": "0.01" }, { "label": "batch_size", "value": "32" } ], "spec_id": 1, "dataset_id": "38277e62-9e59-48f4-8d89-c8cf41622c24", "dataset_version_id": "2ff0d6ba-c480-45ae-be41-09a8369bfc90", "engine_id": 1, "train_url": "/usr/train/", "log_url": "/usr/log/", "model_id": 1 }
  • 响应消息 相应参数如表2所示。 表2 响应参数 参数 参数类型 说明 is_success Boolean 请求是否成功。 error_message String 调用失败时的错误信息。 调用成功时无此字段。 error_code String 调用失败时的错误码,具体请参见错误码。调用成功时无此字段。 log_file_list String 训练作业的日志文件名。单机作业日志仅有一个文件,分布式作业日志有多个文件。
  • URI GET /v1/{project_id}/training-jobs/{job_id}/versions/{version_id}/log/file-names 参数说明如表1所示。 表1 参数说明 参数 是否必选 参数类型 说明 project_id 是 String 用户项目ID。获取方法请参见获取项目ID和名称。 job_id 是 Long 训练作业的ID。 version_id 是 Long 训练作业的版本ID。
  • URI POST /v1/{project_id}/training-jobs/{job_id}/versions/{version_id}/stop 参数说明如表1所示。 表1 参数说明 参数 是否必选 参数类型 说明 project_id 是 String 用户项目ID。获取方法请参见获取项目ID和名称。 job_id 是 Long 训练作业的ID。 version_id 是 Long 训练作业的版本ID。
  • 请求示例 如下以创建“job_id”为10,“pre_version_id”为20的一个新版本作业为例。 POST https://endpoint/v1/{project_id}/training-jobs/10/versions/ { "job_desc": "This is a ModelArts job", "config": { "worker_server_num": 1, "app_url": "/usr/app/", "boot_file_url": "/usr/app/boot.py", "parameter": [ { "label": "learning_rate", "value": "0.01" }, { "label": "batch_size", "value": "32" } ], "dataset_id": "38277e62-9e59-48f4-8d89-c8cf41622c24", "dataset_version_id": "2ff0d6ba-c480-45ae-be41-09a8369bfc90", "spec_id": 1, "engine_id": 1, "train_url": "/usr/train/", "log_url": "/usr/log/", "pre_version_id": 20, "model_id": 1, "pool_id": "test-pool" } }
  • 响应消息 响应参数如表6所示。 表6 响应参数 参数 参数类型 说明 is_success Boolean 请求是否成功。 error_message String 调用失败时的错误信息。 调用成功时无此字段。 error_code String 调用失败时的错误码,具体请参见错误码。调用成功时无此字段。 job_id Long 训练作业的ID。 job_name String 训练作业的名称 status Int 训练作业的运行状态,详细作业状态列表请参见作业状态参考。 create_time Long 训练作业的创建时间,时间戳格式。 version_id Long 训练作业的版本ID。 version_name String 训练作业的版本名称。
  • 响应示例 成功响应示例 { "is_success": true, "job_id": 10, "job_name": "TestModelArtsJob", "status": 1, "create_time": 1524189990635, "version_id": 10, "version_name":"V0001" } 失败响应示例 { "is_success": false, "error_message": "Error string", "error_code": "ModelArts.0105" }
  • 响应示例 成功响应示例 { "is_success": true, "job_id": 10, "job_name": "testModelArtsJob", "job_desc": "testModelArtsJob desc", "version_count": 2, "versions": [ { "version_id": 10, "version_name": "V0004", "pre_version_id": 5, "engine_type": 1, "engine_name": "TensorFlow", "engine_id": 1, "engine_version": "TF-1.4.0-python2.7", "status": 10, "app_url": "/usr/app/", "boot_file_url": "/usr/app/boot.py", "create_time": 1524189990635, "parameter": [ { "label": "learning_rate", "value": 0.01 } ], "duration": 532003, "spec_id": 1, "core": 2, "cpu": 8, "gpu": true, "gpu_num": 2, "gpu_type": "Pnt1", "worker_server_num": 1, "data_url": "/usr/data/", "train_url": "/usr/train/", "log_url": "/usr/log/", "dataset_version_id": "2ff0d6ba-c480-45ae-be41-09a8369bfc90", "dataset_id": "38277e62-9e59-48f4-8d89-c8cf41622c24", "data_source": [ { "type": "obs", "data_url": "/qianjiajun-test/minst/data/" } ], "user_image_url": "100.125.5.235:20202/jobmng/custom-cpu-base:1.0", "user_command": "bash -x /home/work/run_train.sh python /home/work/user-job-dir/app/mnist/mnist_softmax.py --data_url /home/work/user-job-dir/app/mnist_data", "model_id": 1, "model_metric_list": "{\"metric\":[{\"metric_values\":{\"recall\":0.005833,\"precision\":0.000178,\"accuracy\":0.000937},\"reserved_data\":{},\"metric_meta\":{\"class_name\":0,\"class_id\":0}}],\"total_metric\":{\"total_metric_meta\":{},\"total_reserved_data\":{},\"total_metric_values\":{\"recall\":0.005833,\"id\":0,\"precision\":0.000178,\"accuracy\":0.000937}}}", "system_metric_list": "{\"cpuUsage\":[\"0\",\"3.10\",\"5.76\",\"0\",\"0\",\"0\",\"0\"],\"memUsage\":[\"0\",\"0.77\",\"2.09\",\"0\",\"0\",\"0\",\"0\"],\"gpuUtil\":[\"0\",\"0.25\",\"0.88\",\"0\",\"0\",\"0\",\"0\"],\"gpuMemUsage\":[\"0\",\"0.65\",\"6.01\",\"0\",\"0\",\"0\",\"0\"],\"diskReadRate\":[\"0\",\"91811.07\",\"38846.63\",\"0\",\"0\",\"0\",\"0\"],\"diskWriteRate\":[\"0\",\"2.23\",\"0.94\",\"0\",\"0\",\"0\",\"0\"],\"recvBytesRate\":[\"0\",\"5770405.50\",\"2980077.75\",\"0\",\"0\",\"0\",\"0\"],\"sendBytesRate\":[\"0\",\"12607.17\",\"10487410.00\",\"0\",\"0\",\"0\",\"0\"],\"interval\":1}", "dataset_name": "dataset-test", "dataset_version_name": "dataset-version-test", "start_time": 1563172362000, "volumes": [ { "nfs": { "id": "43b37236-9afa-4855-8174-32254b9562e7", "src_path": "192.168.8.150:/", "dest_path": "/home/work/nas", "read_only": false } }, { "host_path": { "src_path": "/root/work", "dest_path": "/home/mind", "read_only": false } } ], "pool_id": "pool9928813f", "pool_name": "pnt1", "nas_mount_path": "/home/work/nas", "nas_share_addr": "192.168.8.150:/", "nas_type": "nfs" } ] } 失败响应示例 { "is_success": false, "error_message": "Error string", "error_code": "ModelArts.0105" }
  • 响应消息 响应参数如表3所示。 表3 响应参数 参数 参数类型 说明 is_success Boolean 请求是否成功。 error_message String 调用失败时的错误信息。 调用成功时无此字段。 error_code String 调用失败时的错误码,具体请参见错误码。 调用成功时无此字段。 job_id Long 训练作业的ID。 job_name String 训练作业的名称。 job_desc String 训练作业的描述信息。 version_count Long 训练作业的版本数。 versions JSON Array 训练作业的运行版本参数。该样例请参考响应样例。属性详情参见表4。 表4 versions属性列表 参数 参数类型 说明 version_id Long 训练作业的版本ID。 version_name String 训练作业的版本名称。 pre_version_id Long 训练作业前一版本的ID。 engine_type Long 训练作业的引擎类型。 engine_name String 训练作业的引擎名称。 engine_id Long 训练作业的引擎ID。 engine_version String 训练作业的引擎版本。 status Int 训练作业的状态。 app_url String 训练作业的代码目录。 boot_file_url String 训练作业的代码启动文件。 create_time Long 训练作业的创建时间。 parameter JSON Array 训练作业的运行参数。当为自定义镜像训练作业的时候,此参数为容器环境变量。具体请参见表5。 duration Long 训练作业的运行时间,单位为毫秒。 spec_id Long 训练作业资源规格ID。 core String 资源规格的核数。 cpu String 资源规格CPU内存。 gpu Boolean 是否使用gpu。 gpu_num Integer 资源规格gpu的个数。 gpu_type String 资源规格gpu的类型。 worker_server_num Integer 训练作业worker的个数。 data_url String 训练作业的数据集。 train_url String 训练作业输出文件OBS路径。 log_url String 训练作业的日志OBS输出路径URL,默认为空。如:“/usr/log/”。 dataset_version_id String 训练作业的数据集版本ID。 dataset_id String 训练作业的数据集ID。 data_source JSON Array 训练作业使用的多数据集。具体请参见表6。 model_id Long 训练作业的模型ID。 model_metric_list String 训练作业的模型评测参数。具体请参见表7。 system_metric_list String 训练作业的系统监控指标。具体请参见表8。 user_image_url String 自定义镜像训练作业的自定义镜像的SWR-URL。 user_command String 自定义镜像训练作业的自定义镜像的容器的启动命令。 resource_id String 训练作业的计费资源ID。 dataset_name String 训练作业的数据集名称。 start_time Long 训练作业开始时间。 volumes JSON Array 训练作业可使用的存储卷。具体请参见表13。 dataset_version_name String 训练作业的数据集名称。 pool_name String 资源池名称。 pool_id String 资源池ID。 nas_mount_path String SFS Turbo (NAS) 训练本地挂载路径。如:“/home/work/nas”。 nas_share_addr String SFS Turbo (NAS) 共享路径。如:“192.168.8.150:/”。 nas_type String 当前仅支持 nfs。如:“nfs”。 表5 parameter属性列表 参数 参数类型 说明 label String 参数名称。 value String 参数值。 表6 data_source属性列表 参数 参数类型 说明 dataset_id String 训练作业的数据集ID。 dataset_version String 训练作业的数据集版本ID。 type String 数据集类型。 “obs”:表示使用OBS的数据。 “dataset”:表示使用数据集的数据。 data_url String OBS的桶路径。 表7 model_metric_list属性列表 参数 参数类型 说明 metric JSON Array 训练作业的模型单个分类测评参数。 total_metric JSON 训练作业的模型总测评参数。具体请参见表11。 表8 system_metric_list属性列表 参数 参数类型 说明 cpuUsage Array 训练作业CPU资源占用率。 memUsage Array 训练作业内存资源占用率。 gpuUtil Array 训练作业GPU资源占用率。 表9 metric属性列表 参数 参数类型 说明 metric_values JSON 训练作业模型单个分类测评参数指标。具体请参见表10。 reserved_data JSON 预留字段。 metric_meta JSON 训练作业模型单个分类,包含类ID和类名。 表10 metric_values属性列表 参数 参数类型 说明 recall Float 训练作业模型单个分类召回率。 precision Float 训练作业模型单个分类精确率。 accuracy Float 训练作业模型单个分类准确率。 表11 total_metric属性列表 参数 参数类型 说明 total_metric_meta JSON Array 预留字段。 total_reserved_data JSON Array 预留字段。 total_metric_values JSON Array 训练作业模型总测评参数指标。具体请参见表12。 表12 total_metric_values属性列表 参数 参数类型 说明 f1_score Float 训练作业模型总召回。仅限部分预置算法使用,会自动生成,仅供参考。 recall Float 训练作业模型总召回率。 precision Float 训练作业模型总精确率。 accuracy Float 训练作业模型总准确率。 表13 volumes属性列表 参数 参数类型 说明 nfs object 共享文件系统类型的存储卷。仅支持运行于已联通共享文件系统网络的资源池的训练作业。具体请参见表14。 host_path object 主机文件系统类型的存储卷。仅支持运行于专属资源池中的训练作业。具体请参见表15。 表14 nfs属性列表 参数 参数类型 说明 id String SFS Turbo 文件系统 ID。 src_path String SFS Turbo 文件系统地址。 dest_path String 训练作业的本地路径。 read_only Boolean dest_path 是否为只读权限,默认为读写权限。 true:只读权限 false:默认值,读写权限 表15 host_path属性列表 参数 参数类型 说明 src_path String 宿主机的本地路径。 dest_path String 训练作业的本地路径。 read_only Boolean dest_path 是否为只读权限,默认为读写权限。 true:只读权限 false:默认值,读写权限
  • URI GET /v1/{project_id}/training-jobs/{job_id}/versions 参数说明如表1所示。 表1 路径参数 参数 是否必选 参数类型 说明 project_id 是 String 用户项目ID。获取方法请参见获取项目ID和名称。 job_id 是 Long 训练作业的ID。 表2 Query参数 参数 是否必选 参数类型 说明 per_page 否 Integer 指定每一页展示作业参数的总量,默认为10,“per_page”可选的范围为[1,1000]。 page 否 Integer 指定要查询页的索引。 如果需要分页,请设置“page”参数值为“1”。 默认“page”参数值为“0”,不支持分页。
  • URI DELETE /v1/{project_id}/training-jobs/{job_id}/versions/{version_id} 参数说明如表1所示。 表1 参数说明 参数 是否必选 参数类型 说明 project_id 是 String 用户项目ID。获取方法请参见获取项目ID和名称。 job_id 是 Long 训练作业的ID。 version_id 是 Long 训练作业的版本ID。
  • URI GET /v1/{project_id}/training-jobs/{job_id}/versions/{version_id} 参数说明如表1所示。 表1 参数说明 参数 是否必选 参数类型 说明 project_id 是 String 用户项目ID。获取方法请参见获取项目ID和名称。 job_id 是 Long 训练作业的ID。 version_id 是 Long 训练作业的版本ID。
  • 响应示例 成功响应示例 { "is_success": true, "job_id": 10, "job_name": "TestModelArtsJob", "job_desc": "TestModelArtsJob desc", "version_id": 10, "version_name": "jobVersion", "pre_version_id": 5, "engine_type": 1, "engine_name": "TensorFlow", "engine_id": 1, "engine_version": "TF-1.4.0-python2.7", "status": 10, "app_url": "/usr/app/", "boot_file_url": "/usr/app/boot.py", "create_time": 1524189990635, "parameter": [ { "label": "learning_rate", "value": 0.01 } ], "duration": 532003, "spec_id": 1, "core": 2, "cpu": 8, "gpu_num": 2, "gpu_type": "Pnt1", "worker_server_num": 1, "data_url": "/usr/data/", "train_url": "/usr/train/", "log_url": "/usr/log/", "dataset_version_id": "2ff0d6ba-c480-45ae-be41-09a8369bfc90", "dataset_id": "38277e62-9e59-48f4-8d89-c8cf41622c24", "data_source": [ { "type": "obs", "data_url": "/qianjiajun-test/minst/data/" } ], "user_image_url": "100.125.5.235:20202/jobmng/custom-cpu-base:1.0", "user_command": "bash -x /home/work/run_train.sh python /home/work/user-job-dir/app/mnist/mnist_softmax.py --data_url /home/work/user-job-dir/app/mnist_data", "model_id": 1, "model_metric_list": "{\"metric\":[{\"metric_values\":{\"recall\":0.005833,\"precision\":0.000178,\"accuracy\":0.000937},\"reserved_data\":{},\"metric_meta\":{\"class_name\":0,\"class_id\":0}}],\"total_metric\":{\"total_metric_meta\":{},\"total_reserved_data\":{},\"total_metric_values\":{\"recall\":0.005833,\"id\":0,\"precision\":0.000178,\"accuracy\":0.000937}}}", "system_metric_list": { "cpuUsage": [ "0", "3.10", "5.76", "0", "0", "0", "0" ], "memUsage": [ "0", "0.77", "2.09", "0", "0", "0", "0" ], "gpuUtil": [ "0", "0.25", "0.88", "0", "0", "0", "0" ] }, "dataset_name": "dataset-test", "dataset_version_name": "dataset-version-test", "spec_code": "xxxxxxxx", "start_time": 1563172362000, "volumes": [ { "nfs": { "id": "43b37236-9afa-4855-8174-32254b9562e7", "src_path": "192.168.8.150:/", "dest_path": "/home/work/nas", "read_only": false } }, { "host_path": { "src_path": "/root/work", "dest_path": "/home/mind", "read_only": false } } ], "pool_id": "pool9928813f", "pool_name": "pnt1", "nas_mount_path": "/home/work/nas", "nas_share_addr": "192.168.8.150:/", "nas_type": "nfs" } 失败响应示例 { "is_success": false, "error_message": "Error string", "error_code": "ModelArts.0105" }
  • 响应消息 响应参数如表3所示。 表3 响应参数 参数 参数类型 说明 is_success Boolean 请求是否成功。 error_message String 调用失败时的错误信息。 调用成功时无此字段。 error_code String 调用失败时的错误码,具体请参见错误码。 调用成功时无此字段。 job_total_count Integer 查询到的用户创建作业总数。 job_count_limit Integer 用户还可以创建训练作业的数量。 jobs jobs结构数组 训练作业的属性列表,具体请参见表4。 quotas Integer 训练作业的运行数量上限。 表4 jobs属性列表 参数 参数类型 说明 job_id Long 训练作业的ID。 job_name String 训练作业的名称。 version_id Long 训练作业的版本ID。 status Int 训练作业的运行状态,详细作业状态列表请参见作业状态参考。 create_time Long 训练作业的创建时间,时间戳格式。 duration Long 训练作业的运行时长,单位为毫秒。 job_desc String 训练作业的具体描述。 version_count Long 训练作业的版本数。
  • 请求示例 如下以查询训练作业状态为7,每页展示10条记录,指定到第1页,按照“job_name”排序并递增排列,查询作业名字中包含job的所有训练作业数据为例。 GET https://endpoint/v1/{project_id}/training-jobs?status=7&per_page=10&page=1&sortBy=job_name&order=asc&search_content=job
  • 响应示例 成功响应示例 { "is_success": true, "quotas": 5, "job_total_count": 1, "job_count_limit": 3, "jobs": [ { "job_id": 10, "job_name": "testModelArtsJob", "version_id": 10, "status": 10, "create_time": 1524189990635, "duration": 532003, "job_desc": "This is ModelArts job", "version_count": 5 } ] } 失败响应示例 { "is_success": false, "error_message": "Error string", "error_code": "ModelArts.0105" }
  • URI GET /v1/{project_id}/training-jobs 参数说明如表1所示。 表1 路径参数 参数 是否必选 参数类型 说明 project_id 是 String 用户项目ID。获取方法请参见获取项目ID和名称。 表2 Query参数 参数 是否必选 参数类型 说明 status 否 String 作业状态的查询,默认为所有状态,例如查看创建失败的作业,可选的“status”为“3”|“5”|“6”|“13”,详细作业状态列表请参见作业状态参考。 per_page 否 Integer 指定每一页展示作业的总量,默认为10,“per_page”可选的范围为[1,1000]。 page 否 Integer 指定要查询页的索引,默认为1。“page”可选的范围为[1,65535]。 sortBy 否 String 指定查询的排序方式,默认是作业名称“job_name”,目前支持的排序还有作业描述“job_desc”,作业状态“status”,运行时长“duration”,作业版本数“version_count”以及创建时间 “create_time”。 order 否 String 可选值有: “asc”为递增排序,默认为“asc”。 “desc”为递减排序。 search_content 否 String 指定要查询的文字信息,例如训练作业名字,默认为空,字符串的长度为[0,64]。 workspace_id 否 String 指定作业所处的工作空间,默认值为“0”。
  • 响应示例 成功响应示例 { "is_success": true, "job_id": "10", "job_name": "TestModelArtsJob", "status": "1", "create_time": "1524189990635", "version_id": "10", "version_name": "V0001", "resource_id": "jobafd08896" } 失败响应示例 { "is_success": false, "error_message": "Job name:TestModelArtsJob is existed", "error_code": "ModelArts.0103" }
  • 响应消息 响应参数如表9所示。 表9 响应参数 参数 参数类型 说明 is_success Boolean 请求是否成功。 error_message String 调用失败时的错误信息。 调用成功时无此字段。 error_code String 调用失败时的错误码,具体请参见错误码。 调用成功时无此字段。 job_id Long 训练作业的ID。 job_name String 训练作业的名称 status Int 训练作业的运行状态,详细作业状态列表请查看作业状态参考。 create_time Long 训练作业的创建时间,时间戳格式。 version_id Long 训练作业的版本ID。 resource_id String 训练作业的计费资源ID。 version_name String 训练作业的版本名称。
  • 请求示例 如下以创建名为“TestModelArtsJob”,描述为“This is a ModelArts job”为例。 POST https://endpoint/v1/{project_id}/training-jobs { "job_name": "TestModelArtsJob", "job_desc": "This is a ModelArts job", "workspace_id": "af261af2218841ec960b01ab3cf1a5fa", "config": { "worker_server_num": 1, "app_url": "/usr/app/", "boot_file_url": "/usr/app/boot.py", "parameter": [ { "label": "learning_rate", "value": "0.01" }, { "label": "batch_size", "value": "32" } ], "dataset_id": "38277e62-9e59-48f4-8d89-c8cf41622c24", "dataset_version_id": "2ff0d6ba-c480-45ae-be41-09a8369bfc90", "spec_id": 1, "engine_id": 1, "train_url": "/usr/train/", "log_url": "/usr/log/", "model_id": 1, "pool_id": "testpool" } } 如下以创建名为“TestModelArtsJob2”,创建自定义镜像训练。 POST https://endpoint/v1/{project_id}/training-jobs { "job_name": "TestModelArtsJob2", "job_desc": "This is a ModelArts job", "workspace_id": "af261af2218841ec960b01ab3cf1a5fa", "config": { "worker_server_num": 1, "data_url": "/usr/data/", "app_url": "/usr/app/", "boot_file_url": "/usr/app/boot.py", "parameter": [ { "label": "CUSTOM_PA RAM 1", "value": "1" } ], "spec_id": 1, "user_command": "bash -x /home/work/run_train.sh python /home/work/user-job-dir/app/mnist/mnist_softmax.py --data_url /home/work/user-job-dir/app/mnist_data", "user_image_url": "100.125.5.235:20202/jobmng/custom-cpu-base:1.0", "train_url": "/usr/train/", "log_url": "/usr/log/", "model_id": 1, "pool_id": "testpool", "engine_id": 1 } } 如下以创建名为“TestModelArtsJob3”,创建使用存储卷的训练。 POST https://endpoint/v1/{project_id}/training-jobs { "job_name": "TestModelArtsJob3", "job_desc": "This is a ModelArts job", "workspace_id": "af261af2218841ec960b01ab3cf1a5fa", "config": { "worker_server_num": 1, "app_url": "/usr/app/", "boot_file_url": "/usr/app/boot.py", "parameter": [ { "label": "learning_rate", "value": "0.01" }, { "label": "batch_size", "value": "32" } ], "dataset_id": "38277e62-9e59-48f4-8d89-c8cf41622c24", "dataset_version_id": "2ff0d6ba-c480-45ae-be41-09a8369bfc90", "spec_id": 1, "engine_id": 1, "train_url": "/usr/train/", "log_url": "/usr/log/", "model_id": 1, "pool_id": "testpool", "volumes": [ { "nfs": { "id": "43b37236-9afa-4855-8174-32254b9562e7", "src_path": "192.168.8.150:/", "dest_path": "/home/work/nas", "read_only": false } }, { "host_path": { "src_path": "/root/work", "dest_path": "/home/mind", "read_only": false } } ] } }
  • 请求方法 HTTP请求方法(也称为操作或动词),它告诉服务你正在请求什么类型的操作。 表2 HTTP方法 方法 说明 GET 请求服务器返回指定资源。 PUT 请求服务器更新指定资源。 POST 请求服务器新增资源或执行特殊操作。 DELETE 请求服务器删除指定资源,如删除对象等。 HEAD 请求服务器资源头部。 PATCH 请求服务器更新资源的部分内容。 当资源不存在的时候,PATCH可能会去创建一个新的资源。 在获取用户Token的URI部分,您可以看到其请求方法为“POST”,则其请求为: POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens
  • 请求消息头 附加请求头字段,如指定的URI和HTTP方法所要求的字段。例如定义消息体类型的请求头“Content-Type”,请求鉴权信息等。 需要添加到请求中的公共消息头如表3所示。 表3 公共请求消息头 参数名 说明 是否必选 示例 Content-type 消息体的类型(格式),默认取值为“application/json”。 是 application/json Content-Length 请求body长度,单位为Byte。 POST/PUT请求必填,GET不能包含。 3495 X-Project-Id project id,用于不同project取token。 否 e9993fc787d94b6c886cbaa340f9c0f4 X-Auth-Token 用户Token,也就是调用获取用户Token接口的响应值,该接口是唯一不需要认证的接口。 否,使用Token认证时必选。 - X-Sdk-Date 请求的发生时间,格式为(YYYYMMDD'T'HHMMSS'Z')。 取值为当前系统的GMT时间。 否,如果使用AK/SK做接口认证的时候,那么此字段必须设置;如果使用PKI token的时候,不必设置。 20190307T101459Z Authorization 签名认证信息。 该值来源于请求签名结果,使用AK/SK进行加密签名的时候需要。 类型:字符串 默认值:无 否,使用AK/SK认证时必选。 SDK-HMAC-SHA256 Credential=ZIRRKMTWPTQFQI1WKNKB/20150907//ec2/sdk_request, SignedHeaders=content-type;host;x-sdk-date, Signature=55741b610f3c9fa3ae40b5a8021ebf7ebc2a28a603fc62d25cb3bfe6608e1994 Host 请求的服务器信息,从服务API的URL中获取。 值为hostname[:port]。 端口缺省时使用默认的端口,https的默认端口为443。 否,使用AK/SK认证时必选。 code.test.com or code.test.com:443 API同时支持使用AK/SK认证,AK/SK认证是使用SDK对请求进行签名,签名过程会自动往请求中添加Authorization(签名认证信息)和X-Sdk-Date(请求发送的时间)请求头。AK/SK认证的详细说明请参见API签名指南。 对于获取用户Token接口,由于不需要认证,所以只添加“Content-Type”即可,添加消息头后的请求如下所示。 POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json
共100000条