一天一个开源项目(第57篇):Unsloth - 2x 更快、70% 更省显存的 LLM 微调库

引言

"Train gpt-oss, DeepSeek, Gemma, Qwen & Llama 2x faster with 70% less VRAM!"

这是「一天一个开源项目」系列的第 57 篇文章。今天介绍的项目是 Unsloth (GitHub)。

想在自己的 GPU 上微调大模型,却苦于显存不足、训练太慢?Unsloth 是开源的 LLM 微调与强化学习库 :训练速度约 2x 、显存节省约 70% 、0% 精度损失。支持 gpt-oss、DeepSeek、Qwen、Llama、Gemma、TTS 等,提供 Colab 免费 Notebook、Docker 镜像,兼容 Hugging Face transformers 与 TRL。

你将学到什么

  • Unsloth 的核心能力与定位
  • 微调与强化学习(GRPO、GSPO 等)支持
  • 支持的模型与训练范式
  • 快速开始:pip、Docker、Colab
  • 与 Hugging Face + FA2 的对比

前置知识

  • 对 LLM 微调有基本了解
  • 了解 LoRA、QLoRA 等概念更佳(可选)

项目背景

项目简介

Unsloth 是开源的 大语言模型微调与强化学习库,基于 PyTorch 与 Triton 内核,通过内存优化与高效算子实现:训练速度约 2x、显存节省约 70%。支持全参数微调、预训练、4-bit、16-bit、FP8,支持 TTS、多模态、Embedding 等各类模型,强化学习(GRPO、GSPO、DAPO 等)显存节省约 80%。

团队

  • 团队 :Unsloth AI(unsloth.ai)
  • 理念:高效、易用、0% 精度损失、支持所有主流模型

项目数据


主要功能

核心能力

能力 说明
高效微调 2x 速度、70% 显存节省,0% 精度损失
全范式支持 全参数微调、预训练、4-bit、16-bit、FP8
模型覆盖 LLM、TTS、多模态、Embedding,兼容 transformers
强化学习 GRPO、GSPO、DrGRPO、DAPO、PPO 等,80% 显存节省
导出部署 GGUF、vLLM、SGLang、Hugging Face
硬件支持 NVIDIA、AMD、Intel GPU,Linux/WSL/Windows

使用场景

  1. 个人/小团队微调:在消费级 GPU 上微调 7B、8B 模型
  2. 强化学习:GRPO、GSPO 等推理链/对齐训练
  3. 长上下文:支持更长上下文微调(如 Llama 3.1 8B 在 80GB 上可达 342K)
  4. 免费 Colab:无 GPU 用户可用 Colab Notebook 免费训练

快速开始

Linux / WSL:

bash 复制代码
pip install unsloth

Windows :需先安装 PyTorch,详见 Windows 指南。

Docker:

bash 复制代码
docker run -d -e JUPYTER_PASSWORD="mypassword" \
  -p 8888:8888 -p 2222:22 \
  -v $(pwd)/work:/workspace/work \
  --gpus all \
  unsloth/unsloth

访问 http://localhost:8888 使用 Jupyter Lab。

Colab 免费训练 :在 Unsloth Notebooks 中按模型选择对应 Notebook,如 Qwen3.5、gpt-oss、Llama 3.1 等,一键运行。

最小示例:

python 复制代码
from unsloth import FastLanguageModel
import torch

model, tokenizer = FastLanguageModel.from_pretrained(
    model_name="unsloth/llama-3.1-8b-instruct",
    max_seq_length=2048,
    load_in_4bit=True,
)

model = FastLanguageModel.get_peft_model(
    model,
    r=16,
    target_modules=["q_proj", "k_proj", "v_proj", "o_proj",
                    "gate_proj", "up_proj", "down_proj"],
    lora_alpha=16,
    lora_dropout=0,
    bias="none",
    use_gradient_checkpointing="unsloth",
)

# 使用 SFTTrainer 训练...

支持的模型

LLM :Llama 3.1/3.2/3.3/4、Qwen2.5/Qwen3/Qwen3.5、DeepSeek、Gemma 2/3、gpt-oss、Mistral、Phi 等
多模态 :Llama 3.2 Vision、Qwen2.5-VL、Pixtral、Gemma 3 Vision 等
TTS :Orpheus、sesame/csm-1b 等
Embedding:EmbeddingGemma 等

项目优势

对比项 Unsloth Hugging Face + FA2
训练速度 约 2x 1x
显存占用 约 70% 更少 基准
长上下文 如 Llama 3.1 8B 342K(80GB) 28K
精度 0% 损失 0% 损失
RL 显存 约 80% 更少 基准

项目详细剖析

技术要点

  • Triton 内核:核心算子用 OpenAI Triton 编写,手动反向传播引擎
  • 无近似:不依赖近似方法,全部精确计算
  • RoPE & MLP:Triton 内核 + Padding Free + Packing,约 3x 训练加速、30% 显存节省
  • MoE 支持:MoE 模型训练约 12x 加速、35% 显存节省

性能基准(示例)

模型 GPU Unsloth 速度 Unsloth 显存 Unsloth 上下文 HF+FA2 上下文
Llama 3.3 (70B) 80GB 2x >75% 减少 13x 更长 1x
Llama 3.1 (8B) 80GB 2x >70% 减少 12x 更长 1x

目录结构

bash 复制代码
unsloth/
├── unsloth/          # 核心库
├── cli/              # CLI 工具
├── studio/           # Studio 相关
├── scripts/          # 脚本
├── tests/            # 测试
└── cli.py            # 入口

项目地址与资源

官方资源

适用人群

  • 需要在有限 GPU 上微调 LLM 的开发者
  • 做强化学习、对齐、推理链训练的团队
  • 想用 Colab 免费体验微调的学习者
  • 使用 Llama、Qwen、DeepSeek、Gemma 等开源模型的用户

欢迎来我中的个人主页找到更多有用的知识和有趣的产品

相关推荐
Rocky Ding*1 小时前
深入浅出Xiaomi-Lens-0技术解析:像素监督如何改变视觉推理
论文阅读·人工智能·深度学习·机器学习·aigc·多模态·ai-native
IvorySQL1 小时前
开源数据库进校园| 11 月 3 日,IvorySQL 校园行走进浙大宁波校区:从 PostgreSQL 扩展生态到 AI 实战
数据库·postgresql·开源
深蓝AI2 小时前
Ghostty 1.4 七个月打磨:ASCII 解析快 5.7 倍、终端能放动画,SSH 乱码终结
程序员·开源
码上观世界2 小时前
从几个抓网页的开源项目讲起
开源
时早玖沐2 小时前
KOOK「找不到语音频道」:同一个错误假设,我犯了三次
python·开源·ai编程
Raas1002 小时前
AI网关怎么部署?MAI Gateway部署实操教程
人工智能·开源·gateway·mai gateway·企业级ai产品
摩羯12302 小时前
AI署名论文场景下,引用存在性校验如何支撑学术科研诚信
人工智能·aigc
unconditional3 小时前
我数了下 sdkm 的源码:41 个工具的安装逻辑,四分之三是同一行
rust·开源
分布式存储与RustFS3 小时前
CI 老被 Docker Hub 的 429 卡住,自建 Registry 把镜像搬进内网
运维·docker·开源·镜像仓库·对象存储·ci·rustfs
七牛云行业应用4 小时前
爆火OpenFilm 0.2.6:开源 AI 视频 Agent 的安装、编辑与渲染流程(2026 年 10 月 )
人工智能·开源·音视频