最近在做RAG项目,想对base模型(Qwen2-7B)做指令微调,让它更擅长从检索到的文档里提取答案。我用了大概5000条自己标注的“文档片段+问题+标准答案”数据,LoRA跑了一轮。结果上线测试,发现模型对于检索到的长文档,反而经常忽略关键细节,回答得更笼统了,甚至有时候会自己瞎编。是不是我数据构造有问题?或者说RAG本来就不该微调生成模型?有同样踩坑的大佬能指点一下吗?
最近在做RAG项目,想对base模型(Qwen2-7B)做指令微调,让它更擅长从检索到的文档里提取答案。我用了大概5000条自己标注的“文档片段+问题+标准答案”数据,LoRA跑了一轮。结果上线测试,发现模型对于检索到的长文档,反而经常忽略关键细节,回答得更笼统了,甚至有时候会自己瞎编。是不是我数据构造有问题?或者说RAG本来就不该微调生成模型?有同样踩坑的大佬能指点一下吗?
5000条数据跑LoRA一轮,量其实不算小,但关键得看数据里“忽略文档也能答对”的比例有多高。如果很多问题的答案模型靠常识就能蒙对,它就会学到“不用仔细看文档”这个捷径,上线自然变笼统。我建议先做个消融:把检索文档换成随机无关内容,看模型答对率掉多少——掉得少说明它根本没学会依赖上下文。另外RAG微调不是不能做,但更稳的路线是只微调“引用和抽取”这种格式行为,知识注入还是交给检索本身。