为1000万文档设计零幻觉RAG管道的方案
@adxtyahq “design a RAG pipeline for 10M docs with zero hallucination” apparent…
摘要
针对1000万文档规模,设计了一个零幻觉RAG管道,包含文档摄入与标准化(去重、格式统一、元数据提取、版本历史)、混合检索(BM25处理精确匹配、embeddings捕捉语义)、ANN检索与重排序、来源置信度评分(基于新鲜度、可信度、重叠度、检索一致性)、约束生成(仅使用检索上下文)、引用支撑回复、幻觉回退层(低置信度返回“未找到足够证据”)、持续评估(对抗性查询、召回率基准测试、幻觉测试)、缓存与记忆层、全面可观测性(追踪检索路径、片段排名、token归因)。强调对1000万文档,检索质量比前沿模型更重要。
“为1000万文档设计一个零幻觉的RAG管道”
据说这是Google L5面试中的一道题。我在网上某个地方看到的,老实说,这比大多数经典分布式系统问题要更有趣得多。
- 摄入 + 标准化文档
- 去重、统一格式、提取元数据、维护版本历史
- 混合检索(BM25 + embeddings)
- BM25处理精确关键词匹配,embeddings捕捉语义含义
- 仅靠语义搜索在超大规模下通常难以保证精度
- ANN检索 + 重排序
- ANN(近似最近邻)快速从数百万文档中拉取候选片段
- 然后通过重排序步骤,深入比较查询与检索到的片段,提升相关性
- 来源置信度评分
- 每个检索到的片段根据新鲜度、可信度、重叠度和检索一致性进行评分
- 低置信度的上下文绝不应严重影响生成结果
- 约束生成
- 模型只能使用检索到的上下文来回答(不得在检索上下文之外编造任何内容)
- 引用支撑的回复
- 每个主要主张都链接回具体的片段、文档或时间戳
- 幻觉回退层
- 如果检索置信度低于阈值:返回“未找到足够证据”
- 持续评估
- 持续运行对抗性查询、检索召回率基准测试和幻觉测试
- 缓存 + 记忆层
- 缓存高频企业查询和检索路径(改善延迟和输出)
- 全面可观测性
- 追踪检索路径、片段排名、token归因和故障点
另外,对于1000万文档,检索质量比前沿模型本身更重要。
译自 X · AI 高热 · 录于 二〇二六年五月二十二日