bfloat16 sigmoid 打乱候选排序,修复后 nDCG 从 0.18 升至 0.68

tomaarsen · x · 2026-08-18

v6.0 中作者最想让人知道的修复:CrossEncoder.predict 现在会在激活函数前将 logits 上转型为 float32。原因是 sigmoid 在 bfloat16 下会饱和,把头部候选的分数压成相同值,导致排序随机化。修复后 NanoBEIR nDCG@10 从 0.1849 提升到 0.6795。该版本还直接测试了 51 个 checkpoint:29 个文本检索、22 个视觉文档检索,参数量从 17M 到 8.8B,覆盖 LateOn、GTE-ModernColBERT、mxbai-edge-colbert、LFM2-ColBERT、colbertv2.0、answerai-colbert-small、ColPali、ColQwen 等。

所属事件:Sentence Transformers v6.0 发布:晚交互多向量模型成一等公民(27 条相关)→

原文链接 →

「编程与Agent」频道最新

更多「编程与Agent」频道 AI 资讯 →