欢迎来到 Trinity-RFT 的文档!#

💡 什么是 Trinity-RFT?#

Trinity-RFT 是一个通用、灵活、用户友好的大语言模型(LLM)强化微调(RFT)框架。 其将 RFT 流程解耦为三个协同运行的关键模块:

  • Explorer 负责执行智能体-环境交互,并生成经验数据;

  • Trainer 在经验数据上最小化损失函数,以此更新模型参数;

  • Buffer 负责协调整个 RFT 生命周期中的数据处理流水线。

Trinity-RFT 面向不同背景和目标的用户提供相应功能:

  • 🤖 智能体应用开发者: 训练智能体应用,以增强其在特定领域中完成任务的能力 [教程]

  • 🧠 强化学习算法研究者: 通过定制化简洁、可插拔的模块,设计、实现与验证新的强化学习算法 [教程]

  • 📊 数据工程师: 设计针对任务定制的数据集,构建处理流水线以支持数据清洗、增强以及人类参与场景 [教程]

🔨 教程与指南#

🌟 核心特性#

  • 灵活的 RFT 模式:

    • 支持同步/异步、on-policy/off-policy 以及在线/离线强化学习

    • 采样与训练可分离运行,并可在多设备上独立扩展

    • 支持经验回放,进一步提升样本与时间效率

    Trinity-RFT 支持的 RFT 模式
  • Agentic RL 支持:

    • 支持拼接式多轮和通用多轮交互

    • 能够直接训练使用 AgentScope 等智能体框架开发的 Agent 应用

    智能体工作流
  • 全生命周期的数据流水线:

    • 支持 rollout 任务和经验数据的流水线处理

    • 贯穿 RFT 生命周期的主动数据管理(优先级排序、清洗、增强等)

    • 原生支持多任务联合训练与课程学习

    数据流水线设计
  • 用户友好的框架设计:

    • 即插即用模块与解耦式架构,便于快速上手和二次开发

    • 丰富的图形界面,支持低代码使用

    系统架构

🔨 算法支持#

下表列出了 Trinity-RFT 支持的算法,更多算法请参考 算法模块。您也可以通过自定义不同的模块来构建新算法,参见 教程

算法

文档/示例

核心代码

关键配置

PPO [论文]

[文档] [Countdown 例子]

[代码]

algorithm_type: ppo

GRPO [论文]

[文档] [GSM8K 例子]

[代码]

algorithm_type: grpo

CHORD 💡 [论文]

[文档] [ToolACE 例子]

[代码]

algorithm_type: mix_chord

REC Series 💡 [论文]

[GSM8K 例子]

[代码]

algorithm_type: rec

RLOO [论文]

-

[代码]

algorithm_type: rloo

REINFORCE++ [论文]

-

[代码]

algorithm_type: reinforceplusplus

GSPO [论文]

-

[代码]

algorithm_type: gspo

TOPR [论文]

[GSM8K 例子]

[代码]

algorithm_type: topr

sPPO [论文]

[GSM8K 例子]

[代码]

algorithm_type: sppo

AsymRE [论文]

[GSM8K 例子]

[代码]

algorithm_type: asymre

CISPO [论文]

-

[代码]

algorithm_type: cispo

SAPO [论文]

-

[代码]

algorithm_type: sapo

On-Policy Distillation [博客] [论文]

[GSM8K 示例]

[代码]

algorithm_type: on_policy_distill

致谢#

本项目基于许多优秀的开源项目构建,包括:

引用#

@misc{trinity-rft,
      title={Trinity-RFT: A General-Purpose and Unified Framework for Reinforcement Fine-Tuning of Large Language Models},
      author={Xuchen Pan and Yanxi Chen and Yushuo Chen and Yuchang Sun and Daoyuan Chen and Wenhao Zhang and Yuexiang Xie and Yilun Huang and Yilei Zhang and Dawei Gao and Yaliang Li and Bolin Ding and Jingren Zhou},
      year={2025},
      eprint={2505.17826},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={https://arxiv.org/abs/2505.17826},
}