WebIDE 是机器学习平台提供的在线集成开发环境。新版WebIDE内置了VSCode-Python插件、Tensorboard、Jupyter Notebook,获得更好的在线开发体验。下文主要介绍在 WebIDE 中常用的一些工具如 Volc CLI 和 Rclone CLI。
机器学习平台提供了命令行工具供用户在任何网络通畅的机器上管理平台上的训练任务。
volc configure
,依次进行下边相关参数的配置。volc configure volc access key [********4M2Q]: //请输入该账户的 AK volc secret access key [********TQ==]: //请输入该账户的 SK volc region [cn-beijing]: //请输入所属的地域(cn-beijing、cn-shanghai、cn-guangzhou)
$HOME/.volc/config
和 $HOME/.volc/credentials
两个文件是否存在。# 查看 config 文件 ls $HOME/.volc/ config credentials
volc ml_task submit -c config.yaml
# 任务名称 TaskName: my-dev-task # 任务描述【选填】 Description: "" # 标签【选填】 Tags: - tag-a - tag-b # 入口命令 Entrypoint: python3 /path/to/demo_project/torch_tensorboard.py # 本地代码路径 # 如果是目录,且以 '/' 结尾,则将该目录下的所有内容上传到 RemoteMountCodePath # 如果是目录,且不以 '/' 结尾,则将该目录及该目录下所有内容上传到 RemoteMountCodePath UserCodePath: ./demo_project/ # 容器中的代码挂载路径 RemoteMountCodePath: "/path/to/demo_project/" # 训练使用的镜像 URL 地址 ImageUrl: "cr-cn-beijing.volces.com/ml_platform/pytorch:1.7" # 镜像密钥【选填】 # 当 ImageUrl 为非火山引擎的其他外部私有仓库时,需要填写仓库的用户名和密钥才能拉取镜像 ImageCredential: RegistryUsername: "replace with your RegistryUsername" RegistryToken: "replace with your RegistryToken" # 实例配置 # 训练框架,支持 TensorFlowPS / PyTorchDDP / MPI / BytePS / Custom Framework: "Custom" # 实例配置 TaskRoleSpecs: - RoleName: "worker" # 角色名称 RoleReplicas: 2 # 角色数量 Flavor: "ml.c1ie.xlarge" # 实例规格 # 所属队列名称【选填】 # 不填则使用公共队列 ResourceQueueName: "replace with your ResourceQueueName" # 环境变量【选填】 # 如需查看标准输出流之外的日志,请将该日志写入以 .log 为后缀名的文件中并放入环境变量 MLP_LOG_PATH 对应的路径下 Envs: - Name: "ENV_A" Value: "value" - Name: "ENV_B" Value: "value" # 最长运行时间,超过该时长任务将被系统自动取消,填写 0 表示关闭该功能【选填】 ActiveDeadlineSeconds: 432000 # 实例保留时长,实例完成或失败后环境可保留的时长,该时长不超过任务最长运行时间【选填】 DelayExitTimeSeconds: 120 # 是否开启 TensorBoard【选填】 # 请将 TensorBoard 日志写入该路径:os.getenv("TENSORBOARD_LOG_PATH", "/tensorboard_logs/") EnableTensorBoard: true # TOS 数据盘的缓存服务所需的内存比例(0~1)【选填】 SidecarMemoryRatio: "replace with your ratio" # 共享文件系统挂载【选填】 # 共享文件系统提供了持久化存储服务,其数据不会因工作负载结束运行或异常而丢失,最多可挂载10个数据盘。 Storages: - Type: "Tos" # 挂载 TOS 数据盘 MountPath: "replace with your path" # 容器中的挂载目录 Bucket: "replace with your bucket" # 待挂载的 TOS Bucket Prefix: "replace with your prefix" # 待挂载的 TOS Bucket 下的目录路径【选填】 - Type: "Vepfs" # 挂载 vePFS 数据盘 MountPath: "replace with your path" # 容器中的挂载目录 - Type: "Nas" # 挂载 NAS 数据盘 MountPath: "replace with your path" # 容器中的挂载目录 NasAddr: "replace with your NAS address" # NAS 实例的挂载点地址
Rclone 是一款功能强大的命令行工具,支持对接多种云存储系统,可用来执行数据上传、下载、同步和管理等操作。WebIDE 已内置了 Rclone 工具,仅需手动配置即可使用。
编辑~/.config/rclone/rclone.conf
文件。
在 access_key_id 和 secret_access_key 分别输入账户对应的 AK、SK。
下文将介绍 TOS 的常见操作命令,例如查看目录、上传文件、查看目录大小等。更多命令介绍,请参见Rclone命令。
rclone lsd volces-tos: //volces-tos为配置的远程连接名称
rclone lsd volces-tos:bucket-demo //bucket-demo为桶名称
rclone copy source:sourcepath dest:destpath
testdir
中的所有文件复制到 bucket-demo
桶中,并放置到桶根目录下,可执行如下命令。rclone copy testdir volces-tos:bucket-demo
testdir
复制到 bucket-demo
桶中,并让 testdir
作为桶内的一级目录,可执行如下命令。rclone copy testdir volces-tos:bucket-demo/testdir
rclone sync
命令rclone sync source:path dest:path [flags]
rclone sync testdir volces-tos:bucket-demo/testdir
rclone size
命令。rclone size remote:path [flags]
bucket-demo
桶中的文件总数和容量大小,可执行如下命令。rclone size volces-tos:bucket-demo
bucket-demo
桶中 testdir
文件夹的文件总数和容量大小,可执行如下命令。rclone size volces-tos:bucket-demo/testdir
rclone check
命令。rclone check source:path dest:path [flags]
可选参数如下:
--size-only
:只比较文件大小。--download
:下载远程文件并对比。