Skip to content
View original post on X: meng shaoX· 62/100AI score62/100

Beyond Naive RAG: nine retrieval experts outline practical advanced methods

AISummary

Meng Shao shares a Chinese summary of Beyond Naive RAG, a 2026 collection of talks edited by Hamel Husain, in which nine retrieval researchers argue that naive single-vector RAG is obsolete. The article says evaluation should come before optimization, retrieval remains necessary even with long context windows, and simplicity should be the default architecture.

Post on XView on X
meng shaoVerified on X
@shao__meng

https://x.com/i/article/2109468460107571200

杀死 2023 RAG 的,是更好的 RAG:9 位检索专家的前沿实战共识「Beyond Naive RAG」

Beyond Naive RAG: Practical Advanced Methods

这是 Hamel Husain(AI Evals 课程发起人)主编的一部演讲合集(2026-08),9 位作者均为一线检索研究者与工程实践者。全书围绕一个核心判断展开:2023 年那种“文档切块 → 单向量 embedding → 余弦相似度检索”的朴素 RAG 已经失效,但 RAG 本身(即“检索增强生成”)远未死亡,死的只是那一种简陋的实现方式。

https://hamel.dev/notes/llm/rag/beyond-naive-rag.pdf

Ben Clavié 在第一章给出了全书立意的类比:“因为 RAG 已死所以我们用更好的检索工具”,就像“因为有了 CSS 所以 HTML 已死”一样荒谬。 更精确的类比是:RAM 变大没有杀死硬盘,但 SSD 杀死了硬盘;杀死“2023 版 RAG”的,正是更好的 RAG。

三条贯穿全书的论证主线

1. 检索不可替代(第 1、6 章共同论证)

•长上下文 ≠ 检索的替代品。1M token 约等于 3MB 文本(一张旧软盘),对绝大多数企业知识库远远不够,且逐查询塞满上下文在成本上不可行。

•模型权重是冻结的,永远不知道你昨天的新文档。权重空间应留给“智能”而非“知识存储”。

•Chroma 的 Context Rot 研究(第 6 章)进一步从实证上补刀:上下文越长,模型越不可靠,这直接推翻了“大窗口万能论”。

2. 评估先于优化(第 2、7 章的核心告诫)

•BEIR/MTEB 等基准已进入几乎所有模型的训练数据(数据污染),不再是真正的 zero-shot;排行榜上 400+ 模型分数相差毫厘,选型信号微弱。

•没有自己的“黄金数据集”(真实查询 + 人工标注相关性),团队只会在新技术间盲跳。这是多数团队跳过的最关键一步。

3. 复杂性不是目的(第 7 章收束全书)

•精致(sophistication)≠ 复杂(complexity)。在穷尽简单方案之前上图数据库,是典型的过度工程。

各章内容概括

第 1 章:检索手段的谱系(Ben Clavié, Answer.AI)

单向量检索的根本缺陷:必须把整段文档压缩进一个约 1000 维的向量,必然丢失信息;且 embedding 模型的训练数据(如 Bing 查询)与你的领域数据(如私有代码库)分布不匹配。有效检索远不止一种,grep、wget、agentic search、BM25、ColBERT、web search、推理,最佳实践通常是组合使用。

第 2 章:RAG 时代的 IR 评估(Nandan Thakur,BEIR/FreshStack 作者)

本章是全书方法论上最重要的一章。核心论点:搜索的目标变了,评估指标也必须变。

•传统 IR(60 年 Cranfield 范式)的目标是“相关网页是否排到第一位”,对应 MRR/NDCG。

•RAG 时代的目标是“是否取回了 LLM 回答此问题所需的全部证据”,一个高度相关但不完整的检索集合,照样生成错误答案。

FreshStack(与 Databricks 合作)用三步流水线解决基准污染问题:GPT-4o 把 Stack Overflow 答案拆成原子事实"nuggets" → 多模型混合检索 → 逐 nugget 判定支持关系。由此定义三个互补指标:

关键发现:现有检索技术在这类真实任务上表现挣扎,没有任何模型在所有话题上最优,与 Oracle 上限差距巨大;部分流行专有模型甚至跑不过 BM25。维度权重应按产品需求设定,专利检索重召回,对比性问题重覆盖。

第 3 章:推理能力内置到检索(Orion Weller, JHU)

两个模型,分别对应检索的两个环节:

•Promptriever(bi-encoder,快):训练数据中引入“指令负例”,文档与查询相关但不满足指令(如“找一个用隐喻讲数据隐私的文档”),迫使模型把抽象指令编码进查询向量。成果:(1) 在 FollowIR 上成为首个指令遵循得分为正的 bi-encoder(此前所有模型给指令反而变差);(2) 泛化出“零样本超参数优化”,用自然语言(“要高召回,否则我丢工作”)直接调节检索行为,且对 10 种改写的标准差远小于关键词模型,证明理解的是意图而非字面。

•Rank1(reranker,慢但强):7B 模型,用 SFT 蒸馏 DeepSeek-R1 的推理链(无需 RL),在 BRIGHT 推理基准上以 1/10 的训练数据几乎翻倍基线;消融实验显示推理链本身贡献约 10 分。一个警示性故事:在 DL19/DL20 上初测分数反常地低,人工复判模型新发现的历史上从未被标注的文档后,Rank1 跃居第一,老基准(DL19 早于 BERT 诞生)已测不出新模型的能力。

第 4 章:后期交互模型(Antoine Chaffin, LightOn)

对单向量缺陷的架构级解法:

•Pooling 是原罪:把所有 token 向量压成一个向量是有损压缩。模型会按训练分布选择性记忆(影评语料训练出的模型只编码演员信息、丢弃剧情),换领域即失效。BM25 在 OOD 场景表现坚挺,恰恰因为它零压缩。

•Late interaction 的解法:不做 pooling,保留每个 token 的向量,用 MaxSim 打分(每个查询 token 取与所有文档 token 相似度的最大值,再求和)。不同概念(演员/剧情)各占各的 token 信号,互不干扰。加大单向量维度解决不了多概念挤进一个表示产生的信号冲突。

•实证:GTE-ModernColBERT 仅用 300 token 长度训练就拿下 LongEmbed SOTA;150M 参数的 Reason-ModernColBERT 在 BRIGHT 上超过 7B(45 倍大)模型;同骨干同数据的对照中 19.61 vs 单向量 12.31。

•额外红利:token 级匹配天然可解释,能定位最相关的子片段。落地障碍(存储成本、向量库支持、工具链)正被 PyLate、Vespa/Weaviate/LanceDB 支持和量化技术快速消解。未普及的原因主要是生态成熟度,不是技术不成熟。

第 5 章:多重表示(Bryan Bischof & Ayush Chaurasia)

概念上最具统摄力的一章:“地图不是疆域”,任何表示(embedding、索引)都只是数据的一张“地图”,而同一份疆域可以有许多张地图。

•术语祛魅:HyDE = 文档增强管道(LLM 把文档改写成用户会搜索的语言,生成新地图);Agentic RAG = 查询增强管道(判断“V60 filter”指产品还是餐厅);Rank fusion = 多阶段处理。

•IR 工程师的三项职责:预测用户意图 → 预生成多张地图 → 把意图路由到正确的地图。Agent 的最佳角色是路由器;路由规模小时用 LLM 当分类器即可,规模大时应训练专用分类器。

•一个常被忽视的工程事实:文档是活的。业务/世界事件会改变文档的相关语境,静态 embedding 会过期,系统架构必须支持检测变更、增量重建索引。

•Demo(semanticdotart 艺术品搜索)展示了同一幅作品建立文字描述、诗意描述、情绪关键词、图像内容等多个向量与关键词索引,查询按语义路由。

第 6 章:Context Rot(Kelly Hong, Chroma)

对 18 个前沿 LLM 的系统实验,逐条拆解“大窗口 = 强能力”的迷思:

1.语义匹配退化:NIAH(大海捞针)本质是词面匹配,现代模型近乎满分;但把任务改为语义等价改写后,性能随上下文变长显著下滑;真实用户问“海外扩张进展如何”时正是这种语义任务。

2.干扰项效应:加入与答案语义相似但错误的干扰项后,性能随长度和干扰项数量双重下降。金融/法律文档中仅年份、人名不同的模板化段落就是天然干扰项。失败模式因模型家族而异:Claude 倾向弃答,GPT 幻觉率最高(自信地给出干扰项内容)。

3.反直觉发现:needle 放在打乱的文章里比放在连贯文章里更容易被找到,模型并非按人类的线性结构方式处理上下文;经典的“U 形位置曲线”(首尾信息记得最牢)在其实验中未观察到,“把重要信息放首尾”这条流行建议并不可靠。

4.极简任务也退化:连复述重复词这种零推理任务都随长度掉点。

结论:把正确信息放进上下文只是必要条件,信息的呈现方式同样决定成败。实践建议:先用“短而精 vs 长而杂”两种上下文做对照,观察模型漏掉了什么;编码 Agent 场景用 orchestrator + 子 agent 架构,让每个子 agent 拿干净聚焦的上下文,只回传精华给主 agent。没有任何一个模型在全部长上下文任务上稳定最优。

第 7 章:你(大概率)不需要图数据库(Jo Kristian Bergum,25 年搜索老兵)

•先问要不要检索:有公司被复杂 RAG 管道折磨,一问文档总量,300 份。直接全塞上下文更简单、便宜、有效。

•GraphRAG ≠ 图数据库:知识图谱只是 (源实体, 关系, 目标实体) 三元组集合,CSV、JSON、Postgres 都能存;真正难的是用 LLM 持续维护其准确性(token 成本或领域专家成本)。图数据库只在需要低延迟图遍历、图大到 Postgres 撑不住、或多跳查询时才值得引入,早期 Facebook 用 MySQL 跑了巨型社交图。

•你的向量搜索里本来就藏着图:HNSW 近似最近邻算法本身就是图结构;基于聚类假设(相关文档的邻居也大概率相关)做“检索 → 重排选优 → 对优结果再做近邻检索”的两步法,就是图遍历,任何向量库都能实现。

进一步提炼:一份可执行的实践观

全书七讲可压缩为五条工程原则:

1.先建评估,再谈优化。黄金数据集 + 按产品目标加权的选择性指标(相关性/覆盖/多样性),是一切技术决策的前提;公开排行榜因污染只能作弱参考。

2.表示要多,不要赌一张完美地图。单向量有天花板,出路是多重表示 + 智能路由(第 5 章)、token 级多向量(第 4 章)、BM25 等经典方法的混合(第 1、4 章),BM25 至今仍是 OOD 场景的强硬基线。

3.把 LLM 的新能力下沉到检索层。指令可进入查询向量(Promptriever),推理链可进入重排(Rank1);检索质量因此可以搭上 LLM 进步的顺风车。

4.上下文是资产也是负债。塞满 ≠ 用好;Context Rot 说明检索(选出最小充分证据集)比以往任何时候都更重要。

5.简单性是默认选项。300 份文档就别建管道,CSV 能存图谱就别上图数据库;每次增加基础设施前,先用评估数据证明它值得。

一句话总结:RAG 的下一个阶段不是某个银弹技术,而是“评估驱动 + 多表示 + 推理增强 + 克制的架构”这套组合工程能力。

Source: meng shao · x.comPublished · added here