RAG 2.0 深入解读
本文从 RAG 2.0 面临的主要挑战和部分关键技术来展开叙事,还包括了 RAG 的技术升级和关键技术等。
一、Introduction
过去一年可谓是 RAG 元年,检索增强生成技术迅速发展与深刻变革,其创新与应用已深刻重塑了大模型落地的技术范式。站在 2025 年,RAG 不仅突破了早期文本处理的局限,更通过多模态融合、混合检索优化和语义鸿沟跨越等突破,开始在各个行业落地。如果把 2024 之前的 RAG 称为 RAG 1.0,那目前已进入 RAG 2.0 时代。
一个显着的进步是长上下文窗口,这一功能引发了争议,但到年中逐渐平息。很多人觉得长上下窗口就够了,传统的检索和 RAG 会被取代。此外,LLMOps 等架构的成熟使企业和个人能够使用矢量数据库、嵌入/重新排名模型、分块工具、Multimodal 技术的快速发展。RAG 方面的 Paper 每周达到几十篇甚至更多。可以说,RAG 经历了野蛮快速生长的 RAG,从 1.0 超快速的进入了 2.0 时代。
RAG 越来越多的应用在企业和生产场景,但是仍面临很多的技术挑战,本文我们从 RAG 2.0 面临的主要挑战和部分关键技术来展开叙事。首先快速过一下 RAG 2.0 的主要问题:
多模态与复杂任务扩展
- 多模态支持不足:当前的 RAG 技术主要针对文本数据,但在处理图像、视频等多模态数据时仍面临挑战。例如,如何有效检索和利用多模态信息仍是一个开放性问题。现有 LLMOps 解决方案大多限于纯文本场景。PDF、PPT 或文本与图像结合的文档无法充分发挥其商业潜力。这些类型的文档通常构成企业数据中的大多数。
- 复杂推理任务:尽管 RAG 通过检索外部知识增强了模型的推理能力,但在处理多跳推理或复杂逻辑任务时,其性能仍有待提升。
检索质量与噪声问题
- 检索精度不足:RAG 的性能高度依赖于检索到的文档质量。如果检索到的文档与查询不相关或包含噪声信息,会导致生成结果不准确甚至错误。
- Semantic GAP:RAG 的核心在于搜索功能。只有能够根据用户的查询“搜索”答案时,它才能发挥作用。然而,这一先决条件往往无法满足,因为查询模糊或含糊,缺乏明确的意图,或者“多跳”问题需要从多个子问题中综合而来。在这种情况下,提出的问题和检索到的答案之间存在显著的语义差距,这使得传统的搜索方法无效。
- 噪声数据的影响:文档中的噪声信息可能混淆模型的推理路径,导致生成内容出现偏差。例如,过时或不准确的信息会误导模型,降低生成结果的可信度。
- 召回率低:在某些情况下,RAG 可能无法检索到所有相关文档,导致生成模型缺乏足够的背景信息来构造完整的答案。比如,纯向量数据库导致召回率和命中率偏低:单纯依赖向量数据库会导致召回率和命中率偏低,阻碍有效的现实问答。这是因为向量表示无法精确地表示准确的信息,并且在检索过程中会造成语义损失。
生成过程中的幻觉与冗余
- 幻觉问题:尽管 RAG 通过检索外部知识减少了模型生成幻觉的概率,但在检索信息不足或相关性较低时,模型仍可能生成虚构或不准确的内容。
- 冗余与重复:当检索到的文档包含相似信息时,生成内容可能出现冗余或重复,影响回答的质量和简洁性。
计算资源与效率问题
- 计算资源消耗:RAG 需要额外的计算资源来支持检索机制和数据库维护,如向量化模型和向量知识库的构建与更新。
- 推理延迟:由于增加了检索步骤,RAG 的推理时间可能比传统 LLM 更长,尤其是在处理复杂查询时。
- 实时性要求:RAG 需要实时检索最新信息,但知识库的更新频率和检索效率可能无法满足高实时性需求。
安全与隐私问题
- 数据安全:RAG 需要访问外部知识库,这可能涉及敏感数据。如何确保数据的安全性和隐私性是一个重要挑战。
- 对抗性攻击:RAG 系统可能受到对抗性数据注入或上下文冲突等攻击,导致生成内容被操纵或误导
奖励函数与训练机制优化
- 奖励函数设计:当前的 RAG 系统通常采用基于结果的奖励函数,但在复杂任务场景中,这种设计可能无法捕捉细微差异,影响模型性能。
- 训练数据依赖:RAG 的训练需要高质量的交互数据,但获取和标注这些数据可能成本高昂且耗时.
二、技术范式的升级
RAG 从最初概念诞生到现在,架构经历了三个阶段演化:基础检索生成(Naive RAG)→ 检索全流程优化(Advanced RAG)→ 具备反思能力的模块化系统(Modular RAG)。其中模块化架构通过 LLM 的递归调用实现动态检索决策,例如让模型自主判断何时触发检索或修正答案,形成类 Agent 的交互范式。具体可以看下图,细节在此不表,重点关注核心技术。
其实不管哪种范式,其本质都是搜索 + LLM 的融合,所有核心技术的其实都是搜索和大模型的技术的变革。

三、关键技术
3.1 检索技术
3.1.1 混合搜索
前面提到过目前 RAG 的 Retrieval 存在一些弊端,比如召回率低,准确率低,噪声大,存在冗余查询,效率和鲁棒性差等。因此我们需要 Hybrid Search。目前比较通用的混合搜索是三路混合检索:全文搜索 with BM25 + 稠密向量(语义匹配) + **稀疏向量(关键词增强)。**首先我们先简单介绍一下这集中检索方式:
全文索引
常使用倒排索引(Inverted Index)等技术,将文档中的每个单词映射到包含该单词的文档列表,从而实现高效的查询。查询速度快,适合精确匹配。支持复杂的查询语法(如布尔查询、通配符查询)。缺点是无法理解语义,仅依赖字面匹配。对同义词、语义相似性等处理能力有限,当然这可以通过归一化等预处理来解决。相关性排序,常用算法为BM25 算法,基于词频、文档长度和逆文档频率的综合评分。
BM25(Best Matching 25)是一种基于概率模型的文档相关性评分算法,广泛用于全文搜索引擎中,用于衡量查询(Query)与文档(Document)之间的匹配程度。它是传统 TF-IDF 算法的改进版本,尤其在处理文档长度和词频分布上表现更优。BM25 通过结合词频、逆文档频率和文档长度归一化,提供了一种高效评估文档与查询相关性的方法,具有高效、灵活和鲁棒的特点。BM25 因其简洁性和高效性,至今仍是文本检索的基石技术,尤其在需要快速响应和可解释性的场景中不可替代。
Sparse vector search
稀疏检索是一种基于稀疏向量的搜索技术,通常用于传统的信息检索任务。稀疏向量是指向量中大部分元素为零,只有少数元素非零。使用词袋模型(Bag of Words, BoW)或 TF-IDF 等方法将文本表示为稀疏向量,然后通过计算向量之间的相似度(如点积)来检索相关文档。主要使用在传统文本检索(如搜索引擎)。计算效率高,适合大规模数据集,但是无法理解语义。
稀疏向量难以替代全文搜索:稀疏向量旨在替代全文搜索,其方法是使用标准预训练模型消除冗余词并添加扩展词,从而得到固定维度(例如 30,000 或 100,000 维)的稀疏向量输出。这种方法在一般查询任务上表现良好;但是,许多用户查询关键字可能不存在于用于生成稀疏向量的预训练模型中,例如特定的机器模型、手册和专业术语。因此,虽然稀疏向量和全文搜索都服务于精确召回的目的,但它们各有千秋,无法互相替代。
Vector Search
Vector search 是一种基于向量空间模型的搜索技术,将数据(如文本、图像、音频)转换为高维向量(通常是稠密向量),并通过计算向量之间的相似度(如余弦相似度或欧氏距离)来找到最相关的结果。利用机器学习模型(如深度学习)将数据映射到向量空间,语义相近的数据在向量空间中距离较近。主要应用场景是语义搜索(Semantic Search):理解查询的语义,而不仅仅是关键词匹配。能够捕捉语义信息,支持模糊匹配。适合处理非结构化数据(如文本、图像)。但是需要预训练模型生成向量,计算复杂度较高。对硬件资源(如 GPU)要求较高。

采用多种召回方法可以为 RAG 带来更好的结果。具体来说,将向量搜索、稀疏向量搜索和全文搜索结合起来可以实现最佳召回率。这很容易理解,因为向量可以表示语义;一个句子甚至整篇文章都可以封装在一个向量中。本质上,向量传达了文本的“含义”,表示其与上下文窗口内其他文本共现的压缩概率。因此,向量无法精确表示查询。例如,如果用户问:“我们公司 2024 年 3 月的财务计划包括哪些组合?”结果可能会返回来自其他时间段的数据或不相关的主题,例如运营计划或营销管理。相比之下,全文搜索和稀疏向量主要表达精确的语义。因此,将这些方法结合起来可以满足我们日常对语义理解和精度的需求。

下图显示了使用 Infinity 在公共基准数据集上进行评估的结果,比较了单向召回方法(向量、稀疏向量、全文搜索)、双向召回和三向召回。纵轴表示排序质量,很明显三向召回取得了最佳结果,充分验证了 BlendedRAG 的效果。

目前的混合搜索架构中,不同的数据存储和检索大都是通过异构数据库和存储介质来实现的,这会带来效率和精准度的问题,因此同时支持多种检索的数据库显得尤为重要,但是有较大挑战,目前市面上实现此类功能的数据库有 Milvus(支持多模态向量+标量过滤) , Weaviate(内置混合搜索)。
3.1.2 DPR(Dense Passage Retrieval)
在 RAG(Retrieval-Augmented Generation,检索增强生成)系统中,DPR(Dense Passage Retrieval,稠密段落检索)是检索模块的核心技术之一。DPR 通过使用密集向量表示来检索与查询最相关的文档或段落,是 RAG 系统的重要基础。由 Facebook AI Rese...
未能定位到原文的划线
企业级Agent工作流编排项目PaiFlow
Vibe Coding版本的PaiAgent
派聪明RAG AI知识库Java版本+Go版本
微服务 PmHub、技术派、MYDB
求职派JobClaw(OpenClaw/Hermes架构
PaiCLI(类似Claude Code的Agent
派简历(代码已完成)
等实战项目。
1. 微信扫右侧的优惠券加入知识星球
2. 解锁星球的实战项目教程和源码: 项目源码+教程获取
真诚点赞 诚不我欺
回复