检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
准备代码 本教程中用到的训练推理代码和如下表所示,请提前准备好。 获取模型软件包 本方案支持的模型对应的软件和依赖包获取地址如表1所示,模型列表、对应的开源权重获取地址如表2所示。 表1 模型对应的软件包和依赖包获取地址 代码包名称 代码说明 下载地址 AscendCloud-6
记住使用Dockerfile创建的新镜像名称, 后续使用 ${dockerfile_image_name} 进行表示。 Step2 在ECS中Docker登录 在SWR中单击右上角的“登录指令”,然后在跳出的登录指定窗口,单击复制临时登录指令。在创建的ECS中粘贴临时登录指令,即可完成登录。
记住使用Dockerfile创建的新镜像名称, 后续使用 ${dockerfile_image_name} 进行表示。 Step2 在ECS中Docker登录 在SWR中单击右上角的“登录指令”,然后在跳出的登录指定窗口,单击复制临时登录指令。在创建的ECS中粘贴临时登录指令,即可完成登录。
记住使用Dockerfile创建的新镜像名称, 后续使用 ${dockerfile_image_name} 进行表示。 Step2 在ECS中Docker登录 在SWR中单击右上角的“登录指令”,然后在跳出的登录指定窗口,单击复制临时登录指令。在创建的ECS中粘贴临时登录指令,即可完成登录。
若查看启动作业日志信息,可通过以下命令打印正在启动的日志信息。其中${pod_name}为pod信息中的NAME,例如vcjob-main-0。 kubectl logs -f ${pod_name} 训练过程中,训练日志会在最后的Rank节点打印。 图1 打印训练日志 训练完成后
记住使用Dockerfile创建的新镜像名称, 后续使用 ${dockerfile_image_name} 进行表示。 Step2 在ECS中Docker登录 在SWR中单击右上角的“登录指令”,然后在跳出的登录指定窗口,单击复制临时登录指令。在创建的ECS中粘贴临时登录指令,即可完成登录。
记住使用Dockerfile创建的新镜像名称, 后续使用 ${dockerfile_image_name} 进行表示。 Step2 在ECS中Docker登录 在SWR中单击右上角的“登录指令”,然后在跳出的登录指定窗口,单击复制临时登录指令。在创建的ECS中粘贴临时登录指令,即可完成登录。
记住使用Dockerfile创建的新镜像名称, 后续使用 ${dockerfile_image_name} 进行表示。 Step2 在ECS中Docker登录 在SWR中单击右上角的“登录指令”,然后在跳出的登录指定窗口,单击复制临时登录指令。在创建的ECS中粘贴临时登录指令,即可完成登录。
记住使用Dockerfile创建的新镜像名称, 后续使用 ${dockerfile_image_name} 进行表示。 Step2 在ECS中Docker登录 在SWR中单击右上角的“登录指令”,然后在跳出的登录指定窗口,单击复制临时登录指令。在创建的ECS中粘贴临时登录指令,即可完成登录。
准备代码 本教程中用到的训练推理代码和如下表所示,请提前准备好。 获取模型软件包 本方案支持的模型对应的软件和依赖包获取地址如表1所示,模型列表、对应的开源权重获取地址如表2所示。 表1 模型对应的软件包和依赖包获取地址 代码包名称 代码说明 下载地址 AscendCloud-6
ascendcloud-aigc-6.3.904-xxx.tar.gz 文件名中的xxx表示具体的时间戳,以包的实际时间为准。 获取路径:Support-E网站。 说明: 如果没有软件下载权限,请联系您所在企业的华为方技术支持下载获取。 基础镜像 西南-贵阳一:swr.cn-southwest-2
用于指定预处理数据的工作线程数。随着线程数的增加,预处理的速度也会提高,但也会增加内存的使用。 per_device_train_batch_size 1 指定每个设备的训练批次大小。 gradient_accumulation_steps 8 必须修改,指定梯度累积的步数,这可以增加批次大小而不增加内存消耗。可参考表1
记住使用Dockerfile创建的新镜像名称, 后续使用 ${dockerfile_image_name} 进行表示。 Step2 在ECS中Docker登录 在SWR中单击右上角的“登录指令”,然后在跳出的登录指定窗口,单击复制临时登录指令。在创建的ECS中粘贴临时登录指令,即可完成登录。
Step7 精度对比 由于NPU和GPU生成的随机数不一样,需要固定二者的随机数再进行精度对比。通常的做法是先用GPU单卡跑一遍训练,生成固定下来的随机数。然后NPU和GPU都用固定的随机数进行单机8卡训练,比较精度。 训练精度对齐。对齐前2000步的loss,观察loss在极小误差范围内。
一键式自动授权方式为保证使用业务过程中有足够的权限,基于依赖服务的预置系统策略指定授权范围,创建的委托的权限比较大,基本覆盖了依赖服务的全部权限。如果您需要对委托授权的权限范围进行精确控制,请使用定制化委托授权。更多权限控制的内容请参见权限管理章节。 本章节主要介绍一键式自动
max_model_len 解决方法: 修改config.json文件中的"seq_length"的值,"seq_length"需要大于等于 --max-model-len的值。config.json存在模型对应的路径下,例如:/data/nfs/benchmark/tokenize
也可以映射至容器中,作为容器中挂载宿主机的目录。宿主机和容器使用不同的文件系统。为方便访问两个地址可以相同。 ${pvc_name} 为在CCE集群关联SFS Turbo步骤中创建的PVC名称。 在设置容器中需要的CPU与内存大小时,可通过运行以下命令查看申请的节点机器中具体的CPU与内存信息。 kubectl
也可以映射至容器中,作为容器中挂载宿主机的目录。宿主机和容器使用不同的文件系统。为方便访问两个地址可以相同。 ${pvc_name} 为在CCE集群关联SFS Turbo步骤中创建的PVC名称。 在设置容器中需要的CPU与内存大小时,可通过运行以下命令查看申请的节点机器中具体的CPU与内存信息。 kubectl
也可以映射至容器中,作为容器中挂载宿主机的目录。宿主机和容器使用不同的文件系统。为方便访问两个地址可以相同。 ${pvc_name} 为在CCE集群关联SFS Turbo步骤中创建的PVC名称。 在设置容器中需要的CPU与内存大小时,可通过运行以下命令查看申请的节点机器中具体的CPU与内存信息。 kubectl
训练过程中,训练日志会在第一个的Rank节点打印。 图1 打印训练日志 训练完成后,如果需要单独获取训练日志文件,日志存放在第一个的Rank节点中;日志存放路径为:对应表1表格中output_dir参数值路径下的trainer_log.jsonl文件。 查看性能 训练性能主要通过训练日志中的2个指标查看,吞吐量和loss收敛情况。