从零搭建检索系统:一堂打破RAG迷思的工程课

AI PM 编辑部 · 2025年07月27日 · 2 阅读 · AI/人工智能

正在加载视频...

视频章节

这是一堂从最基础的关键词搜索讲起,逐步走向向量搜索与混合检索的实战课程。Elastic 的 Philipp Krenn 用大量现场演示告诉你:RAG 的成败不在模型,而在你是否真正理解“检索”这件事。

从零搭建检索系统:一堂打破RAG迷思的工程课

这是一堂从最基础的关键词搜索讲起,逐步走向向量搜索与混合检索的实战课程。Elastic 的 Philipp Krenn 用大量现场演示告诉你:RAG 的成败不在模型,而在你是否真正理解“检索”这件事。

为什么RAG的问题,往往不在“G”而在“R”

在课程一开始,Philipp Krenn 就抛出一个略带调侃的判断:“I guess we're not over RAG yet…”。他的意思很明确:行业并没有真正解决 RAG(检索增强生成)里的检索问题,却已经急着讨论生成模型的效果。检索的本质,是在生成之前,为模型找到“足够好、足够相关、足够可控”的上下文,这件事远比接一个大模型 API 更难。

他用非常工程化的方式回顾了信息检索的历史:从最早的关键词搜索,到后来引入统计相关性的评分模型,再到今天大火的向量搜索。一个关键洞见在于,向量搜索并不是“替代”关键词搜索,而是回答了另一类问题——当用户无法准确说出关键词时,系统是否还能理解意图。这也解释了为什么很多 RAG 系统在 demo 阶段看起来很聪明,一旦进入真实数据和真实用户,就开始“答非所问”。检索做不好,生成只会把错误放大。

词法分析:最“无聊”,却最容易被忽视的基础

课程中最细致的一部分,反而是很多人以为早就“懂了”的关键词搜索。Philipp 从一个经典台词示例入手,现场演示什么是词法搜索(lexical search),并一步步拆解搜索引擎在写入阶段到底做了什么。他特别强调:分词(tokenization)、offset、position、stop words、stemming,这些都发生在索引写入时,而不是查询时。

“Okay, hardest problem of the day solved.”这句略带玩笑的总结,其实指向一个真实痛点:如果你不理解 analyzer 的行为,就不可能解释搜索结果。通过英语、德语、法语的对比示例,他展示了 Snowball stemmer 如何把不同形态的词规约到同一个词干,也说明了停用词(stop words)并非一定要移除——在短查询、法律文本等场景中,停用词本身可能就是关键信号。

这里最重要的工程经验是:检索系统的“智能”,很大一部分来自这些看似枯燥的预处理决策,而不是后面的复杂模型。

倒排索引与评分:为什么相关性分数不是百分比

在建立索引和 mapping 之后,Philipp 详细解释了倒排索引的结构:不是“文档里有什么词”,而是“每个词出现在哪些文档中”。正是这种结构,让搜索可以在海量数据中高效执行。他随后引出了同义词、短语查询、slop、fuzziness 等高级查询能力,并特别提醒 Levenshtein 距离带来的性能和语义陷阱——模糊匹配并不等于“更聪明”。

当话题进入评分(scoring)时,课程达到第一个技术高潮。他系统讲解了 TF-IDF 和 BM25,解释词频、逆文档频率、字段长度归一化如何共同作用,并直言不讳地指出一个常见误解:“Don’t treat scores as percentages.” 分数只是用于排序的相对值,不具备跨查询、跨系统的可比性。

这个部分的价值在于,它让你明白为什么很多搜索调优讨论如果脱离具体评分模型,几乎毫无意义。

向量、稀疏向量与混合搜索:现实系统的折中艺术

在展示了关键词搜索的边界之后,Philipp 自然过渡到稠密向量(dense vector)和 embedding 空间。他用非常直觉化的方式解释语义相似度:在向量空间中,意思相近的文本“距离更近”。但他并没有把向量搜索神话化,而是立刻指出其代价——可解释性下降、阈值难以设定、相关性可能漂移。

一个有意思的转折,是他展示稀疏向量(sparse vector)的表示方式:本质上仍然是 token,只是每个 token 带有权重。这让系统在一定程度上兼顾了语义能力和可解释性,但也带来了性能成本。在对比关键词搜索和向量搜索的结果时,他反复强调:不存在“更先进就一定更好”,只有“是否适合你的数据和用户”。

课程最后,他介绍了混合搜索、重排(reranking)以及 RRF(Reciprocal Rank Fusion)算法,并分享了真实系统中的组合策略。“That’s also the good thing about search,”他说,“you can combine signals.” 这句话几乎可以作为整堂课的总结。

总结

这堂课最大的价值,不在于教你某一个 API 或配置,而是重新校准你对“检索”的认知。RAG 并不是一个魔法公式,而是一套需要精心设计的工程系统:从分词到评分,从关键词到向量,再到混合与重排。对读者最大的启发是——在引入更大的模型之前,先把检索这块最朴素、也最关键的地基打牢。


关键词: 信息检索, RAG, BM25, 向量搜索, 混合搜索

事实核查备注: 视频标题:Information Retrieval from the Ground Up;演讲者:Philipp Krenn;涉及技术:关键词搜索、倒排索引、TF-IDF、BM25、Snowball Stemmer、Levenshtein 距离、Dense Vector、Sparse Vector、RRF;引用原话包括:"I guess we're not over RAG yet…"、"Okay, hardest problem of the day solved."、"Don’t treat scores as percentages."、"That’s also the good thing about search."