兄弟们,微调模型这事,看着简单,实际坑多。我玩了几个开源模型(LLaMA、Qwen、ChatGLM)的LoRA和全量微调,踩了无数雷,今天分享点干货。
**1. 数据质量 > 数据量**
别迷信“百万级数据”,脏数据教你做人。我试过30万条中文QA,跑出来幻觉满天飞。后来只留了5000条高质量、带格式校验的样本,loss直接降0.2。记住:清洗、去重、人工抽检是底线。
**2. 参数调优别乱开**
LoRA里`r`和`alpha`不是越大越好。我一般`r=8`起步,任务简单就4,复杂才16。学习率从1e-4开始,用cosine衰减。batch size显卡受限就gradient accumulation,但累积步数别超8,否则梯度漂移。
**3. 部署别忘量化**
微调完模型,推理速度是爹。我习惯用bitsandbytes做4bit量化,显存省70%+,精度损失几乎不可感。配合vLLM或TGI部署,吞吐量翻倍。
**4. 验证集设计**
别只盯着loss。我备一个固定prompt集,手动打分,尤其看边界案例(比如数学推理、长文本)。微调后过拟合?用early stopping,patience设3轮。
最后问个问题:你们微调时,遇到过最诡异的bug是什么?我上次是tokenizer没对齐,输出全是乱码,排查了一整天。评论区见! |