检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
--epochs=${训练epoch数量} 运行性能训练脚本train_performance_8p.sh。运行前请先修改参数。 # 运行性能训练脚本 bash test/train_performance_8p.sh --model_name=${预训练模型路径} --data_path=${训练数据集路径}
训练输出路径被其他作业使用 问题现象 在创建训练作业时出现如下报错:操作失败!Other running job contain train_url: /bucket-20181114/code_hxm/ 原因分析 根据报错信息判断,在创建训练作业时,同一个“训练输出路径”在被其他作业使用。
推荐开启预检,预检可提前发现节点故障、驱动故障。 “1” 如何查看训练环境变量 在创建训练作业时,“启动命令”输入为“env”,其他参数保持不变。 当训练任务执行完成后,在训练作业详情页面中查看“日志”。日志中即为所有的环境变量信息。 图1 查看日志 父主题: 管理模型训练作业
权限问题 训练作业访问OBS时,日志提示“stat:403 reason:Forbidden” 日志提示"Permission denied" 父主题: 训练作业
为默认的工作空间。 ai_project String 指定算法所属的ai项目,默认值为"default-ai-project"。ai项目已下线,无需关注。 user_name String 用户名称。 domain_id String 用户的domainID。 source String
训练作业进程被kill 问题现象 用户进程被Kill表示用户进程因外部因素被Kill或者中断,表现为日志中断。 原因分析 CPU软锁 在解压大量文件可能会出现此情况并造成节点重启。可以适当在解压大量文件时,加入sleep。比如每解压1w个文件,就停止1s。 存储限制 根据规格情况
调试与训练 单机单卡 单机多卡 多机多卡 父主题: 专属资源池训练
engine_type Integer 训练作业的引擎类型。 engine_name String 训练作业的引擎名称。 engine_id Long 训练作业的引擎ID。 engine_version String 训练作业使用的引擎版本。 train_url String 训练作业的输出文件OBS
Standard训练作业 功能咨询 训练过程读取数据 编写训练代码 创建训练作业 管理训练作业版本 查看作业详情
预训练 前提条件 已上传训练代码、训练权重文件和数据集到OBS中,具体参考代码上传至OBS。 Step1 创建训练任务 创建训练作业,并自定义名称、描述等信息。选择自定义算法,启动方式自定义,以及选择上传的镜像。 代码目录选择:OBS桶路径下的 llm_train/AscendSpeed
Session初始化,与使用SDK调测单机训练作业中的1相同。 准备训练数据,与使用SDK调测单机训练作业中的2相同,唯一的不同在于obs_path参数是必选的。 准备训练脚本。 from modelarts.train_params import TrainingFiles code_dir
训练作业失败,如何使用开发环境调试训练代码? 在创建训练作业前,推荐您先使用ModelArts开发环境调试训练代码,避免代码迁移过程中的错误。 直接使用线上notebook环境调试请参考使用JupyterLab开发模型。 配置本地IDE(Pycharm或者VsCode)联接云上环境调试请参考使用本地IDE开发模型。
训练代码中,如何获取依赖文件所在的路径? 由于用户本地开发的代码需要上传至ModelArts后台,训练代码中涉及到依赖文件的路径时,用户设置有误的场景较多。因此推荐通用的解决方案:使用os接口得到依赖文件的绝对路径,避免报错。 以下示例展示如何通过os接口获得其他文件夹下的依赖文件路径。
如何提升训练效率,同时减少与OBS的交互? 场景描述 在使用ModelArts进行自定义深度学习训练时,训练数据通常存储在对象存储服务(OBS)中,且训练数据较大时(如200GB以上),每次都需要使用GPU资源池进行训练,且训练效率低。 希望提升训练效率,同时减少与对象存储OBS的交互。可通过如下方式进行调整优化。
-v1.5-13b-pretrain路径下,并输出模型训练精度和性能信息。 训练过程中,训练日志会在最后的Rank节点打印。 日志里存在lm loss参数 ,lm loss参数随着训练迭代周期持续性减小,并逐渐趋于稳定平缓。可以使用可视化工具TrainingLogParser查看loss收敛情况。
er文件,具体请参见训练tokenizer文件说明。 Step2 创建SFT全参微调训练任务 创建训练作业,并自定义名称、描述等信息。选择自定义算法,启动方式自定义,以及上传的镜像。训练脚本中会自动执行训练前的权重转换操作和数据处理操作。 图1 选择镜像 训练作业启动命令中输入:
上传镜像 操作场景 客户端上传镜像,是指在安装了容器引擎客户端的机器上使用docker命令将镜像上传到容器镜像服务的镜像仓库。 如果容器引擎客户端机器为云上的ECS或CCE节点,根据机器所在区域有两种网络链路可以选择: 如果机器与容器镜像仓库在同一区域,则上传镜像走内网链路。 如
Neural Networks)是华为公司针对AI场景推出的异构计算架构,通过提供多层次的编程接口,支持用户快速构建基于昇腾平台的AI应用和业务。包括: AscendCL:昇腾硬件的统一编程接口,包含了编程模型、硬件资源抽象、AI任务及内核管理、内存管理、模型和算子调用、媒体预
单击“提交”,在“信息确认”页面,确认训练作业的参数信息,确认无误后单击“确定”。 训练作业创建完成后,后台将自动完成容器镜像下载、代码目录下载、执行启动命令等动作。 训练作业一般需要运行一段时间,根据您的训练业务逻辑和选择的资源不同,训练时长将持续几十分钟到几小时不等。训练作业执行成功后,日志信息如下所示。
日志出现ECC错误,导致训练作业失败 问题现象 训练作业日志运行出现如下报错:RuntimeError: CUDA error: uncorrectable ECC error encountered 原因分析 由于ECC错误,导致作业运行失败。 处理方法 当ECC错误且计数超过