云服务器内容精选

  • 响应示例 成功响应示例 { "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”,不支持分页。
  • 响应示例 成功响应示例 { "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": "p100", "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”。
  • 示例代码 在ModelArts notebook平台,Session鉴权无需输入鉴权参数。其它平台的Session鉴权请参见Session鉴权。 方式一:根据指定的job_id终止。 from modelarts.session import Session from modelarts.estimatorV2 import Estimator session = Session() info = Estimator.control_job_by_id(session=session, job_id="your job id") print(info) 方式二:根据创建训练作业生成的训练作业对象终止。 job_instance.control_job()
  • 响应消息 相应参数如表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。
  • 请求示例 如下以查询“job_id”为10,“version_id”为10,文件名为“log1.log”的日志为例。 GET https://endpoint/v1/{project_id}/training-jobs/10/versions/10/aom-log?log_file=log1.log&base_line= 1551252759254000002&lines=50&order=desc
  • 响应消息 响应参数如表3所示。 表3 响应参数 参数 参数类型 说明 error_message String 调用失败时的错误信息。 调用成功时无此字段。 error_code String 调用失败时的错误码,具体请参见错误码。 调用成功时无此字段。 content String 请求获得日志的内容。 lines Integer 获得日志的行数。 start_line String 该段日志内容的开始位置。 end_line String 该段日志内容的结束位置。 is_success Boolean 请求是否成功。
  • 响应示例 成功响应示例 { "is_success": true, "start_line":1551252759254000002, "content": "Log string", "end_line": "1551252759254000003", "lines": "1" } 失败响应示例 { "is_success": false, "error_message": "Error string", "error_code": "ModelArts.0105" }
  • URI GET /v1/{project_id}/training-jobs/{job_id}/versions/{version_id}/aom-log 参数说明如表1所示。 表1 路径参数 参数 是否必选 参数类型 说明 project_id 是 String 用户项目ID。获取方法请参见获取项目ID和名称。 job_id 是 Long 训练作业的ID。 version_id 是 Long 训练作业的版本ID。 表2 Query参数 参数 是否必选 参数类型 说明 base_line 否 String 日志的基准位置,根据接口返回获得,为空的时候代表获取最新的日志。 lines 否 Integer 获取日志的长度,默认为50行。lines的范围为[0, 500]。 log_file 是 String 需要查看的日志文件名称,获取方式请参见获取训练作业日志的文件名。 order 否 String 日志查询的方向。 desc:向下查询。 asc:向上查询。
  • 请求示例 如下以更新名为“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 }
  • ma-cli ma-job训练作业支持的命令 使用ma-cli ma-job命令可以提交训练作业,查询训练作业日志、事件、使用的AI引擎、资源规格及停止训练作业等。 $ ma-cli ma-job -h Usage: ma-cli ma-job [OPTIONS] COMMAND [ARGS]... ModelArts job submission and query jod details. Options: -h, -H, --help Show this message and exit. Commands: delete Delete training job by job id. get-engine Get job engines. get-event Get job running event. get-flavor Get job flavors. get-job Get job details. get-log Get job log details. get-pool Get job engines. stop Stop training job by job id. submit Submit training job. 表1 训练作业支持的命令 命令 命令详情 get-job 查询ModelArts训练作业列表及详情。 get-log 查询ModelArts训练作业运行日志。 get-engine 查询ModelArts训练AI引擎。 get-event 查询ModelArts训练作业事件。 get-flavor 查询ModelArts训练资源规格。 get-pool 查询ModelArts训练专属池。 stop 停止ModelArts训练作业。 submit 提交ModelArts训练作业。 delete 删除指定作业id的训练作业。 父主题: 使用ma-cli ma-job命令提交ModelArts训练作业