
Late-Interaction 模型在医学检索上超过所有 dense 模型并与闭源 embedding 持平

本文是一篇关于多向量(late interaction)检索模型微调的技术实践指南,作者以医疗领域为例,展示了如何在单张消费级 GPU 上、用数小时时间训练出自己的 LateOn 风格模型。文章先从问题切入:通用模型(如 Classic LateOn)在代码或医学等垂直领域往往不够用,LightOn 自己也曾为代码检索专门训练了 LateOn-Code。
作者指出,多数开源检索模型按短文本设计,自带截断长度(180/300/512 token),而真实业务文档往往长得多。作者在平均 941 token 的医学段落评测中发现,仅截断一项就可损失最多 0.24 NDCG@10,远大于模型间架构差异,因此自行训练、按自己数据设定文档长度非常必要。动手部分,作者逐步拆解了训练组件。
模型层面以 LightOn 的 LateOn 为起点,数据用 440 万医学问答对。关键技巧包括:把 GradCache 的 mini-batch 设为 16 以控制显存;scale=20.0 的 softmax 温度是复现 LateOn 的组成部分;不要照抄 dense 训练的 batch size 到 multi-vector 上。
训练参数上,作者用 lr=1e-4 linear schedule 1 epoch,medical-128 为 batch 128、46GB H100 约 9 小时,medical-256 增加至 256、AU 和 tok 相应翻倍、约 20 小时——两者质量相同,因此作者推荐小 batch 版本。他们原先用的 decay schedule 配 5e-5 太低,1 epoch 时还在 0.
69-0.70 NDCG@10 徘徊。评估用带 8 个 hard negative 的 InfoACC@10 很有效,训练集中 hard negatives 越多,模型效果越好。论文地址:https://arxiv.org/abs/2503.22267。


