主题
2.10 模型微调与量化技术:专科深造与轻量化瘦身秘籍
培训员工可以让他更熟悉一种工作规范,压缩资料则可以减少存储占用。模型微调与量化分别处理类似的问题:微调通过训练调整行为,量化通过降低数值表示精度减少部分资源需求。它们解决的不是同一件事,也不能互相替代。
为什么需要微调?
预训练出厂的大模型(如通用开源模型 Llama 或 DeepSeek)就像一个精通琴棋书画的博学才子,但如果你让它为一家银行输出格式严丝合缝、完全没有多余废话的金融合规报表,它可能会忍不住跟你闲聊几句。
微调(SFT / 监督微调) 就是给它准备几千条“标准参考答案”,强行纠正它的表达习惯和输出格式:
三大微调流派说明
什么时候该用 RAG?什么时候该用微调?
记住这个口诀,作为初步判断,再根据评估结果决定:
“想让 AI 查最新知识、查私有资料 ➔ 用 RAG。”“想让 AI 改说话风格、按死规定输出特定格式 ➔ 用微调。”
| 对比维度 | RAG (检索增强生成) | 微调 (Fine-Tuning) |
|---|---|---|
| 日常生活比喻 | 开卷考试,随手翻看参考资料 | 闭卷考试前背熟特定解题模板与格式套路 |
| 适用场景 | 注入公司最新制度、实时新闻、海量 PDF | 调整任务行为与文风;严格格式还需程序校验 |
| 更新成本 | 通常低于重新训练,但仍需解析、建索引和验证 | 较高(数据更新后需要重新花算力训练) |
| 事实依据 | 提供可追溯依据,但仍可能检索或生成错误 | 较弱(依然存在概率性编造) |
什么是量化(Quantization)
量化可以类比按刻度记录测量值:原本保留较细的小数,改用较少的离散档位表示,并配合缩放参数近似恢复。这会减少存储与传输量,也会引入误差;不是简单把所有小数取整。
以 70B,即 700 亿参数为例,仅按权重估算:每个参数占 16 位时约为 140 GB,若理想化地按 4 位计算则约为 35 GB。这不包含量化元数据、运行缓冲区、KV Cache 和系统占用,不能直接把文件大小当成运行所需内存。
text
权重存储量的粗略估算 = 参数数量 × 每个参数位数 ÷ 8
7B × 16 位 ÷ 8 ≈ 14 GB
7B × 4 位 ÷ 8 ≈ 3.5 GB实际文件常采用混合精度,不同层或张量未必使用相同位数。因此,上面只是容量估算,不是任何具体模型文件的精确尺寸。
q4、q8 与 GGUF 分别表示什么
llama.cpp生态常见 Q4_K_M、Q8_0 等量化名称。数字提示主要的位宽档次,其余部分还涉及具体方案和混合精度策略。GGUF则是保存模型数据与元信息的文件格式,本身不等于“4 位量化”。
| 比较方向 | 可能带来的变化 | 不能直接推断 |
|---|---|---|
| 降低权重位数 | 通常减少权重占用 | 一定更快、质量完全不变 |
| 增大上下文 | 能容纳更多材料 | 内存占用不变 |
| 增加并发请求 | 能同时处理更多任务 | 单个请求仍同样快 |
| 更换推理后端 | 可能更好利用硬件 | 所有量化格式都兼容 |
选择前先看可用内存或显存,再用实际任务测试输出质量和速度。一个短对话能运行,不代表同一模型在长上下文或多用户请求下也稳定。
微调前,先确定问题是不是缺少训练
如果模型不知道公司新制度,应先提供资料或做检索;如果输出格式不稳定,可以先尝试清晰示例、结构化输出和程序校验。只有这些办法仍无法满足稳定需求,而且已有足够可靠的训练样本时,才值得评估微调。
微调的数据质量比单纯数量更重要。重复样本、错误标签和前后矛盾的规则,都可能被学进去。训练数据与测试数据应分开,不能把已经用于训练的题目再次当作独立验收。
全量微调、LoRA 与 QLoRA
全量微调调整模型的全部或大部分参数;LoRA冻结原有权重,训练较小的低秩矩阵;QLoRA结合量化的基础模型与适配器训练来降低资源需求。
可以把它们类比为重新修订整本手册、附加专门的修订页,以及在压缩版手册旁维护修订页。类比只帮助区分调整范围,实际训练发生在数值参数上。
怎样判断微调或量化有没有改善
建立一份固定评估集,包含常见任务、边界输入和模型应该拒绝猜测的问题。微调前后比较格式合格率、业务正确率和通用能力是否退化;量化前后还要比较内存、响应时间与长文本表现。
例如客服分类模型不应只在“退货”“换货”等典型句子上准确,还应处理包含多个诉求、错别字和未覆盖类别的输入。训练后在简单题上更整齐,并不代表复杂任务已经改善。
相关开源工具与官方平台
- Ollama 官方网站 —— 本地一键运行大模型工具
- llama.cpp 官方开源仓库 (GitHub) —— GGUF 格式的开山鼻祖
- Unsloth 开源微调平台 —— 提供微调与资源优化能力的工具,实际效果依配置而定
- Hugging Face PEFT 官方库 —— 官方维护的 LoRA 微调标准库