检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
Git下载代码时报错 在执行scripts/install.sh安装命令或使用Dockerfile构建镜像时,如遇到git下载代码出现以下类似的报错信息,关闭git验证即可。 报错信息: fatal: unable to access 'https://gitee.com/ascend
NPU_Flash_Attn融合算子约束 query、key、value都需要梯度。默认开启重计算,则前向时qkv没有梯度,如果需要关闭重计算,可以在yaml配置 `disable_gradient_checkpointing: true` 关闭,但显存占用会直线上升。 attn_mask
BF16和FP16说明 在大模型训练中,BF16(Brain Floating Point)和FP16(Float16)都是使用的半精度浮点数格式,但它们在结构和适用性上有一些重要的区别。 BF16:具有8个指数位和7个小数位。在处理大模型时有优势,能够避免在训练过程中数值的上溢或下溢
工作负载Pod异常 Pod状态为Pending 当Pod状态为“Pending”,事件中出现“实例调度失败”的信息时,可根据具体事件信息确定具体问题原因。具体参考链接为工作负载状态异常定位方法。 通过以下命令打印Pod日志信息。 kubectl describe pod ${pod_name
训练启动脚本说明和参数配置 本代码包中集成了不同模型(包括llama2、llama3、Qwen、Qwen1.5 ......)的训练脚本,并可通过不同模型中的训练脚本一键式运行。训练脚本可判断是否完成预处理后的数据和权重转换的模型。如果未完成,则执行脚本,自动完成数据预处理和权重转换的过程
训练的数据集预处理说明 以llama2-13b举例,使用训练作业运行:0_pl_pretrain_13b.sh训练脚本后,脚本检查是否已经完成数据集预处理。 如果已完成数据集预处理,则直接执行预训练任务。如果未进行数据集预处理,则会自动执行 scripts/llama2/1_preprocess_data.sh
训练的数据集预处理说明 以 llama2-13b 举例,运行:0_pl_pretrain_13b.sh 训练脚本后,脚本检查是否已经完成数据集预处理的过程。 如果已完成数据集预处理,则直接执行预训练任务。如果未进行数据集预处理,则会自动执行 scripts/llama2/1_preprocess_data.sh
Git下载代码时报错 在执行scripts/install.sh安装命令或使用Dockerfile构建镜像时,如遇到git下载代码出现以下类似的报错信息,关闭git验证即可。 报错信息: fatal: unable to access 'https://gitee.com/ascend
模型NPU卡数、梯度累积值取值表 不同模型推荐的训练参数和计算规格要求如表1所示。规格与节点数中的1*节点 & 4*Ascend表示单机4卡,以此类推。 表1 NPU卡数、加速框架、梯度配置取值表 模型 Template 模型参数量 训练策略类型 序列长度cutoff_len 梯度累积值
NPU_Flash_Attn融合算子约束 query、key、value都需要梯度。默认开启重计算,则前向时qkv没有梯度,如果需要关闭重计算,可以在yaml配置 `disable_gradient_checkpointing: true` 关闭,但显存占用会直线上升。 attn_mask
工作负载Pod异常 Pod状态为Pending 当Pod状态为“Pending”,事件中出现“实例调度失败”的信息时,可根据具体事件信息确定具体问题原因。具体参考链接为工作负载状态异常定位方法。 通过以下命令打印Pod日志信息。 kubectl describe pod ${pod_name
显存溢出错误 在训练过程中,常见显存溢出报错,示例如下: RuntimeError: NPU out of memory. Tried to allocate 1.04 GiB (NPU 4; 60.97 GiB total capacity; 56.45 GiB already
显存溢出错误 在训练过程中,常见显存溢出报错,示例如下: RuntimeError: NPU out of memory. Tried to allocate 1.04 GiB (NPU 4; 60.97 GiB total capacity; 56.45 GiB already
执行训练任务(历史版本) 步骤一 上传训练权重文件和数据集 如果在准备代码和数据阶段已经上传权重文件和数据集到容器中,可以忽略此步骤。 如果未上传训练权重文件和数据集到容器中,具体参考上传代码和权重文件到工作环境和上传数据到指定目录章节完成。训练脚本中会自动执行训练前的权重转换操作和数据处理操作
Yaml配置文件参数配置说明 本小节主要详细描述demo_yaml配置文件、配置参数说明,用户可根据实际自行选择其需要的参数。 表1 模型训练脚本参数 参数 示例值 参数说明 model_name_or_path /home/ma-user/ws/model/Qwen2-72B 必须修改
不同模型推荐的参数与NPU卡数设置 表1 不同模型推荐的参数与NPU卡数设置 模型 Template 模型参数量 训练策略类型 序列长度cutoff_len 梯度累积值 优化工具 (Deepspeed) 规格与节点数 Qwen-VL Qwen-VL 7B full 2048 gradient_accumulation_steps
W8A8量化 什么是W8A8量化 W8A8量化方案能降低模型显存以及需要部署的卡数。也能同时降低首token时延和增量推理时延。 约束限制 支持SmoothQuant(W8A8)量化的模型列表请参见支持的模型列表。 激活量化支持动态per-token和静态per-tensor,支持非对称量化
W8A16量化 什么是W8A16量化 使用W8A16的量化不仅可以保证精度在可接受的范围内,同时也有一定的性能收益。 约束限制 只支持GPTQ W8A16 perchannel量化,只支持desc_act=false。 GPTQ W8A16量化支持的模型请参见支持的模型列表。 步骤一
训练的数据集预处理说明 以 llama2-13b 举例,运行:0_pl_pretrain_13b.sh 训练脚本后,脚本检查是否已经完成数据集预处理的过程。 如果已完成数据集预处理,则直接执行预训练任务。如果未进行数据集预处理,则会自动执行 scripts/llama2/1_preprocess_data.sh
显存溢出错误 在训练过程中,常见显存溢出报错,示例如下: RuntimeError: NPU out of memory. Tried to allocate 1.04 GiB (NPU 4; 60.97 GiB total capacity; 56.45 GiB already