RAG 阈值固定在了绝对分值上,而 Embedding 升级却悄然改变了分布
· 阅读需 10 分钟
一个 RAG 流水线在发布时设置了 0.4 的重排序器(reranker)分数阈值。任何低于该分数的片段都会从提示词(prompt)中被剔除。半年后,一次常规的索引重建将嵌入模型(embedding model)更换为同系列的一个更新版本——变更日志称这是一次透明的升级。两天后,回答的相关性下降了 6%。团队将责任归咎于 LLM,进行了模型对比测试(bake-off),却发现没有任何候选模型能挽回损失,结果花了一个季度去追踪一个根本不存在于他们所对比模型中的回归问题。
回归问题就出在门控(gate)环节。重排序器——未做变动,相同的模型版本(checkpoint),相同的权重——现在正在对一组不同的候选集进行评分。新的嵌入模型将不同的数据块(chunks)拉入前 50 名,重排序器根据自身的校准对它们给出了更低的分数,而 0.4 的门控剔除的候选者比前一周增加了 37%。0.4 这个数字没变,但 0.4 所代表的含义变了。
