统一的大模型微调框架,支持 100 多种 LLM 与 VLM,提供零代码命令行和 Web 界面。
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
从 PyPI 安装该库
pip install trl - 2
运行 Python API 中的基础 SFT 训练示例
- 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 数据每日更新。
相关项目
用 PyTorch 从零实现的 Transformer 大模型训练教程与代码库,涵盖预训练、SFT、奖励模型、DPO/PPO/GRPO 与文本生成。
百余张原创架构图,系统图解大模型与强化学习核心算法。
面向 600 多个大语言模型和 400 多个多模态模型的微调、训练、推理与部署框架。
一个免费开源的大语言模型微调与后训练框架,通过 YAML 文件进行配置。
通过一份 YAML 配置完成 LLM 微调与后训练的命令行工具,支持在低显存消费级显卡上训练。