unsloth-buddy
Claude Code / Gemini CLI 的 LLM 微调技能包,Unsloth + MLX
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
Claude Code / Gemini CLI 的 LLM 微调技能包,Unsloth + MLX
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
你是否曾想过:把自己积累的行业对话数据喂给 AI,让它学会你的表达风格和专业知识,但手里只有一台 MacBook Air 或者一块消费级显卡?
这不只是想象——unsloth-buddy 正是来解决这个痛点的。这是一个专为 AI Agent(Claude Code、Gemini CLI、Codex 等)设计的 LLM 微调技能包,它把微调这个原本需要深入钻研 AI 理论的复杂工程,封装成了一组可以像"请教同事"一样操作的对话流程。
大型语言模型(LLM)能力强大,但通用模型无法完美适配垂直领域的专业表达。解决方案是微调(Fine-tuning)——用领域数据继续训练基础模型,使其更懂你的业务场景。
然而,传统微调有三个现实障碍:
unsloth-buddy 由 Gaslamp AI 平台(gaslamp.dev)推出,GitHub 仓库创建于 2026 年 3 月,隶属 TYH-labs。它不是独立运行的 App,而是一套可被 AI Agent 调用的微调"技能包"——以自然语言描述你的数据和问题,Agent 自动完成从数据处理到模型导出的全流程。
项目核心特性包括:
Unsloth 是目前最流行的开源 LLM 高效微调库。它的核心优化在于用**精确手写反向传播核(Exact Manual Backpropagation Kernels)**替代了 PyTorch 自动求导,在不损失精度的情况下大幅降低显存占用。相比标准 HuggingFace 训练,Unsloth 可以实现:
以下是 scripts/unsloth_sft_example.py 的核心代码结构:
from unsloth import FastLanguageModel
from trl import SFTTrainer, SFTConfig
# 加载 4bit 量化模型(显存友好)
model, tokenizer = FastLanguageModel.from_pretrained(
model_name="unsloth/llama-3-8b-bnb-4bit",
max_seq_length=2048,
load_in_4bit=True,
)
# PEFT LoRA 适配器注入
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,
use_gradient_checkpointing="unsloth", # 关键:显存减半
)
use_gradient_checkpointing="unsloth" 是显存优化的关键——它以 30% 的额外计算换取 50% 的显存降低。相比直接设置 "long" 或 "true",Unsloth 版本专门为反向传播核优化,避免了兼容性问题。
对于 Apple Silicon 用户,unsloth-buddy 提供了完整的 MLX 后端路径。MLX 是 Apple 官方推出的设备端 ML 框架,充分利用统一内存架构的优势,无需独立显存。项目中包含完整的 Apple Silicon 微调示例脚本(unsloth_mlx_sft_example.py、unsloth_mlx_vision_example.py、mps_grpo_example.py)。
这意味着 MacBook Air M3(最高 24GB 统一内存)就能微调 7B 级别的模型,真正实现了"口袋里的微调实验室"。
unsloth-buddy 的设计哲学是"把专家经验封装成对话"。整个微调流程被分解为 7 个阶段,Agent 以交互式引导用户完成每一步:
| 阶段 | 内容 | 关键技术 |
|---|---|---|
| Phase 0 | 项目初始化 | scripts/init_project.py 创建标准目录结构 |
| Phase 1 | 需求访谈 | 2 个关键问题确认模型用途和数据类型 |
| Phase 2 | 数据采集与格式化 | JSONL/Alpaca 格式转换,数据集校验 |
| Phase 3 | 硬件/环境检测 | detect_system.py + detect_env.py 探测 GPU/CUDA |
| Phase 4 | 模型选择与训练 | Unsloth / MLX / llama.cpp 后端选择 |
| Phase 5 | 训练监控 | GaslampDashboardCallback 实时 loss 可视化 |
| Phase 6 | 评估 | eval/run_skill_evals.py 自动化评测框架 |
| Phase 7 | 反思与总结 | reflect.py 从本次项目提取长期经验 |
核心脚本 scripts/reflect.py(46016 字节,最复杂的脚本)负责从已完成的项目中提取可复用的经验,写入 ~/.gaslamp/ 持久化存储,使 Agent 能够"记住"每次训练的硬件配置、参数选择和教训,在后续项目中持续优化建议。
unsloth-buddy 还支持 GRPO(Group Relative Policy Optimization),这是 DeepSeek-R1 提出的推理优化方法。相比标准 PPO,GRPO 不需要独立的 Critic 模型,而是通过组内相对评估来优化策略。项目中包含:
scripts/unsloth_grpo_example.py — Unsloth + GRPO 训练示例scripts/mps_grpo_example.py — Apple Silicon MPS 后端 + GRPO 训练这使得 unsloth-buddy 成为目前少数支持 GRPO 的开源工具包之一,对于需要提升模型推理能力(如数学、代码生成)的用户具有重要价值。
unsloth-buddy 不仅仅是一组训练脚本,还配套了完整的部署和展示工具:
scripts/llamacpp.py,18718 字节)训练完成后,模型需要导出和部署。llamacpp.py 是项目的统一推理工具,支持:
python llama.cpp.py deploy 一键完成量化→测速→服务→WebUIpython scripts/llamacpp.py deploy --model outputs/model-f16.gguf --quant q4_k_m q8_0 --bench --serve
scripts/gaslamp_callback.py(17353 字节)为 TRL(Transformers Reinforcement Learning)训练框架提供实时训练监控回调,在终端内实时显示 loss 曲线、学习率、显存占用等关键指标,无需启动 TensorBoard 等额外工具。
templates/demo_llm_dark.html、templates/demo_vlm_crisp.html 等模板,可将训练好的模型包装成可分享的静态 HTML 对话界面,用户无需安装任何依赖,直接打开浏览器即可体验微调效果。这对于展示训练成果给非技术人员尤为有用。
安装方式:这不是一个 pip 包,而是一个 Agent 技能库。通过在 Claude Code 等 Agent 环境中激活 /unsloth-buddy 指令即可开始使用。
适合人群:
实际资源需求(以 Llama-3-8B 为例):
| 量化方式 | 最低显存 | 训练设备示例 |
|---|---|---|
| 4bit 量化 | 6GB VRAM | T4 (15GB), M3 MacBook Air |
| 8bit 量化 | 10GB VRAM | RTX 3060, M3 Pro MacBook Pro |
| FP16 全精度 | 16GB VRAM | A5000, RTX 3090 |
文档提供了非常友好的快速开始指南,甚至给出了"1分钟上手"的体验路径——用户只需描述自己的数据和目标,Agent 自动引导完成。
尽管 unsloth-buddy 大幅降低了微调门槛,但仍有几个现实挑战:
unsloth-buddy 的出现,反映了 2026 年 LLM 工具链的一个重要趋势:从"训练基础模型"到"微调专属模型"的民主化。随着 Unsloth、Axolotl、TRL 等工具的成熟,微调的硬件门槛已经从 A100($3/小时)降低到了消费级 GPU 甚至 MacBook。
从增长曲线来看,Unsloth 官方仓库已获得超过 60k stars,而基于 Unsloth 的 Agent 工具链(如 unsloth-buddy)才刚刚起步。这类工具的核心价值在于:将专业知识从"需要查阅大量文档"变成"用自然语言描述就能执行"。
unsloth-buddy 隶属于 Gaslamp AI 平台,该平台还有 openclaw 等相关项目,形成了一套从模型训练到部署的完整 Agent 生态。对于希望在私有数据上定制 AI 能力的团队,这是一条值得关注的技术路线。
总结:unsloth-buddy 是目前面向 AI Agent 的微调工具中,集成度最高、生态最完整的方案之一。它用对话式交互替代了传统的配置文件地狱,让"用自己的数据训练专属模型"这件事变得真正可及。如果你有专业领域数据、有 Claude Code 或 Gemini CLI,那么 30 分钟就能跑通第一个微调实验。