ARTICLE · 1089721
AI科普 | 什么是"多模态检索与重排(Rerank)"?掌握让AI更聪明的核心技巧
你有没有遇到过这种情况:问 AI"我们公司去年那份合同里怎么写的",它答得头头是道,但你一查,全是编的。 问题往往不在模型笨,而在它压根没找到对的资料。今天讲的就是让 AI "找得准"的那套机制——多模态检索与重排(Rerank)。
一、它是什么:搜索的"两轮面试"
先说检索。模型本身记不住你公司的文档,所以要把文档切成小段、变成向量存起来;你提问时,把问题也变成向量,在库里找"方向最接近"的那些段落。这一步叫向量检索(还记得我们前面讲过的 Embedding 吗)。
但向量检索有个致命弱点:它只比"像不像",不比"对不对"。它跑得飞快,可以从一百万段里挑出五十段,但这五十段里真正有用的可能只有三段。
于是有了第二轮——重排(Rerank)。重排模型会把"问题"和"候选段落"两句话一起读进去,逐对打分,重新排序,只留最相关的三五段喂给大模型。
用一个比喻:检索是简历初筛,重排是面试。初筛看关键词、看学校,一秒扫一百份;面试得一个人一个人聊,慢,但准。好的 RAG 系统从不只做一轮。
二、为什么重要:大模型最怕"喂错料"
大模型有个性格:你给它什么,它就信什么。喂对了资料,它引经据典;喂错了资料,它会非常自信地顺着错误资料编下去——这就是幻觉最常见的来源之一。
所以业界有句话:RAG 的上限不取决于生成模型,而取决于检索质量。你把 GPT-6 换成 Claude Opus,不如把召回率从 60% 提到 90% 来得实在。
还有一个现实原因:上下文窗口是花钱的。塞五十段进去,不但贵,而且中间那段容易被模型"忽略"(长上下文的"中间迷失"效应)。重排后只留五段,成本降了,准确率反而升了。
三、核心原理:双塔与交叉编码器
两种架构,一张图就能记住:
① 双塔(Bi-Encoder)—— 检索用 问题和文档各走各的,分别压成一个向量,最后算个余弦相似度。好处是文档向量可以提前算好存着,亿级库也能毫秒响应;代价是两句之间没有真正"见面",细粒度语义抓不住。
② 交叉编码器(Cross-Encoder)—— 重排用 把问题和文档拼成一条输入送进模型,让它们在每一层注意力里充分交互,直接输出一个相关性分数。准确得多,但没法预先计算——每一对都得现算。所以只能用来给几十条候选打分,不能用来扫全库。
这就是那个经典分工:双塔负责"从百万到五十",交叉编码器负责"从五十到五"。
再说"多模态"。以前检索的对象是文字,现在是图片、表格、截图、图纸混在一起。做法是把所有模态压到同一个向量空间里——一段文字、一张架构图、一张设备铭牌照片,都能被同一个问题"问"出来。今天企业里 70% 的知识其实藏在 PDF 的图表中,纯文字检索根本抓不到。
四、实际应用:它藏在你用的每个 AI 产品里
① 企业知识库与客服。用户问"报销流程怎么走",检索拉回 50 条包含"报销"的片段(其中大半是差旅标准、发票规定),重排把"流程步骤"那三条顶上来。这才是客服机器人能不能用的分水岭。
② 工业与轨交的设备问答。检修师傅拍一张继电器照片问"这个型号上次出过什么故障",多模态检索同时比对图像特征和历史工单文本。前面我们讲过的那些轨交 AI 案例——从货车封条识别到接触网预测性维护——底层都有这套"先找相似、再精确判断"的逻辑。
③ 代码助手。在整个仓库里找相关文件、再重排出真正要改的那几个,比把整个仓库塞进上下文有效得多。
联系一下今天的榜单新闻:现在各家比的不只是模型智商,还有单位成本下能喂进去多少高质量上下文。检索做得好,同样的模型能干出更好的活——这也是为什么这几周大家都在卷"推理侧成本"(谷歌 TPU 跑 Kimi 快 57%、曙光 8000 把 PUE 压到 1.04)。
五、三个常见误区
误区一:只做向量检索,不做重排。省钱省事,但你会发现"明明库里有,它就是答不对"。
误区二:切分太粗。整篇文档塞进去,向量被"平均"掉,什么都像又什么都不像。按语义切、保留标题层级,效果差别巨大。
误区三:只看召回率。真正该盯的是端到端答案正确率——检索指标好看,答案错了,等于白做。
一句话记住 检索决定"能不能找到",重排决定"找到的是不是它"。大模型负责说,但说得好不好,取决于前面这两步递到它手上的那几段材料。
— AI 科普 · 每天搞懂一个技术点 —