华为云AI开发平台ModelArts训练作业自定义镜像规范_云淘科技
本章节介绍的是基于旧版训练的自定义镜像训练模型,旧版训练仅对部分存量用户可见,新用户不可见,新用户推荐使用新版训练功能。
针对您本地开发的模型及训练脚本,在制作镜像时,需满足ModelArts定义的规范。
规范要求
自定义镜像中不能包含恶意代码。
基础镜像中的部分内容不能改变,包括“/bin”、“/sbin”、“/usr”、“/lib(64)”下的所有文件,“/etc”下的部分重要配置文件,以及“$HOME”下的ModelArts小工具。
不可以新增属主为“root”且权限包含“setuid”或“setgid”位的文件。
自定义镜像大小不能超过9.5GB。
日志文件输出,为保证日志内容可以正常显示,日志信息需要打印到标准输出。
自定义镜像的默认用户必须为“uid”为“1101”的用户。
自定义镜像可以基于ModelArts官方提供的基础镜像制作,基础镜像请参考基础镜像包概述。
基础镜像包概述
为了方便用户实现代码下载、训练日志输出、上传日志文件至OBS等功能,ModelArts提供基础镜像包用于自定义镜像的制作。ModelArts提供的基础镜像有以下特点:
基础镜像中有一些必要的工具,用户需要基于ModelArts官方提供的基础镜像来制作自定义镜像。
ModelArts将持续更新基础镜像版本,基础镜像更新后,对于兼容性更新,用户还可以继续使用旧的镜像;对于不兼容性更新,基于旧版本制作的自定义镜像将不能在ModelArts上运行,但已经审核过的自定义镜像可以继续使用。
当用户发现自定义镜像审核不通过,并且审核日志中出现基础镜像不匹配的错误信息时,需要使用新的基础镜像重新制作镜像。
您可以通过以下命令获取ModelArts镜像:
docker pull
完成自定义镜像制作后,执行以下命令推送镜像至SWR服务。前提条件是已经创建组织并获取SWR登录指令。
docker push swr..myhuaweicloud.com//
根据芯片不同的需求,您可以根据实际需求获取不同的基础镜像:
适用于CPU的基础镜像
适用于GPU的基础镜像
适用于Ascend芯片基础镜像
适用于CPU的基础镜像
基础镜像地址
swr..myhuaweicloud.com/modelarts-job-dev-image/custom-cpu-base:1.3
参数 |
可选值 |
说明 |
---|---|---|
cn-north-1 |
镜像所在的区域。支持的值中,分别表示: 北京一 |
基础镜像包含表2和表3
名称 |
说明 |
---|---|
run_train.sh |
训练启动引导脚本。实现了代码目录下载,执行训练命令、重定向训练日志输出、以及训练命令结束后上传日志文件至OBS的功能。 |
工具名称 |
说明 |
---|---|
utils.sh |
工具脚本。“run_train.sh”脚本依赖此脚本。 提供了SK解密,代码目录下载,日志文件上传等方法。 |
ip_mapper.py |
网卡地址获取脚本。 默认获取ib0网卡地址IP,训练代码可以使用ib0网卡的IP加速网络通信。 |
dls-downloader.py |
OBS下载脚本。“utils.sh”脚本依赖此脚本。 |
适用于GPU的基础镜像
cuda10.0/10.1/10.2版本的镜像,以ubuntu18.04为基础镜像默认预装moxing
swr..myhuaweicloud.com/modelarts-job-dev-image/custom-base----:
cuda8/9/92版本的镜像,默认预装Moxing
swr..myhuaweicloud.com/modelarts-job-dev-image/custom-gpu--inner-moxing-:
cuda8/9/92版本的镜像
swr..myhuaweicloud.com/modelarts-job-dev-image/custom-gpu--base:
参数 |
支持的值 |
说明 |
---|---|---|
cn-north-1 |
镜像所在的区域。支持的值中,分别表示: 北京一 |
|
cuda92 |
镜像中已安装的CUDA版本。 说明: 请您确认对应的CUDA版本,版本指定之后不支持更换, 否则会导致训练失败。 |
|
1.1 |
镜像版本。 cuda8/9/92版本的镜像,支持1.3。 |
|
python version |
cp27 |
python 环境。 |
os |
ubuntu18.04 |
操作系统。 |
arch |
x86 |
架构。 |
例如,在“华北-北京一”区域,ModelArts支持的基础镜像列表如下,您可根据个人需求选择相应的镜像。
cuda10之前的版本:
swr.cn-north-1.myhuaweicloud.com/modelarts-job-dev-image/custom-cpu-base:1.3
swr.cn-north-1.myhuaweicloud.com/modelarts-job-dev-image/custom-gpu-cuda92-base:1.3
swr.cn-north-1.myhuaweicloud.com/modelarts-job-dev-image/custom-gpu-cuda9-base:1.3
swr.cn-north-1.myhuaweicloud.com/modelarts-job-dev-image/custom-gpu-cuda8-base:1.3
swr.cn-north-1.myhuaweicloud.com/modelarts-job-dev-image/custom-gpu-cuda9-inner-moxing-cp36:1.3
swr.cn-north-1.myhuaweicloud.com/modelarts-job-dev-image/custom-gpu-cuda8-inner-moxing-cp27:1.3
swr.cn-north-1.myhuaweicloud.com/modelarts-job-dev-image/custom-gpu-cuda9-inner-moxing-cp27:1.3
…
cuda10之后的版本:
swr.cn-north-1.myhuaweicloud.com/modelarts-job-dev-image/custom-base-cuda10.0-cp36-ubuntu18.04-x86:1.1
swr.cn-north-1.myhuaweicloud.com/modelarts-job-dev-image/custom-base-cuda10.1-cp36-ubuntu18.04-x86:1.1
swr.cn-north-1.myhuaweicloud.com/modelarts-job-dev-image/custom-base-cuda10.2-cp36-ubuntu18.04-x86:1.1
基础镜像包含表2和表3
名称 |
说明 |
---|---|
run_train.sh |
训练启动引导脚本。实现了代码目录下载,执行训练命令、重定向训练日志输出、以及训练命令结束后上传日志文件至OBS的功能。 |
工具名称 |
说明 |
---|---|
utils.sh |
工具脚本。“run_train.sh”脚本依赖此脚本。 提供了SK解密,代码目录下载,日志文件上传等方法。 |
ip_mapper.py |
网卡地址获取脚本。 默认获取ib0网卡地址IP,训练代码可以使用ib0网卡的IP加速网络通信。 |
dls-downloader.py |
OBS下载脚本。“utils.sh”脚本依赖此脚本。 |
适用于Ascend芯片基础镜像
基础镜像包含的组件、工具如表7和表8所示
名称 |
说明 |
---|---|
run_train.sh |
可自动完成OBS代码路径下载至本地、Ascend HCCL RANK_TABLE_FILE v0.1 格式转 v1.0 格式、多卡训练进程拉起功能。 |
工具名称 |
说明 |
---|---|
utils.sh |
工具脚本。“run_train.sh”脚本依赖此脚本。 提供了SK解密,代码目录下载,日志文件上传等方法。 |
modelarts-downloader.py |
OBS下载脚本。“utils.sh”脚本依赖此脚本。 |
父主题: 用于训练模型(旧版即将下线)
同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家