导航 RAG 架构全景:实践者指南

发布: (2026年2月11日 GMT+8 09:54)
9 分钟阅读
原文: Dev.to

Source: Dev.to

检索增强生成(RAG)概览

RAG 已从单一蓝图发展为多样化的架构生态系统,每种架构都针对特定的性能、可扩展性和准确性需求进行调优。选择合适的 RAG 模式对系统成功至关重要。本指南拆解了主要的 RAG 架构——它们的工作原理、适用场景、失效情况以及可考虑的替代方案。

1. Naive RAG

工作原理

  • 对用户查询进行嵌入。
  • 从向量数据库中检索相关片段。
  • 将检索到的片段与提示模板一起传递给 LLM,以实现基于事实的生成。

最佳使用场景

  • 原型设计或构建 MVP。
  • 领域定义明确且文档干净、结构化。
  • 简单性和低延迟是优先考虑的因素。

失效情况

  • 检索质量下降 → 上下文不相关导致幻觉。
  • 对多跳或复杂推理查询表现不佳。
  • 没有纠正过时或错误信息的机制。

可替代方案

  • Adaptive RAG:实现更智能的路由。
  • Corrective RAG:在准确性至关重要时进行自我批评式检索。

2. HyDE(Hypothetical Document Embeddings)

工作原理

  • 首先让 LLM 生成一个 假设答案
  • 将该假设答案进行嵌入,并用于检索,旨在匹配理想答案的“形状”。

最佳使用场景

  • 查询简短或含糊。
  • 查询与语料库之间存在词汇不匹配。
  • 标准查询嵌入导致召回率低。

失效情况

  • 初始生成可能出现幻觉,污染检索结果。
  • 增加一次额外的 LLM 调用,导致延迟上升。
  • 极度依赖假设生成的质量。

可替代方案

  • Hybrid RAG:结合词汇搜索解决词汇问题。
  • Multimodal RAG:如果查询本身是多模态的。

3. Corrective RAG(CRAG)

工作原理

  • 增加纠正步骤:对检索到的文档进行相关性/置信度打分。
  • 若置信度低,系统可在生成前触发网页搜索或使用其他来源。

最佳使用场景

  • 事实准确性至关重要(医疗、法律、金融)。
  • 知识库是动态的或部分不可靠。
  • 需要最大限度降低陈旧知识导致的幻觉。

失效情况

  • 由于打分 + 外部搜索,导致更高的延迟和复杂度。
  • 网页搜索会引入成本和不可预测性。
  • 打分器本身可能成为单点故障。

可替代方案

  • Graph RAG:适用于需要内置可验证性的结构化领域。
  • 对于更简单的需求,可使用调优良好的 Naive RAG 并进行强评估。

4. Graph RAG

工作原理

  • 使用知识图谱(从文档中抽取)代替或与向量数据库并行。
  • 检索时遍历实体之间的关系,实现多跳推理。

最佳使用场景

  • 领域充满关系(研究、欺诈检测、知识图谱)。
  • 查询需要多跳推理。
  • 检索路径的可解释性很重要。

失效情况

  • 图谱构建/维护的前期成本高。
  • 在广义语义搜索上可能不如向量检索表现。
  • 不适合叙事性或结构松散的文本。

可替代方案

  • Hybrid RAG:将图谱与向量搜索相结合。
  • 对于结构较弱的数据,可使用切分良好的 Naive RAG

5. Hybrid RAG

工作原理

  • 结合稠密向量搜索和稀疏(关键词)词汇搜索。
  • 在生成前合并结果(通常使用 Reciprocal Rank Fusion)。

最佳使用场景

  • 需要同时具备召回率(词汇)和语义理解(向量)。
  • 面临词汇不匹配问题。
  • 语料库中既有精确关键词又有概念性内容。

失效情况

  • 调优和平衡更为复杂。
  • 双重检索导致计算成本上升。
  • 合并逻辑需要仔细校准。

可替代方案

  • 如果 ke(未完)… (此处原文截断,后续内容请参照原始文档继续翻译)

Source:

yword search 是主要需求,在全面混合之前先使用 query expansionBM25

6. Adaptive RAG

工作原理

  • 基于 LLM 的编排器会对查询复杂度进行分类并相应地调整检索方式:
    • 简单查询 → 直接回答。
    • 复杂查询 → 完整的 RAG。
    • 多跳查询 → 可能触发网页搜索。

适用场景

  • 查询复杂度差异很大。
  • 成本/延迟优化至关重要。
  • 你已经拥有明确的查询类型分类体系。

局限

  • 路由误分类会导致性能下降。
  • 增加系统复杂度。
  • 引入新的单点故障。

可替代方案

  • 如果查询复杂度相对统一,优化良好的 NaiveHybrid RAG 可能已经足够。

7. Multimodal RAG

工作原理

  • 将检索扩展到多模态(文本、图像、音频)。
  • 多模态查询检索多模态块,随后多模态 LLM 生成答案。

适用场景

  • 知识库和查询本身就是多模态的(带图示的手册、医学影像、产品目录)。
  • 答案需要跨模态综合。

局限

  • 对齐、切块和融合的复杂度高。
  • 成本和延迟显著提升。
  • 工具链仍处于早期阶段。

可替代方案

  • 对于以文本为主的任务,可使用 text RAG,并配合独立的图像描述或目标检测流水线。

8. Agentic RAG

工作原理

  • 将 RAG 嵌入到代理框架中。
  • 具备规划(如 ReAct)和记忆的代理将 RAG 作为工具,用于跨来源(本地、云端、通过 MCP 服务器的网页)进行多步骤研究。

适用场景

  • 任务需要自主的多步骤研究(尽职调查、竞争分析)。
  • 问题范围广泛,不能局限于单一知识库。
  • 需要跨会话的长期记忆。

局限

  • 复杂度最高且不可预测性强。
  • 容易出现目标漂移或无限循环。
  • 运营成本极高。

可替代方案

  • 对于确定性的知识查询,使用更简单的 RAG 更可靠且成本更低。
  • Agentic RAG 仅在开放式探索时才使用。

结论:从简开始,审慎扩展

  • 没有一种适用于所有场景的 RAG。最佳选择取决于你对准确性、延迟、成本和复杂性的具体需求。
  • 从 Naive RAG 开始,并投入数据准备和评估工作。
  • 确定你的瓶颈:
    • 检索质量 → HyDE / Hybrid
    • 推理 → Graph
    • 事实性 → Corrective
  • 仅在出现明确的生产需求时,才转向 AdaptiveAgentic

满足你 accuracy‑latency‑cost 权衡的最简 RAG 通常是最可持续的选择。

准确性、延迟和成本约束通常是正确的选择。

进一步阅读

  • Lewis et al., Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks
  • Gao et al., Precise Zero-Shot Dense Retrieval without Relevance Labels
  • Sarthi et al., Corrective Retrieval Augmented Generation
  • Wu et al., Knowledge Graph-Augmented Language Models for Knowledge-Grounded Dialogue
0 浏览
Back to Blog

相关文章

阅读更多 »