云服务器内容精选

  • 使用ma-cli ma-job get-log命令查询ModelArts训练作业日志 执行ma-cli ma-job get-log命令查询ModelArts训练作业日志。 $ ma-cli ma-job get-log -h Usage: ma-cli ma-job get-log [OPTIONS] Get job log details. Example: # Get job log by job id ma-cli ma-job get-log --job-id ${job_id} Options: -i, --job-id TEXT Get training job details by job id. [required] -t, --task-id TEXT Get training job details by task id (default "worker-0"). -C, --config-file TEXT Configure file path for authorization. -D, --debug Debug Mode. Shows full stack trace when error occurs. -P, --profile TEXT CLI connection profile to use. The default profile is "DEFAULT". -h, -H, --help Show this message and exit. 参数名 参数类型 是否必选 参数说明 -i / --job-id String 是 查询指定训练作业ID的任务日志。 -t / --task-id String 否 查询指定task的日志,默认是work-0。 示例:查询指定训练作业ID的作业日志。 ma-cli ma-job get-log --job-id b63e90baxxx
  • 使用ma-cli ma-job get-flavor命令查询ModelArts训练资源规格 执行ma-cli ma-job get-flavor命令查询ModelArts训练的资源规格。 $ ma-cli ma-job get-flavor -h Usage: ma-cli ma-job get-flavor [OPTIONS] Get job flavor info. Example: # Get training job flavors ma-cli ma-job get-flavor Options: -t, --flavor-type [CPU|GPU|Ascend] Type of training job flavor. -v, --verbose Show detailed information about training flavors. -C, --config-file TEXT Configure file path for authorization. -D, --debug Debug Mode. Shows full stack trace when error occurs. -P, --profile TEXT CLI connection profile to use. The default profile is "DEFAULT". -H, -h, --help Show this message and exit. 表5 参数说明 参数名 参数类型 是否必选 参数说明 -t / --flavor-type String 否 资源规格类型,如果不指定默认返回所有的资源规格。 -v / --verbose Bool 否 显示详细的信息开关,默认关闭。 示例:查看训练作业的资源规格及类型。 ma-cli ma-job get-flavor
  • 使用ma-cli ma-job stop命令停止ModelArts训练作业 执行ma-cli ma-job stop命令,可停止指定作业id的训练作业。 $ ma-cli ma-job stop -h Usage: ma-cli ma-job stop [OPTIONS] Stop training job by job id. Example: Stop training job by job id ma-cli ma-job stop --job-id ${job_id} Options: -i, --job-id TEXT Get training job event by job id. [required] -y, --yes Confirm stop operation. -C, --config-file TEXT Configure file path for authorization. -D, --debug Debug Mode. Shows full stack trace when error occurs. -P, --profile TEXT CLI connection profile to use. The default profile is "DEFAULT". -H, -h, --help Show this message and exit. 表6 参数说明 参数名 参数类型 是否必选 参数说明 -i / --job-id String 是 ModelArts训练作业ID。 -y / --yes Bool 否 强制关闭指定训练作业。 示例:停止运行中的训练作业。 ma-cli ma-job stop --job-id efd3e2f8xxx
  • 示例:基于 自定义镜像 创建训练作业 指定命令行options参数提交训练作业 ma-cli ma-job submit --image-url atelier/pytorch_1_8:pytorch_1.8.0-cuda_10.2-py_3.7-ubuntu_18.04-x86_64-20220926104358-041ba2e \ --code-dir obs://your-bucket/mnist/code/ \ --user-command "export LD_LIBRARY_PATH=/usr/local/cuda/compat:$LD_LIBRARY_PATH && cd /home/ma-user/modelarts/user-job-dir/code && /home/ma-user/anaconda3/envs/PyTorch-1.8/bin/python main.py" \ --data-url obs://your-bucket/mnist/dataset/MNIST/ \ --log-url obs://your-bucket/mnist/logs/ \ --train-instance-type modelarts.vm.cpu.8u \ --train-instance-count 1 \ -q 使用自定义镜像的train.yaml样例: # .ma/train.yaml样例(自定义镜像) image-url: atelier/pytorch_1_8:pytorch_1.8.0-cuda_10.2-py_3.7-ubuntu_18.04-x86_64-20220926104358-041ba2e user-command: export LD_LIBRARY_PATH=/usr/local/cuda/compat:$LD_LIBRARY_PATH && cd /home/ma-user/modelarts/user-job-dir/code && /home/ma-user/anaconda3/envs/PyTorch-1.8/bin/python main.py train-instance-type: modelarts.vm.cpu.8u train-instance-count: 1 data-url: obs://your-bucket/mnist/dataset/MNIST/ code-dir: obs://your-bucket/mnist/code/ log-url: obs://your-bucket/mnist/logs/ ##[Optional] Uncomment to set uid when use custom image mode uid: 1000 ##[Optional] Uncomment to upload output file/dir to OBS from training platform output: - name: output_dir obs_path: obs://your-bucket/mnist/output1/ ##[Optional] Uncomment to download input file/dir from OBS to training platform input: - name: data_url obs_path: obs://your-bucket/mnist/dataset/MNIST/ ##[Optional] Uncomment pass hyperparameters parameters: - epoch: 10 - learning_rate: 0.01 - pretrained: ##[Optional] Uncomment to use dedicated pool pool_id: pool_xxxx ##[Optional] Uncomment to use volumes attached to the training job volumes: - efs: local_path: /xx/yy/zz read_only: false nfs_server_path: xxx.xxx.xxx.xxx:/
  • 使用ma-cli ma-job get-event命令查询ModelArts训练作业事件 执行ma-cli ma-job get-event命令查看ModelArts训练作业事件。 $ ma-cli ma-job get-event -h Usage: ma-cli ma-job get-event [OPTIONS] Get job running event. Example: # Get training job running event ma-cli ma-job get-event --job-id ${job_id} Options: -i, --job-id TEXT Get training job event by job id. [required] -C, --config-file TEXT Configure file path for authorization. -D, --debug Debug Mode. Shows full stack trace when error occurs. -P, --profile TEXT CLI connection profile to use. The default profile is "DEFAULT". -H, -h, --help Show this message and exit. 参数名 参数类型 是否必选 参数说明 -i / --job-id String 是 查询指定训练作业ID的事件。 示例:查看指定ID的训练作业的事件详情等。 ma-cli ma-job get-event --job-id b63e90baxxx
  • 使用ma-cli ma-job get-engine命令查询ModelArts训练AI引擎 执行ma-cli ma-job get-engine命令查询ModelArts训练使用的AI引擎。 $ ma-cli ma-job get-engine -h Usage: ma-cli ma-job get-engine [OPTIONS] Get job engine info. Example: # Get training job engines ma-cli ma-job get-engine Options: -v, --verbose Show detailed information about training engines. -C, --config-file TEXT Configure file path for authorization. -D, --debug Debug Mode. Shows full stack trace when error occurs. -P, --profile TEXT CLI connection profile to use. The default profile is "DEFAULT". -H, -h, --help Show this message and exit. 表4 参数说明 参数名 参数类型 是否必选 参数说明 -v / --verbose Bool 否 显示详细的信息开关,默认关闭。 示例:查看训练作业的AI引擎。 ma-cli ma-job get-engine
  • 示例:基于ModelArts预置镜像提交训练作业 指定命令行options参数提交训练作业 ma-cli ma-job submit --code-dir obs://your-bucket/mnist/code/ \ --boot-file main.py \ --framework-type PyTorch \ --working-dir /home/ma-user/modelarts/user-job-dir/code \ --framework-version pytorch_1.8.0-cuda_10.2-py_3.7-ubuntu_18.04-x86_64 \ --data-url obs://your-bucket/mnist/dataset/MNIST/ \ --log-url obs://your-bucket/mnist/logs/ \ --train-instance-type modelarts.vm.cpu.8u \ --train-instance-count 1 \ -q 使用预置镜像的train.yaml样例: # .ma/train.yaml样例(预置镜像) # pool_id: pool_xxxx train-instance-type: modelarts.vm.cpu.8u train-instance-count: 1 data-url: obs://your-bucket/mnist/dataset/MNIST/ code-dir: obs://your-bucket/mnist/code/ working-dir: /home/ma-user/modelarts/user-job-dir/code framework-type: PyTorch framework-version: pytorch_1.8.0-cuda_10.2-py_3.7-ubuntu_18.04-x86_64 boot-file: main.py log-url: obs://your-bucket/mnist/logs/ ##[Optional] Uncomment to set uid when use custom image mode uid: 1000 ##[Optional] Uncomment to upload output file/dir to OBS from training platform output: - name: output_dir obs_path: obs://your-bucket/mnist/output1/ ##[Optional] Uncomment to download input file/dir from OBS to training platform input: - name: data_url obs_path: obs://your-bucket/mnist/dataset/MNIST/ ##[Optional] Uncomment pass hyperparameters parameters: - epoch: 10 - learning_rate: 0.01 - pretrained: ##[Optional] Uncomment to use dedicated pool pool_id: pool_xxxx ##[Optional] Uncomment to use volumes attached to the training job volumes: - efs: local_path: /xx/yy/zz read_only: false nfs_server_path: xxx.xxx.xxx.xxx:/
  • 使用ma-cli ma-job submit命令提交ModelArts训练作业 执行ma-cli ma-job submit命令提交ModelArts训练作业。 ma-cli ma-job submit命令需要指定一个位置参数YAML_FILE表示作业的配置文件路径,如果不指定该参数,则表示配置文件为空。配置文件是一个YAML格式的文件,里面的参数就是命令的option参数。此外,如果用户在命令行中同时指定YAML_FILE配置文件和option参数,命令行中指定的option参数的值将会覆盖配置文件相同的值。 $ma-cli ma-job submit -h Usage: ma-cli ma-job submit [OPTIONS] [YAML_FILE]... Submit training job. Example: ma-cli ma-job submit --code-dir obs://your_bucket/code/ --boot-file main.py --framework-type PyTorch --working-dir /home/ma-user/modelarts/user-job-dir/code --framework-version pytorch_1.8.0-cuda_10.2-py_3.7-ubuntu_18.04-x86_64 --data-url obs://your_bucket/dataset/ --log-url obs://your_bucket/logs/ --train-instance-type modelarts.vm.cpu.8u --train-instance-count 1 Options: --name TEXT Job name. --description TEXT Job description. --image-url TEXT Full swr custom image path. --uid TEXT Uid for custom image (default: 1000). --working-dir TEXT ModelArts training job working directory. --local-code-dir TEXT ModelArts training job local code directory. --user-command TEXT Execution command for custom image. --pool-id TEXT Dedicated pool id. --train-instance-type TEXT Train worker specification. --train-instance-count INTEGER Number of workers. --data-url TEXT OBS path for training data. --log-url TEXT OBS path for training log. --code-dir TEXT OBS path for source code. --output TEXT Training output parameter with OBS path. --input TEXT Training input parameter with OBS path. --env-variables TEXT Env variables for training job. --parameters TEXT Training job parameters (only keyword parameters are supported). --boot-file TEXT Training job boot file path behinds `code_dir`. --framework-type TEXT Training job framework type. --framework-version TEXT Training job framework version. --workspace-id TEXT The workspace where you submit training job(default "0") --policy [regular|economic|turbo|auto] Training job policy, default is regular. --volumes TEXT Information about the volumes attached to the training job. -q, --quiet Exit without waiting after submit successfully. -C, --config-file PATH Configure file path for authorization. -D, --debug Debug Mode. Shows full stack trace when error occurs. -P, --profile TEXT CLI connection profile to use. The default profile is "DEFAULT". -H, -h, --help Show this message and exit. 表3 参数说明 参数名 参数类型 是否必选 参数说明 YAML_FILE String 否 表示训练作业的配置文件,如果不传则表示配置文件为空。 --code-dir String 是 训练源代码的OBS路径。 --data-url String 是 训练数据的OBS路径。 --log-url String 是 存放训练生成日志的OBS路径。 --train-instance-count String 是 训练作业实例数,默认是1,表示单节点。 --boot-file String 否 当使用自定义镜像或自定义命令时可以省略,当使用预置命令提交训练作业时需要指定该参数。 --name String 否 训练作业名称。 --description String 否 训练作业描述信息。 --image-url String 否 自定义镜像SWR地址,遵循organization/image_name:tag --uid String 否 自定义镜像运行的UID,默认值1000。 --working-dir String 否 运行算法时所在的工作目录。 --local-code-dir String 否 算法的代码目录下载到训练容器内的本地路径。 --user-command String 否 自定义镜像执行命令。需为/home下的目录。 当code-dir以file://为前缀时,当前字段不生效。 --pool-id String 否 训练作业选择的资源池ID。可在ModelArts管理控制台,单击左侧“专属资源池”,在专属资源池列表中查看资源池ID。 --train-instance-type String 否 训练作业选择的资源规格。 --output String 否 训练的输出信息,指定后,训练作业将会把训练脚本中指定输出参数对应训练容器的输出目录上传到指定的OBS路径。如果需要指定多个参数,可以使用--output output1=obs://bucket/output1 --output output2=obs://bucket/output2 --input String 否 训练的输入信息,指定后,训练作业将会把对应OBS上的数据下载到训练容器,并将数据存储路径通过指定的参数传递给训练脚本。如果需要指定多个参数,可以使用--input data_path1=obs://bucket/data1 --input data_path2=obs://bucket/data2 --env-variables String 否 训练时传入的环境变量,如果需要指定多个参数,可以使用--env-variables ENV1=env1 --env-variables ENV2=env2 --parameters String 否 训练入参,可以通过--parameters "--epoch 0 --pretrained"指定多个参数。 --framework-type String 否 训练作业选择的引擎规格。 --framework-version String 否 训练作业选择的引擎版本。 -q / --quiet Bool 否 提交训练作业成功后直接退出,不再同步打印作业状态。 --workspace-id String 否 作业所处的工作空间,默认值为“0”。 --policy String 否 训练资源规格模式,可选值regular、economic、turbo、auto。 --volumes String 否 挂载EFS,如果需要指定多个参数,可以使用--volumes。 "local_path=/xx/yy/zz;read_only=false;nfs_server_path=xxx.xxx.xxx.xxx:/" -volumes "local_path=/xxx/yyy/zzz;read_only=false;nfs_server_path=xxx.xxx.xxx.xxx:/"
  • 使用ma-cli dli-job upload命令上传文件到 DLI 分组资源 ma-cli dli-job upload命令支持将本地文件或OBS文件上传到DLI资源组。 $ ma-cli dli-job upload -h Usage: ma-cli dli-job upload [OPTIONS] PATHS... Upload DLI resource. Tips: --obs-path is need when upload local file. Example: # Upload an OBS path to DLI resource ma-cli dli-job upload obs://your-bucket/test.py -g test-group --kind pyFile # Upload a local path to DLI resource ma-cli dli-job upload ./test.py -g test-group -obs ${your-bucket} --kind pyFile # Upload local path and OBS path to DLI resource ma-cli dli-job upload ./test.py obs://your-bucket/test.py -g test-group -obs ${your-bucket} Options: -k, --kind [jar|pyFile|file] DLI resources type. -g, --group TEXT DLI resources group. -tags, --tags TEXT DLI resources tags, follow --tags `key1`=`value1`. -obs, --obs-bucket TEXT OBS bucket for upload local file. -async, --is-async whether to upload resource packages in asynchronous mode. The default value is False. -C, --config-file TEXT Configure file path for authorization. -D, --debug Debug Mode. Shows full stack trace when error occurs. -P, --profile TEXT CLI connection profile to use. The default profile is "DEFAULT". -H, -h, --help Show this message and exit. 表7 参数说明 参数名 参数类型 是否必选 参数说明 PATHS String 是 需要上传到DLI分组资源的本地文件路径或者obs路径,支持同时传入多个路径。 -k / --kind String 否 上传文件的类型,支持jar、pyFile和file。 -g / --group String 否 上传文件的DLI分组名。 -tags / --tags String 否 上传文件的tag。 -obs / --obs-bucket String 否 如果上传文件包含本地路径,则需要指定一个OBS桶作为中转。 -async / --is-async Bool 否 异步上传文件,推荐使用。 示例 上传本地文件到DLI分组资源 ma-cli dli-job upload ./test.py -obs ${your-bucket} --kind pyFile 上传OBS文件到DLI分组资源 ma-cli dli-job upload obs://your-bucket/test.py --kind pyFile
  • 使用ma-cli dli-job stop命令停止DLI Spark作业 执行ma-cli dli-job stop命令停止DLI Spark作业。 $ ma-cli dli-job stop -h Usage: ma-cli dli-job stop [OPTIONS] Stop DLI spark job by job id. Example: Stop training job by job id ma-cli dli-job stop --job-id ${job_id} Options: -i, --job-id TEXT Get DLI spark job event by job id. [required] -y, --yes Confirm stop operation. -C, --config-file TEXT Configure file path for authorization. -D, --debug Debug Mode. Shows full stack trace when error occurs. -P, --profile TEXT CLI connection profile to use. The default profile is "DEFAULT". -H, -h, --help Show this message and exit. 表8 参数说明 参数名 参数类型 是否必选 参数说明 -i / --job-id String 是 DLI Spark作业ID。 -y / --yes Bool 否 强制关闭指定DLI Spark作业。 示例 ma-cli dli-job stop -i ${your_job_id}
  • 使用ma-cli dli-job get-log命令查询DLI Spark运行日志 执行ma-cli dli-job get-log命令查询DLI Spark作业后台的日志。 $ ma-cli dli-job get-log -h Usage: ma-cli dli-job get-log [OPTIONS] Get DLI spark job log details. Example: # Get job log by job id ma-cli dli-job get-log --job-id ${job_id} Options: -i, --job-id TEXT Get DLI spark job details by job id. [required] -C, --config-file TEXT Configure file path for authorization. -D, --debug Debug Mode. Shows full stack trace when error occurs. -P, --profile TEXT CLI connection profile to use. The default profile is "DEFAULT". -H, -h, --help Show this message and exit. 表4 参数说明 参数名 参数类型 是否必选 参数说明 -i / --job-id String 是 查询指定DLI Spark作业ID的任务日志。 示例:查询指定作业ID的DLI Spark作业运行日志。 ma-cli dli-job get-log --job-id ${your_job_id}
  • 使用ma-cli dli-job get-resource命令查询DLI分组资源 执行ma-cli dli-job get-resource命令获取DLI资源详细信息,如资源名称,资源类型等。 $ ma-cli dli-job get-resource -h Usage: ma-cli dli-job get-resource [OPTIONS] Get DLI resource info. Example: # Get DLI resource details by resource name ma-cli dli-job get-resource --resource-name ${resource_name} Options: -n, --resource-name TEXT Get DLI resource details by resource name. -k, --kind [jar|pyFile|file|modelFile] DLI resources type. -g, --group TEXT Get DLI resources by group. -tags, --tags TEXT Get DLI resources by tags. -C, --config-file TEXT Configure file path for authorization. -D, --debug Debug Mode. Shows full stack trace when error occurs. -P, --profile TEXT CLI connection profile to use. The default profile is "DEFAULT". -H, -h, --help Show this message and exit. 表6 参数说明 参数名 参数类型 是否必选 参数说明 -n / --resource-name String 否 按DLI分组资源名称查询DLI资源详细信息。 -k / --kind String 否 按DLI分组资源类型查询DLI资源详细信息,支持jar、pyFile、file和modelFile。 -g / --group String 否 按DLI分组资源组名查询DLI资源组详细信息。 -tags / --tags String 否 通过DLI分组资源tags获取DLI资源详细信息。 示例:查询所有DLI分组资源信息。 ma-cli dli-job get-resource
  • 功能介绍 ModelArts CLI,即ModelArts命令行工具,是一个跨平台命令行工具,用于连接ModelArts服务并在ModelArts资源上执行管理命令。用户可以使用交互式命令行提示符或脚本通过终端执行命令。为了方便理解,下面将ModelArts CLI统称为ma-cli。ma-cli支持用户在ModelArts Notebook及线下虚拟机中与云端服务交互,使用ma-cli命令可以实现命令自动补全、鉴权、镜像构建、提交ModelArts训练作业、提交DLI Spark作业、OBS数据复制等。
  • 命令预览 $ ma-cli -h Usage: ma-cli [OPTIONS] COMMAND [ARGS]... Options: -V, -v, --version 1.2.1 -C, --config-file TEXT Configure file path for authorization. -D, --debug Debug Mode. Shows full stack trace when error occurs. -P, --profile TEXT CLI connection profile to use. The default profile is "DEFAULT". -h, -H, --help Show this message and exit. Commands: configure Configures authentication and endpoints info for the CLI. image Support get registered image list、register or unregister image、debug image, build image in Notebook. obs-copy Copy file or directory between OBS and local path. ma-job ModelArts job submission and query job details. dli-job DLI spark job submission and query job details. auto-completion Auto complete ma-cli command in terminal, support "bash(default)/zsh/fish".
  • 命令说明 表1 ma-cli支持的命令 命令 命令详情 configure ma-cli鉴权命令,支持用户名密码、AK/SK image ModelArts镜像构建、镜像注册、查询已注册镜像信息等 obs-copy 本地和OBS文件/文件夹间的相互复制 ma-job ModelArts训练作业管理,包含作业提交、资源查询等 dli-job DLI Spark任务提交及资源管理 auto-completion 命令自动补全