做了几年开发,一直想搞懂 LoRA 微调到底是怎么回事。网上的教程要么默认你懂机器学习,要么只给一段代码,跑通了也不知道显存花在哪、文件存在哪、这一步到底算不算成功。所以我把自己从零走一遍的过程整理成了一本开源手册。
GitHub: https://github.com/qshine/llm-lora-tutorial 在线阅读: https://qshine.github.io/llm-lora-tutorial/
适合谁
不做算法、想从零学 LoRA 微调的开发者。后端、前端、客户端、数据开发都行,不需要 ML 背景。
你会亲手跑完的链路
QLoRA 微调 → 保存与重载 → BF16 合并 → vLLM 部署成 OpenAI 兼容 API → 本地调用与压测
- 硬件:一张 RTX 4090 ( 24 GB )
- 基座模型:Qwen3-4B-Instruct-2507
- 练习任务:用中文回答小学生的科学问题。选这个是因为对话风格鲜明,微调前后的变化一眼就能看出来
里面有什么
- 电子书:9 章正文 + 5 个附录,从概念、数据、租 GPU 到部署、评估、排错。支持中 / 英 / 日 / 韩切换
- 可直接运行的 Notebook:
LoraConfig、SFTTrainer、trainer.train()都直接摆出来,每格代码下面写清楚做什么、为什么、会看到什么。1 个 epoch 约 72 步 - 一份数据集:60 张事实卡 + 500 / 50 / 50 段训练、验证、测试对话,按主题隔离,字段含义有完整样例说明
- 训练到部署全链路:合并导出、vLLM 服务、挂载 adapter 、OpenAI SDK 流式调用、
vllm bench serve压测 - 测试守护:教程里的命令、附录代码和部署示例都和真实代码逐字比对,尽量避免「文档能看、代码跑不通」
书里的训练曲线、报错和排查过程都来自真实操作。
说在前面
- 数据集是合成草稿,事实和适读性还需要逐条核对
- 不保证微调一定优于写好提示词的基线,这本身也是书里想让大家自己验证的事
MIT 协议。第一次写这么长的东西,肯定有不少问题,欢迎拍砖、提 issue ,觉得有用的话给个 star 就更好了 🙏