AI 入门:用 Unsloth 快速微调大模型,一步步安装与上手
本文介绍 Unsloth 的安装与基础用法,零基础读者可学会在本地 GPU 上快速微调大模型。
什么是 Unsloth?
Unsloth 是一个开源的 Python 库,能让大语言模型的微调速度提升 2-5 倍,同时减少最多 70% 的显存占用。简单说,以前需要高端显卡才能跑的任务,现在用普通消费级显卡也能完成。它通过 LoRA(一种只训练少量参数的方法)、量化(压缩模型精度以减少内存)和优化后的 GPU 计算来实现,且不损失模型效果。
准备工作
开始前,你需要:
- 一台装有 NVIDIA GPU 的电脑(建议显存至少 6GB,如 RTX 3060 或更高)。
- 已安装 Python 3.8 或更高版本。
- 已安装 CUDA(NVIDIA 的并行计算平台,用于加速 GPU 计算)。
- 已安装 PyTorch(深度学习框架)。如果没装,可访问 pytorch.org 根据你的系统选择命令安装。
安装 Unsloth
打开终端(Windows 用户使用命令提示符或 PowerShell),依次执行以下命令:
- 创建一个新的虚拟环境(推荐):
python -m venv unsloth_env - 激活环境:Windows 用
unsloth_env\Scripts\activate,Mac/Linux 用source unsloth_env/bin/activate - 安装 Unsloth:
pip install unsloth - 安装完成后,验证安装:
python -c "import unsloth; print('安装成功')"。如果没有报错,说明安装成功。
常见坑提醒:安装前确保 PyTorch 版本与 CUDA 版本匹配。如果遇到兼容性问题,可先卸载 PyTorch 再重新安装对应版本。
第一次运行:微调一个小模型
下面是一个简单的例子,用 Unsloth 微调一个 7B 参数的模型。请先创建一个 Python 文件,比如 finetune.py,写入以下代码:
from unsloth import FastLanguageModel
import torch
model, tokenizer = FastLanguageModel.from_pretrained(
model_name="unsloth/Llama-2-7b-bnb-4bit",
max_seq_length=2048,
dtype=None,
load_in_4bit=True,
)
model = FastLanguageModel.get_peft_model(
model,
r=16,
target_modules=["q_proj", "k_proj", "v_proj", "o_proj"],
lora_alpha=16,
lora_dropout=0,
bias="none",
use_gradient_checkpointing=True,
)
# 假设你有一个数据集 dataset
trainer = torch.utils.data.DataLoader(dataset, batch_size=2)
# 实际训练循环请参考官方文档
print("模型加载成功,可以开始训练!")运行脚本:python finetune.py。如果一切正常,你将看到模型加载信息。
注意:第一次运行会下载模型文件(约 4GB),请确保网络稳定。训练时如果显存不足,可减小 max_seq_length 或 batch_size。
下一步可以做什么
现在你已经成功运行了 Unsloth,可以:
- 尝试用你自己的数据集微调模型,比如对话数据或文本分类数据。
- 将微调后的模型导出为 GGUF 格式,用 Ollama 等工具本地运行。
- 阅读 Unsloth 官方文档,学习更多高级用法,如多 GPU 训练或自定义量化。
Unsloth 让微调大模型变得平民化,祝你玩得开心!
内容来源
DEV Machine Learning
发布时间
2026-07-29 01:31