© 2026FindAgent  · @simprr
返回列表
m

mll-lab-nu/RAGEN

RAGEN leverages reinforcement learning to train LLM reasoning agents in interactive, stochastic environments.

⭐

2.6k

Stars

🔱

212

Forks

👁

22

Watchers

📋

29

Issues

PythonMIT创建于 2025/1/25更新于 今天
在 GitHub 上查看访问主页
README
由 Gemini 翻译整理

RAGEN:通过强化推理训练智能体

诊断智能体故障模式,优化你的 RL(强化学习)训练。

RAGEN (Reasoning AGENT) 是一个用于训练推理智能体的灵活 RL 框架。

我们开发了诊断工具,以理解智能体 RL 训练的运作方式,并修复隐藏的问题。

寻找 V1 版本 README? 请查看此处。

新闻

  • 2026.3.12. 我们很高兴发布 RAGEN V2!我们引入了对智能体 RL 中推理崩溃(Reasoning Collapse)的系统性研究,以及用于稳定训练的轻量级干预措施。详见 v2 论文。
  • 2025.4.20. RAGEN V1 论文 在 arXiv 上发表。
  • 2025.1.27. RAGEN 初次发布。博文。

关于

RAGEN 基于 StarPO (State-Thinking-Actions-Reward Policy Optimization,状态-思考-动作-奖励策略优化) 构建,这是一个统一的 RL 框架,用于训练多轮、轨迹级智能体,并支持对推理过程、奖励分配机制和提示词 rollout 结构进行灵活控制。

RAGEN 的灵活性体现在:

  • StarPO 框架。 为多轮智能体提供统一优化,支持轨迹级和回合级训练。
  • 10 个内置环境。 包含 Sokoban、FrozenLake、WebShop、DeepCoder、SearchQA、Lean、Bandit、Countdown、MetaMathQA、Sudoku。
  • 兼容 Gym 的接口。 易于添加自定义环境。

RAGEN V2 额外引入了:

  • SNR-Adaptive Filtering (V2)。 基于奖励方差的轻量级 rollout 过滤,以减轻噪声梯度更新的影响。
  • 推理崩溃诊断 (V2)。 用于检测和监控训练期间模板崩溃的互信息代理指标。

算法

StarPO:通过轨迹级优化强化推理

StarPO 框架包含两个交替阶段:rollout 阶段和更新阶段。LLM 生成推理引导的动作以与环境交互,收集轨迹级奖励,从而共同优化推理策略和动作策略。

MDP 公式化。 智能体与环境的交互被制定为马尔可夫决策过程(MDP),其中状态和动作是 Token 序列,允许 LLM 对环境动态进行推理。其目标是在多个交互轮次中最大化累积奖励期望。

Rollout 阶段。 给定初始状态,LLM 生成多条轨迹。在每一步,模型生成一个推理引导的动作:... action 。环境返回反馈(奖励和下一个状态)。

更新阶段。 StarPO 使用重要性采样来优化整个轨迹。它支持:

  • PPO。 通过轨迹上的价值函数进行 Token 级的优势估计(Advantage Estimation)。
  • GRPO。 为整个轨迹分配归一化奖励。

V2:诊断模板崩溃

单纯的熵值无法检测到“模板崩溃”,即推理在单个输入内看似多样,但在不同输入之间却变得与输入无关。RAGEN V2 将推理质量分解为两个维度:

  • 输入内多样性(Within-input diversity): 条件熵 H(Z|X)
  • 跨输入可区分性(Cross-input distinguishability): 互信息 I(X;Z)

SNR-Adaptive Filtering 使用奖励方差作为轻量级代理,在每次迭代中选择高信号提示词,直接解决模板崩溃的根本原因。

更新日志

2026.3.12. RAGEN V2 发布!查看我们的 v2 论文。

旧版更新

2025.5.8. 官方 文档 发布。

2025.5.2. 发布了用于记录小型代码库更新的 跟踪文档。

2025.4.20. RAGEN V1 论文 发表。重构了代码库:将 veRL 集成为子模块;架构拆分为三个模块——环境状态管理器(Environment State Manager)、上下文管理器(Context Manager)和智能体代理(Agent Proxy)。

2025.3.13. RAGEN 代码库正在重构中。详见 开发分支。

2025.3.8. 修复 了 veRL 中的 KL 项问题。默认优势估计器更改为 GAE (PPO),以实现更稳定的训练。

2025.1.27. RAGEN 初次发布。博文。

开始使用

git clone https://github.com/mll-lab-nu/RAGEN.git
cd RAGEN
conda create -n ragen python=3.12 -y && conda activate ragen
bash scripts/setup_ragen.sh

使用 bash scripts/setup_ragen.sh --with-search 来包含搜索环境。有关 WebShop 的说明,请参见 docs/experiment_webshop_release.md。

四种推理范式

RAGEN V2 在两个维度上诊断智能体行为——输入内多样性(条件熵)和跨输入可区分性。

贡献者
ZwJQeDzCll
项目信息
默认分支main
LicenseMIT License
创建时间2025/1/25
最近更新今天
GAI 中文摘要

RAGEN 是一个基于强化学习的灵活框架,旨在训练具备深度推理能力的大型语言模型智能体。该项目致力于通过诊断工具分析智能体在训练过程中的失效模式,从而解决强化学习训练中常见的训练不稳定及推理崩溃问题。

该框架采用 StarPO 统一优化算法,支持多轮对话与轨迹级别的智能体训练。内置包含 Sokoban、WebShop、Lean 等在内的 10 种交互式随机环境,并兼容 Gym 接口以方便用户扩展自定义环境。引入了全新的 SNR 自适应过滤机制,通过奖励方差分析实现轻量级的轨迹筛选。提供全面的实验日志与文档支持,帮助用户精细化控制推理过程、奖励分配及提示词部署结构。

该项目适用于从事 LLM 推理研究的科研人员和开发者,特别适合在需要处理复杂逻辑、多步推理或交互式任务的场景中,用于优化智能体的训练流程并提升模型表现。