直接回答:选型先看三件事:语言与领域匹配(中文检索选 bge、text-embedding 系列的中文优化版本,通用榜单分数不能跨语言外推)、向量维度与成本(维度越高存储与检索越贵,1024 维通常是性价比甜点,部分模型支持 Matryoshka 截断降维)、部署形态(API 省事但有数据出域与稳定性问题,自建要考虑推理成本)。最终在自己的数据上建评测集实测召回率,榜单只做初筛。
展开解析:评测方法:从真实检索日志采样 query,人工或半自动标注相关文档,算 Recall@10 与 nDCG;一定要包含难负例(字面相近但无关),只测简单正负例区分不出模型差异。微调的触发条件:领域术语密集(医疗、法律、芯片)且通用模型召回明显不足;或 query 与文档语言风格差异大(口语问、公文答)。微调用对比学习,核心是难负例挖掘——同 batch 随机负例太简单,要用 BM25 或初版向量召回的 top-k 中剔除正例当难负例。数据量几千到几万对即可见效。注意微调后要重刷全库向量,新旧向量不可混用,切换期需要双索引灰度。
追问方向:query 与文档该用不同模型编码吗?多语言混合检索怎么处理?
(约 450 字)