[ PROMPT_NODE_22874 ]
torchforge-rl-training
[ SKILL_DOCUMENTATION ]
# torchforge: PyTorch 原生智能体强化学习库
torchforge 是 Meta 的 PyTorch 原生强化学习库,它将基础设施关注点与算法关注点分离开来。它通过让你专注于算法,同时自动处理分布式训练、推理和权重同步,从而实现快速的强化学习研究。
## 何时使用 torchforge
**当你需要以下功能时,请选择 torchforge:**
- 强化学习算法与基础设施之间的清晰分离
- PyTorch 原生抽象(无 Ray 依赖)
- 简便的算法实验(约 100 行代码即可实现 GRPO、DAPO、SAPO)
- 通过 Monarch 执行器系统实现可扩展训练
- 与 TorchTitan 集成以实现模型并行
**在以下情况考虑替代方案:**
- 你需要生产就绪的稳定性 → 使用 **miles** 或 **verl**
- 你想要 Megatron 原生训练 → 使用 **slime**
- torchforge 目前处于实验阶段,API 可能会发生变化
## 核心功能
- **算法隔离**:实现强化学习算法时无需触及基础设施
- **可扩展性**:通过 Monarch 从单 GPU 扩展到数千个 GPU
- **现代技术栈**:TorchTitan(训练)、vLLM(推理)、TorchStore(同步)
- **损失函数**:内置 GRPO、DAPO、CISPO、GSPO、SAPO
## 架构概览
┌─────────────────────────────────────────────────────────┐
│ 应用层 (你的代码) │
│ - 定义奖励模型、损失函数、采样 │
└─────────────────────┬───────────────────────────────────┘
│
┌─────────────────────▼───────────────────────────────────┐
│ Forge API 层 │
│ - Episode, Group 数据类 │
│ - 服务接口 (async/await) │
└─────────────────────┬───────────────────────────────────┘
│
┌─────────────────────▼───────────────────────────────────┐
│ 分布式服务 (Monarch) │
│ ├── 训练器 (TorchTitan FSDP) │
│ ├── 生成器 (vLLM 推理) │
│ ├── 参考模型 (冻结的 KL 基准) │
│ └── 奖励执行器 (计算奖励) │
└─────────────────────────────────────────────────────────┘
## 安装
bash
# 创建环境
conda create -n forge python=3.12
conda activate forge
# 安装 (处理 PyTorch nightly + 依赖项)
./scripts/install.sh
# 验证
python -c "import torch, forge, vllm; print('OK')"
### ROCm 安装
bash
./scripts/install_rocm.sh
## 快速开始