总体思路
基于NPU的大模型迁移分为原仓迁移与AscendSpeed迁移,一般社区有开源训练脚本的模型可以考虑直接在原仓迁移,如果社区只有模型结构而没有开源训练脚本就需要进行AscendSpeed模型迁移,当模型需要在NPU上进行深入开发优化时也推荐基于AscendSpeed进行迁移开发。
图1 原始仓迁移
图2 AscendSpeed迁移
- 需要明确迁移仓库,主要包含模型权重,模型结构,训练脚本,数据集,词表文件,使用较为广泛的资源仓库是huggingface社区,基于原始模型仓库进行训练保证原始训练流程畅通。
- 参见环境准备完成NPU迁移与训练的环境准备,包括NPU驱动固件,CANN软件包,算子二进制包以及PyTorch框架。
- 根据模型类型进行迁移。
- 迁移完成后进行NPU训练,保证训练流程以及功能正常。
- 基于原始模型的精度数据进行对齐。
父主题: PyTorch大模型训练适配