Apple Silicon 微调 0.5B 模型:LoRA 与 KV cache 量化实测
独立研究者在 M4 Mac mini 上用 LoRA 微调 Qwen2.5-0.5B-Instruct 完成结构化抽取,…
一位独立研究者近日发布了一项可完全复现的案例研究:在 Apple M4 Mac mini 上使用 LoRA 对 Qwen2.5-0.5B-Instruct 进行微调,用于从移动应用评论中抽取严格的四字段 JSON 对象,并在量化部署阶段系统测试了 KV cache 量化对模型精度的影响。
研究设定与微调方法
任务被定义为闭词汇结构化抽取,需要从非结构化评论中同时给出情感倾向、受限 topic 集合、价格提及标志以及 1–5 隐含评分。基座模型选用通义团队的 Qwen2.5-0.5B-Instruct,参数量控制在 10 亿以下。微调采用低秩适配(LoRA)方法,训练过程完全跑在 M4 Mac mini 上,通过 Metal Performance Shaders(MPS)后端以 32 位精度完成。
由于 4 位 bitsandbytes 量化仅支持 CUDA,作者明确指出该配置偏离了标准 QLoRA 流程,因此无法产出对应的量化恢复对照组,这一点被作为研究局限在论文中显式声明而非掩盖。评估协议也刻意保持完全确定性:不依赖任何模型裁判,仅做解析与字段对比。
微调带来的精度变化
在 200 条样本的保留测试集上,模型未加权总分从 62.3% 提升至 76.6%,绝对增益为 +14.2 个百分点。其中闭词汇 topic 字段提升最为显著,从 26.1% 上升到 73.5%,说明 LoRA 在受限集合上的判别能力增益最大。整体结果显示,小模型在明确结构化目标下仍有可观提升空间。
量化部署中的 KV cache 表现
微调完成后,模型权重以 4 位量化形式通过 Ollama 提供服务。研究者借鉴低位推理文献中的方法,从四个维度做了剖析:峰值显存分解、KV cache 量化容忍度、显存带宽吞吐上限以及每 token 能耗。
最值得关注的结论来自 KV cache 量化测试:
- 8 位 KV cache 几乎无损:总分从 77.95% 仅微降至 77.02%;
- 4 位 KV cache 触发定性坍塌:总分骤降至 0.38%,合法 JSON 解析率只剩 10.5%。
这种从「近无损」到「几近崩溃」的剧烈跳变,提示在该类小模型的结构化抽取场景中,KV cache 不宜激进量化至 4 位。
局限与开放资源
作者也坦率讨论了四个抽取字段中有三个存在「标签循环性」(label circularity)问题——即评估标签与生成内容高度相关,可能放大或扭曲指标,从而限制了部分结论的解读力度。作为可复现研究的一部分,作者同时开源了全部代码、数据划分、模型产物以及原始测量数据,论文 PDF 已在发布页面提供下载。
