cann-recipes-train 仓库深度解读:昇腾平台下 DeepSeek-R1 与 Qwen2.5 强化学习训练优化实践
前言
自 DeepSeek-R1 发布以来,大模型的强化学习(RL)训练掀起了新一轮的技术热潮。各大厂商与开源社区纷纷投入实践,持续探索更高效的 RL 训练体系。本文将基于 cann-recipes-train 仓库,解读两个实践样例:DeepSeek-R1 的 RL 训练优化实践、基于 veRL 框架的 Qwen2.5 强化学习实践。
cann-recipes-train 仓库全景解析:昇腾训练优化的实战底座
在大模型训练追求效率的阶段,CANN 负责底层异构硬件适配与资源调度,无需从零研究 GPU 和 NPU 协同,现有模型代码也能快速对接。训 LLM 或多模态模型时,通过算子优化、内存复用提升速度并减少资源浪费。
cann-recipes-train 仓库提供可直接复用的代码样例,涵盖具体 LLM 的训练优化步骤、多模态模型的算子调试方法,帮助开发者跳过'看文档懂了但不会用'的坑,快速掌握 CANN 的优化技巧。
首批版本中,cann-recipes-train 上线了两个基于 veRL 强化学习框架的典型训练样例,分别覆盖 Qwen2.5 与 DeepSeek-R1-671B 两大模型:
- DeepSeek-R1 RL 训练优化样例:基于开源 veRL 框架,搭配 MindSpeed+vLLM-Ascend 框架,在 Atlas A3 集群实现 GRPO 算法的高吞吐 RL 训练,达到 120TPS/卡的系统吞吐量。
- 基于 veRL 框架的 Qwen2.5 强化学习(入门样例):基于 Qwen2.5-1.5B-Instruct 模型,采用 veRL 强化学习框架,在 MATH-lighteval 数学推理数据集上进行了训练,仅需单卡 Atlas A2 环境即可快速上手。
开发环境部署准备
1. 资源配置
- 计算资源:NPU 910B,32vCPU + 64GB 内存
- 容器镜像:ubuntu22.04-py3.11-cann8.2.rc1-sglang-main-notebook
2. 环境检查
启动成功后使用 npu-smi 查看 NPU 状态、利用率。确保当前 Notebook 的昇腾 910B3 NPU 状态正常,功耗、温度及显存占用符合预期,无异常运行进程。
3. 克隆仓库
将 cann-recipes-train 克隆到本地,进入 rl_train 目录,可以看到特定模型的 RL 训练相关样例集合:
deepseek:DeepSeek-R1 RL 训练优化实践样例qwen2_5:基于 veRL 框架的 Qwen2.5 强化学习实践样例
DeepSeek-R1 RL 训练优化实践样例
部署要求
针对 DeepSeek-R1 模型,基于 veRL 开源框架,配合 MindSpeed-LLM 和 vLLM-Ascend 框架,完成 RL 训练全流程的优化适配。
- 硬件要求:Atlas A3 系列,最少卡数 128 张 A3。
1. 安装依赖 基础环境适配需安装核心依赖(如 veRL、torch_npu 等)。部分版本冲突不影响核心功能,可按需调整。
2. 拉取框架代码
拉取 veRL(指定 Commit)、vLLM(v0.9.1)、vLLM-Ascend(打补丁)及 Megatron-LM、MindSpeed 等多个指定版本的 AI 相关依赖框架,复制到 cann-recipes-train/rl_train/deepseek/ 目录,为样例运行搭建适配环境。
3. 修改 veRL 代码 为使能 patch 修改,需对以下 veRL 源码进行调整。


