更新时间:2024-08-23 GMT+08:00
分享

准备Notebook

ModelArts Notebook云上云下,无缝协同,更多关于ModelArts Notebook的详细资料请查看开发环境介绍

本案例中的训练作业需要通过SFS Turbo挂载盘的形式创建,因此需要将上述数据集、代码、权重文件从OBS桶上传至SFS Turbo中。

用户需要创建开发环境Notebook,并绑定SFS Turbo,以便能够通过Notebook访问SFS Turbo服务。随后,通过Notebook将OBS中的数据上传至SFS Turbo,并对存储在SFS Turbo中的数据执行编辑操作。

创建Notebook

创建开发环境Notebook实例,具体操作步骤请参考创建Notebook实例

镜像选择已注册的自定义镜像,资源类型选择创建好的专属资源池,规格推荐选择“Ascend: 8*ascend-snt9b”

图1 Notebook中选择自定义镜像与规格

存储配置选择“弹性文件服务SFS”,并且选择已创建的SFS Turbo实例。如果该SFS Turbo多人共用,则推荐用户编辑“子目录挂载”,创建自己的子目录进行划分。

图2 Notebook中选择弹性文件服务

使用Notebook将OBS数据导入SFS Turbo

打开已创建的Notebook实例,选择Notebook的python-3.9.10,即可编辑Untitled.ipynb文件。编写以下代码,并运行Untitled.ipynb文件(用于将OBS中的数据导入至SFS Turbo)。

import moxing as mox  
#obs存放数据路径 
obs_code_dir= "obs://<bucket_name>/llm_train"
obs_data_dir= "obs://<bucket_name>/training_data"
obs_model_dir= "obs://<bucket_name>/model"
# NoteBook中存放数据路径
local_code_dir= "/home/ma-user/work/llm_train"
local_data_dir= "/home/ma-user/work/training_data"
local_model_dir= "/home/ma-user/work/model"
mox.file.copy_parallel(obs_code_dir,local_code_dir)
mox.file.copy_parallel(obs_data_dir,local_data_dir)
mox.file.copy_parallel(obs_model_dir,local_model_dir)

以此,OBS中的数据已迁移至SFS Turbo中,并可通过Notebook随时访问并编辑SFS Turbo中的数据。

Notebook中安装依赖包并保存镜像

在后续训练步骤中,训练作业启动命令中包含sh scripts/install.sh,该命令用于git clone完整的代码包和安装必要的依赖包,每次启动训练作业时会执行该命令安装。

您可以在Notebook中导入完代码之后,在Notebook运行sh scripts/install.sh命令提前下载完整代码包和安装依赖包,然后使用保存镜像功能。后续训练作业使用新保存的镜像,无需每次启动训练作业时再次下载代码包以及安装依赖包,可节约训练作业启动时间。

由于训练启动命令也会执行sh scripts/install.sh安装依赖包,因此Notebook保存镜像为可选操作。

图3 安装依赖包
图4 保存镜像
图5 填写保存镜像相关参数

相关文档