Repolode
huggingface

huggingface/trl

Hugging Face 推出的库,用 SFT、GRPO、DPO、KTO 等方法对 Transformer 语言模型做后训练。

Star
19,561
Fork
3,086
未关闭 Issue
289
最近提交
5小时前

这是什么?

TRL 是一个用于对基础模型进行后训练的库,支持监督微调(SFT)、组相对策略优化(GRPO)、直接偏好优化(DPO)、Kahneman-Tversky 优化(KTO)以及奖励模型训练。每种方法都封装为独立的 Trainer 类,如 SFTTrainer、GRPOTrainer、DPOTrainer、KTOTrainer 和 RewardTrainer,底层基于 Transformers 的训练器。

TRL 依托 Transformers 生态,借助 Accelerate 支持从单卡扩展到多机集群,兼容 DDP、DeepSpeed ZeRO 和 FSDP。它与 PEFT 集成,可通过量化及 LoRA/QLoRA 在中等硬件上训练大模型,也可接入 Unsloth 的优化内核。命令行工具 trl 允许不写代码直接运行 SFT、DPO 和 KTO。

项目还在 trl.experimental 下提供实验性模块,相关接口可能随时变动。近期版本新增了对 AMD Instinct GPU(ROCm)和 AWS Trainium(TorchNeuron)的训练支持。

核心功能

  • 01提供 SFT、GRPO、DPO、KTO 和奖励模型的 Trainer 类。
  • 02通过 Accelerate、DeepSpeed 和 FSDP 支持多卡与多机训练。
  • 03通过 PEFT 支持 LoRA 和 QLoRA,降低显存需求。
  • 04提供命令行工具,无需编写代码即可运行 SFT、DPO 和 KTO。
  • 05与 Hugging Face Transformers 及 Hub 数据集无缝衔接。

适用场景

  • 使用 SFT 在指令或对话数据集上微调开源大模型。
  • 利用 DPO 基于人类偏好对齐模型。
  • 通过 GRPO 结合奖励函数进行强化学习训练。
  • 训练奖励模型,为下游强化学习流程提供打分。

快速上手

  1. 1

    从 PyPI 安装该库

    pip install trl
  2. 2

    运行 Python API 中的基础 SFT 训练示例

  3. 3

    或使用 trl 命令行工具进行微调

    trl sft --model_name_or_path Qwen/Qwen2.5-0.5B --dataset_name trl-lib/Capybara --output_dir Qwen2.5-0.5B-SFT

使用前须知

  • 训练大模型需要大量 GPU 硬件,README 建议使用 PEFT/LoRA 和量化来降低显存需求。
  • trl.experimental 下的实验性功能可能在没有通知的情况下更改或移除。

标签

常见问题

trl 是什么?
Hugging Face 推出的库,用 SFT、GRPO、DPO、KTO 等方法对 Transformer 语言模型做后训练。 TRL 是一个用于对基础模型进行后训练的库,支持监督微调(SFT)、组相对策略优化(GRPO)、直接偏好优化(DPO)、Kahneman-Tversky 优化(KTO)以及奖励模型训练。每种方法都封装为独立的 Trainer 类,如 SFTTrainer、GRPOTrainer、DPOTrainer、KTOTrainer 和 RewardTrainer,底层基于 Transformers 的训练器。
trl 可以免费使用吗?用的什么许可证?
trl 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
trl 还在维护吗?
活跃维护中。trl 最近一次提交是在 2026年10月21日。
trl 适合用来做什么?
使用 SFT 在指令或对话数据集上微调开源大模型。 利用 DPO 基于人类偏好对齐模型。 通过 GRPO 结合奖励函数进行强化学习训练。 训练奖励模型,为下游强化学习流程提供打分。
trl 怎么安装和运行?
从 PyPI 安装该库: pip install trl 运行 Python API 中的基础 SFT 训练示例 或使用 trl 命令行工具进行微调: trl sft --model_name_or_path Qwen/Qwen2.5-0.5B --dataset_name trl-lib/Capybara --output_dir Qwen2.5-0.5B-SFT
在哪里获取 trl?
源代码和安装说明在 GitHub 上:https://github.com/huggingface/trl

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目