Qwen3-1.7B Wordle 强化学习实战

本课程面向 Ascend NPU 开发者,使用 verl + GRPO 完成 Wordle 多轮强化学习训练。第 1~4 章从环境准备和 RL 核心概念讲起,随后实现 Wordle Agent Loop、奖励函数、数据准备、训练监控与稳定性分析;第 5~8 章进一步将 Actor 与 Reference Model 的训练后端切换为 TorchTitan-NPU,并介绍 FSDP2、offload、TND 变长注意力和上下文并行。

模型使用已完成 SFT 的 Qwen3-1.7B-Wordle-SFT,规范猜词格式为 <guess>[word]</guess>。配套训练代码位于 cann-recipes-train/llm_rl/qwen3_wordle/

软硬件配套说明

项目 要求
支持硬件 Atlas A3 训练/推理系列产品
CANN 版本 9.0.0 及以上
Python 3.11

在线体验环境

本教程支持以下在线体验环境:

体验环境 环境要求 Python 内核 说明
CANNLab 云开发环境 已安装 CANN 和 ATB Python 3.11 参考 CANNLab 环境体验指南 创建 CANNLab 环境运行 Notebook

本课程从 cann-learning-hub 课程仓进入 CANNLab,课程 notebook 已随仓库提供,无须再次克隆课程仓。首次进入后,请打开 01.01 章节介绍,运行其中的仓库拉取单元格,将 cann-recipes-train 克隆到课程仓的同级目录。环境安装、数据准备和检查由 notebook 单元格完成,长时间训练在终端运行;TensorBoard 日志由训练脚本自动生成,并按 03.04 节说明复制到本地查看。

/mnt/workspace/gitCode/cann/
├── cann-learning-hub/                 # CANNLab 入口及默认工作目录
│   └── tutorials/rl_training_pipeline/ # 本课程
└── cann-recipes-train/                # 01.01 单元格拉取的训练代码仓
    └── llm_rl/qwen3_wordle/           # 配套训练代码

注意: 如在本地环境离线体验,需自行安装配套的 CANN 软件,具体请参考 CANN 安装指南
Notebook 用于阅读教程和章节练习。训练任务需在配备 Ascend NPU 的服务器上独立运行。

课程内容

序号 主题 主要内容 课件
01 RL 强化学习 verl/vLLM-Ascend 环境、RL 与 GRPO 原理、Wordle AgentLoop、奖励设计、训练指标与稳定性调优 01_rl_training_pipeline.pptx

教程结构

初阶课程(第 1~4 章)

第 1 章:强化学习训练环境准备

Notebook 内容
01.01 章节介绍 CANNLab 目录布局、学习目标、SFT 与 RL 的区别
01.02 安装 verl 与 vLLM-Ascend 安装依赖、应用 Wordle Agent Loop patch、验证环境
01.03 verl 框架概览 Agent Loop、rollout、FSDP、vLLM 与资源切换
01.04 章节练习 选择题与判断题

第 2 章:RL 核心概念

Notebook 内容
02.01 章节介绍 本章目标与内容导航
02.02 策略与奖励 Policy、Reward、Advantage 与奖励塑形
02.03 PPO 与 GRPO GRPO 分组采样、优势归一化和策略更新
02.04 KL 与训练稳定性 KL、Entropy Bonus 与策略崩塌
02.05 章节练习 选择题与判断题

第 3 章:Wordle RL 训练

Notebook 内容
03.01 章节介绍 Wordle 任务与训练目标
03.02 环境与 Agent Loop 多轮交互、G/Y/X 反馈和 token mask
03.03 奖励函数与数据 四项奖励、Prime-RL 差异和 parquet 数据生成
03.04 运行训练与指标 终端启动训练、日志解读与 TensorBoard
03.05 章节练习 选择题与判断题

第 4 章:调优与问题排查

Notebook 内容
04.01 章节介绍 调优目标与诊断方法
04.02 超参数调优 entropy、KL 和学习率
04.03 训练崩塌分析 异常指标、根因定位与修复
04.04 章节练习 选择题与判断题

中阶课程(第 5~8 章)

第 5 章:从 FSDP 到 TorchTitan-NPU FSDP2

Notebook 内容
05.01 章节介绍 学习目标、前置条件与后端切换范围
05.02 训练后端切换原理 配置映射、模块调用链和 Actor 到 vLLM 的权重同步
05.03 章节练习 后端职责、调用链和权重同步练习

第 6 章:TorchTitan-NPU 核心特性

Notebook 内容
06.01 章节介绍 TorchTitan 与 TorchTitan-NPU 的定位
06.02 FSDP2 与可组合并行 DeviceMesh、两卡 FSDP2 与 CP 长序列扩展
06.03 Wordle 训练使用的 TorchTitan-NPU 特性 offload、TND 变长注意力、NPU converter 和权重同步
06.04 章节练习 FSDP2、TND、内存策略、NPU converter 和序列长度预算练习

第 7 章:Wordle 训练后端切换实践

第 7 章需要单机两张 Ascend NPU。环境准备 Cell 会在同级目录获取或复用 cann-recipes-train,使用 uv 创建独立的 .venv,并复用或补齐 SFT 模型与 Wordle parquet。三步训练沿用初阶课程的模型、数据、batch、序列长度、rollout、AgentLoop、GRPO 和奖励函数配置。

Notebook 内容
07.01 章节介绍 实践目标、训练资源和运行要求
07.02 准备运行环境与训练资产 安装独立后端环境,并准备 SFT 模型与 Wordle parquet
07.03 确认训练配置 使用 DRY_RUN 核对 TorchTitan、FSDP2、TND 和原有 RL 配置
07.04 运行三步训练 以 FSDP2 + TND 连续完成 3 个训练 step
07.05 章节练习 环境、配置和三步训练练习

第 8 章:训练后端切换总结

Notebook 内容
08.01 章节介绍 学习目标和内容安排
08.02 后端切换总结 切换步骤、常见问题和性能指标
08.03 综合练习 配置、特性和实践综合练习

参考