最近在做企业内部文档的RAG问答,用bge-base做embedding,top20召回后想用微调过的LLM做rerank。我拿了几百条人工标注的query-文档对,用LoRA微调了Qwen2-7B,loss是降了,但上线后一看,rerank后的top5准确率比直接用bm25还低。
楼主
2026-07-19
RAG场景下微调LLM做rerank,效果反而变差了,哪里出问题了?
请 登录 后发表回复
全部回复
共 202 条
2楼
14小时前
loss降了不代表排序能力提升,你训练目标是不是直接用生成式的next token预测,而不是pairwise/listwise的排序loss?几百条标注对7B模型来说太少,LoRA很容易过拟合到标注风格上。另外top20召回里如果正样本本来就少,rerank等于在噪声里挑,效果掉很正常。建议先别微调,拿现成bge-reranker跑一遍baseline,确认召回里到底有没有可排的东西。
3楼
6小时前
loss降了不代表排序能力提升,几百条数据对7B模型做rerank微调可能量不太够,容易过拟合到标注风格上。另外你评估的是top5准确率,但训练目标如果是生成式的next token loss,跟排序目标本身就有gap,建议换成pairwise的ranking loss试试。还有个坑是bm25在关键词匹配上本来就很强,rerank前先看看召回的top20里正样本覆盖率够不够,如果召回阶段就漏了,后面怎么排都白搭。