正文

分类:RAG / 检索系统 / 混合检索 / Rerank / 面试准备

这篇文章在讲什么

这篇本质上是在拆一个 RAG 检索链路的工程实现,重点不是讲概念,而是讲:

一个 retrieval 函数从接到 query,到返回最终结果,中间到底做了哪些步骤。

对应的面试场景也很典型:

核心主线

文章强调,面试分两层:

  1. 知道概念比如知道向量检索、BM25、RRF、Cross-Encoder rerank
  1. 真的做过工程实现比如你能不能把 retrieval 流程拆开讲清楚:

后者才是面试官真正想追问的地方。

retrieval 函数的典型流程

按文章里的结构,可以概括成这几步:

  1. 构建检索请求
    • 输入:query、知识库 ID、阈值、分页参数等
    • 输出:统一请求对象
  1. 执行混合检索
    • 向量检索 + BM25 同时跑
    • 再做结果融合
  1. 结果融合
    • 文中点名会被问到 RRF 或加权求和
    • 重点不是背名词,而是能解释为什么这么合并
  1. Rerank 精排
    • 对候选结果进一步排序
    • 面试里会被追问:是不是所有结果都 rerank?Top 100 全部过 Cross-Encoder 会不会太慢?
  1. 返回最终 TopK
    • 输出最相关文档片段
    • 通常还会带分数、来源等元信息

这篇对你的价值

如果你是做面试准备

这篇的价值很高,因为它不是泛泛聊“RAG 架构”,而是在补 工程细节表达能力

你后面讲项目时,最好别只说:

而要能继续展开:

如果你是做项目实现

它提醒你:

RAG 里最容易被说得轻描淡写的地方,恰恰是最该落到代码实现的地方。

比如:

这些都是“会不会做”的分水岭。

你可以怎么吸收

面试表达模板

你可以把这类项目讲成:

这样一讲,就明显比“我用了混合检索和 rerank”更像真的做过。

适合归到哪个方向

我会把它归到:

不是偏论文理论,更偏工程表达与项目答辩。

后续可继续补的东西

如果你要,我下一步还能继续补两种内容:

  1. 面试背诵版:整理成 1~2 分钟能直接讲的口语化答案
  1. 流程图版:画一张 retrieval 从 query 到 topK 返回的流程图