微调工具比较

为在 Clore.ai GPU 服务器上训练大语言模型选择合适的微调框架。

circle-info

微调 将预训练的大语言模型调整到你的特定任务或领域。本指南比较四个领先的开源工具:Unsloth、Axolotl、LLaMA-Factory 和 TRL——涵盖速度、内存效率、支持的模型和易用性。


快速决策矩阵

Unsloth
Axolotl
LLaMA-Factory
TRL

适用场景

速度 + 内存

配置驱动训练

适合入门者

研究 + RLHF

相对于基线的速度

快 2-5 倍

≈1×(标准)

≈1×(标准)

≈1×(标准)

内存减少

减少 70-80%

QLoRA 标准

QLoRA 标准

标准

RLHF/DPO/PPO

基础

✅(原生支持)

Web UI

GitHub 星标

23K+

9K+

37K+

1万+

许可

LGPL(非商业用途免费)

Apache 2.0

Apache 2.0

Apache 2.0


概览

Unsloth

Unsloth 专注于一件事:让微调尽可能快且内存高效。它在 Triton 中重写关键操作并优化 CUDA 内核。

理念:极致速度,最低显存——没有妥协。

Axolotl

Axolotl 用基于 YAML 的配置系统封装了 HuggingFace Transformers。它处理训练设置的复杂性,让你可以专注于数据和超参数。

理念:一切在 YAML 中配置,底层保持完全灵活。

LLaMA-Factory

LLaMA-Factory 支持最广泛的模型和训练方法(100+),并提供用于配置的 Web UI。对于非研究人员来说这是最易上手的选项。

理念:所有功能可用,面向所有人。

TRL(Transformer 强化学习)

TRL 是 HuggingFace 的官方 RLHF 库。它是 PPO、DPO、ORPO 及其他对齐训练方法的标准实现。

理念:以研究为先,原生支持对齐训练。


速度基准

训练速度比较(令牌/秒)

测试设置:LLaMA 3.1 8B,LoRA r=16,4 位量化,批量大小 4,A100 80GB

工具
每秒标记数(Tokens/sec)
相对于基线
内存(显存)

Unsloth(4 位)

~4,200

2.8×

≈8GB

Axolotl(QLoRA)

~1,500

1.0×

约 16GB

LLaMA-Factory(QLoRA)

~1,480

≈1.0×

约 16GB

TRL(QLoRA)

~1,450

≈0.97×

≈18GB

Unsloth(完整 16 位)

~2,800

1.9×

≈22GB

circle-check

显存使用比较

训练 LLaMA 3.1 8B,序列长度 2048:

方法
Unsloth
Axolotl
LLaMA-Factory
TRL

完整微调(bf16)

60GB

70GB

72GB

74GB

LoRA(bf16)

18GB

24GB

25GB

26GB

QLoRA(4 位)

8GB

16GB

16GB

18GB

QLoRA(4 位,长上下文)

12GB

24GB

24GB

26GB

8B 模型的最低 GPU 要求:

  • Unsloth:RTX 3080(10GB) ✅

  • 其他:需要 RTX 3090(24GB)


支持的模型

模型支持矩阵

模型家族
Unsloth
Axolotl
LLaMA-Factory
TRL

LLaMA 3.x

LLaMA 2

Mistral

Mixtral MoE

Gemma 2

Phi-3/3.5

Qwen 2.5

DeepSeek

Falcon

GPT-NeoX

部分支持

T5/FLAN

BERT/RoBERTa

视觉类 LLM

部分支持

部分支持

训练方法支持

方法
Unsloth
Axolotl
LLaMA-Factory
TRL

完整微调

LoRA

QLoRA

DoRA

PEFT

SFT

✅(原生支持)

DPO

✅(原生支持)

PPO

✅(原生支持)

ORPO

KTO

✅(原生支持)

GRPO

CPT(继续预训练)


Unsloth:深入解析

它为何快速

  1. Triton 内核:在 Triton 中重写了 Flash Attention、交叉熵损失和 LoRA

  2. 融合操作:将多个 CUDA 操作合并为一个内核

  3. 智能梯度检查点:"unsloth" 模式节省约 30% 的内存

  4. 高效反向传播:避免物化大型中间张量

在 Clore.ai 上的安装

完整训练脚本

弱点:不支持 PPO,受限于支持的模型列表,采用 LGPL 许可证(商业使用请核查)


Axolotl:深入解析

以配置为先的方式

当你需要可复现、可版本控制的训练配置时,Axolotl 表现出色:

适用场景:适用于希望可复现、配置版本化训练的团队


LLaMA-Factory:深入解析

Web UI 演练

Web UI 选项卡:

  1. 训练 — 配置基础模型、数据集、方法

  2. 评估 — 运行 MMLU、CMMLU 基准测试

  3. 聊天 — 交互式推理

  4. 导出 — 合并 LoRA,量化为 GGUF

CLI 训练示例

适用场景:适合初学者、需要 Web UI 的团队、希望进行 DPO/RLHF 但无需深度研究知识的用户


TRL:深入解析

RLHF 流程示例

TRL 是对齐训练的首选:

适用场景:对齐研究、RLHF、DPO、PPO、ORPO 的实现


选择合适的工具

决策流程

按团队类型

团队
推荐
理由

个人研究者

Unsloth

速度 + Jupyter 笔记本

机器学习工程师

Axolotl

配置驱动、可复现

产品团队

LLaMA-Factory

Web UI、广泛的模型支持

对齐团队

TRL

原生的 RLHF 原语

初创公司

Unsloth + TRL

需要时兼顾速度与对齐能力


Clore.ai 的 GPU 建议

任务
最低 GPU
推荐配置
工具

7-8B LoRA(QLoRA)

RTX 3080(10GB)

RTX 3090

Unsloth

13B LoRA

生产

A6000(48GB)

Unsloth/Axolotl

70B LoRA

A100(80GB)

2×A100

Axolotl/TRL

8B 完整微调

A100(40GB)

A100(80GB)

任意

DPO/PPO 7B

大规模

A6000(48GB)

TRL


有用的链接


总结

工具
适用场景
关键优势

Unsloth

对速度敏感的训练,小显卡可用

快 2-5×,显存减少 70%

Axolotl

配置驱动,可复现的运行

YAML 为先,支持多种数据格式

LLaMA-Factory

100+ 模型,Web UI,适合初学者

最多的模型支持,带 GUI

TRL

RLHF、DPO、对齐研究

原生的对齐训练

对于大多数 Clore.ai 用例:首先使用 Unsloth (速度 + 内存效率),如需 DPO 或 PPO 对齐训练再添加 TRL

最后更新于

这有帮助吗?