一文搞懂 RAG,手把手搭智能问答助手

一文搞懂RAG:AI大模型的得力助手 在人工智能快速发展的当下,大模型虽强大却存在知识更新滞后、易产生“幻觉”等问题。检索增强生成(RAG)技术应运而生,成为解决这些痛点的关键。本文面向AI初学者,从基础概念、工作原理、应用场景到实战步骤,深入浅出地剖析RAG,助你快速掌握这一AI领域的前沿技术,揭开其助力大模型高效运行的神秘面纱。 阅读详情

图片接下来内容可能有点多,毕竟既要先讲解what’s RAG,又要使用RAG搭建一个智能问答助手。

当然,如果你坚持把整篇文章看完,我坚信你必有收获!

let’s start.

一、讲解RAG

图片

图片

(1)为什么要RAG?从 60% 到 90% 的价值跃迁

图片

  • 简而言之,只靠LLM回答问题,准确率不高,容易"一本正经地胡说八道"。
  • LLM+RAG:就像给大模型配了个专业领域“随身图书馆”,回答前先去查权威资料,然后再基于查到的内容生成答案。
  • 这个时候,有人要问了?
  • 为什么给大模型配上RAG,就像给大模型配了个 “随身图书馆”,回答前先去查一查权威资料,然后再基于查到的内容生成答案。

那在RAG之前,大模型是怎么生成用户需要的内容的?

  • 回答:
  • RAG 之前,大模型其实是 “凭记忆硬答”

在没有 RAG 的时候,大模型生成内容的方式,说穿了就是 “闭卷考试”—— 全靠自己脑子里的 “老底” 硬拼。

它的整个工作过程就两步:

  1. 先有 “超强大脑”

在被开发出来时,工程师会让它 “吃” 下海量的数据。但它不会像我们一样把原文存起来,而是把这些知识嚼碎了,变成无数个复杂的数学参数,存在自己的模型里。这就像一个人背下了几千万本书,但记住的是 “模糊的印象”,不是精准的原文。

  1. 再 “回忆着拼答案”

当你提问题时,它没法去翻书查资料,只能立刻在自己的 “参数记忆库” 里翻找。它会根据问题,从记忆里挑出最相关的知识点,再按照语言逻辑,算出 “下一个词该说什么最通顺”,一步步拼出完整答案。

(2)RAG流程模块讲解

图片

  • 分片:

顾名思义,就是把拿到的全部数据进行分片,分成一片一片的。

图片

事例:

 原句:这款药对大多数人有效,但孕妇和严重肝肾功能不全者禁用。

错误分片:

  • Chunk 1:这款药对大多数人有效,
  • Chunk 2:但孕妇和严重肝肾功能不全者禁用。

当用户问 “这款药孕妇能用吗?”,如果检索只命中了 Chunk 1,大模型就会基于 “这款药对大多数人有效” 生成 “可以使用” 的错误结论,完全忽略了 “禁用” 的关键限制。

由此可见,一句话里的转折、否定等关键信息,一旦被分片切断,就会让大模型只看到片面信息,从而生成完全错误的回答。

                这就引起了一个问题:如何分片才是最好呢?

图片

固定大小分块

根据预设的字符数、词数或 token 数,将文本均匀分割成等长片段。

图片

由于直接切分会打断语义流。实现起来很简单。此外,由于所有块大小相同,也便于批处理。但有一个大问题:这通常会把句子从中间截断。因此,重要信息很可能会被分散到多个分块中。

语义分块

图片

  • 根据有意义的单元(如句子、段落或主题部分)对文档进行分块。
  • 接下来,为每个分块创建嵌入向量。
  • 假设我从第一个分块及其嵌入向量开始。
  • 如果第一个片段的嵌入与第二个片段的嵌入具有高度的余弦相似性,那么这两个片段就组成一个块。
  • 这个过程一直持续到余弦相似性显著下降为止。
  • 一旦下降,我们就开始一个新的块,并重复这个过程。

以下是输出示例:

图片

与固定大小的分块不同,这种方式保持了语言的自然流畅性,并保留了完整的思想。由于每个分块信息更丰富,它提高了检索准确性,进而让 LLM 产生更连贯、更相关的响应。一个小问题是,它依赖一个阈值来判断余弦相似度是否显著下降,而这个阈值在不同文档间可能不同。

递归分块

图片

首先,根据段落、章节等固有分隔符进行分块。

接下来,如果某个块的大小超过了预定义的块大小限制,就将该块再次拆分;若该块已符合块大小限制,则不再进一步拆分。(就是先分段落,再分大小)

以下是输出示例:

图片

如上所示:

  • 首先,我们定义两个分块(紫色显示的两段文字)。
  • 接下来,段落 1 被进一步拆分成更小的块。

与固定大小的块不同,这种方法还能保持语言的自然流畅,并保留完整的思想。

不过,这会在实现和计算复杂度方面带来一些额外开销。

基于文档结构的分块

图片

它利用文档的固有结构(如标题、章节或段落)来定义分块边界。

这样,它通过与文档的逻辑部分对齐来保持结构的完整性。

以下是输出示例:

图片

话虽如此,这种方法假设文档具有清晰的结构,而事实未必如此。此外,块的大小可能各不相同,甚至可能超出模型的 token 限制。

基于 向量 / Embedding分块

  • 先用专门的 Embedding 模型(如 BGE、text-embedding-ada)把文本转成向量,然后计算相邻句子 / 段落的向量相似度。当相似度突然大幅下降时,就判定这里是语义边界,进行切割。
  • 本质

算法驱动,靠的是 “数学上的相似度阈值”。它能识别 “这两句话意思不一样”,但理解深度有限,更像一个 “语义测量仪”。

基于 LLM 的分块

图片

既然每种方法都有优缺点,何不直接让 LLM 来生成分块?

我们可以通过提示让 LLM 生成语义独立且有意义的块。

显而易见,这种方法能保证很高的语义准确性,因为 LLM 能超越前四种方法中使用的简单启发式规则,真正理解上下文与含义。

唯一的问题是,它是本文讨论的五种分块技术中计算开销最高的一种。

此外,由于 LLMs 通常具有有限的上下文窗口,这也是需要注意的一点。

  • 索引:

步骤:

图片

图片

如下图所示,我们将片段文本转为向量在坐标轴上的投影

图片

  • 召回:

简言之,就是搜索与用户问题相关的片段

图片

当我们问:“马克喜欢吃什么?”如下投影图所示,会进行相似度计算,看跟哪几个向量接近就先提取出哪几个答案。以备后用!

              这就又引起了一个问题:如何进行相似度计算呢?
  • 向量相似度计算方法:余弦相似度、欧氏距离、点积

余弦相似度(夹角越小相似度越高)

图片

欧氏距离(直接计算A-B的距离大小)

图片

点积(使用点积公式计算)

图片

上面我们通过相似度计算,得出10个与用户问题最相似的答案。那接下来我们该如何进一步确定最终的答案呢? 这就引出了 ” 重排 “。

  • 重排:

简言之,就是:召回先在1000个片段中选择10个相似片段,然后重排再继续从10个相似片段中选择最终答案。

图片

这个时候,有人就问了,那直接在召回阶段选择最终答案不就好了,为什么要多此一举再选一次呢?

回答:  

    召回阶段使用向量相似度计算,特点是成本低、速度快但准确率较低,适合初步筛选;重排阶段使用 cross encoder 模型计算相似度,成本高、耗时长但准确率高,适合精细筛选。

    类比公司招聘,召回相当于简历初筛,重排相当于面试精选。
  • 生成:

我们通过以上的所有操作后,得到了最终答案,我们将它输入给大模型,然后设置prompt,按格式输出答案。

图片


回顾:

图片

图片

这里给大家精心整理了一份全面的AI大模型学习资源,包括:AI大模型全套学习路线图(从入门到实战)、精品AI大模型学习书籍手册、视频教程、实战学习、面试题等,资料免费分享!

👇👇扫码免费领取全部内容👇👇
在这里插入图片描述

1. 成长路线图&学习规划

要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。

这里,我们为新手和想要进一步提升的专业人士准备了一份详细的学习成长路线图和规划。可以说是最科学最系统的学习成长路线。
在这里插入图片描述

2. 大模型经典PDF书籍

书籍和学习文档资料是学习大模型过程中必不可少的,我们精选了一系列深入探讨大模型技术的书籍和学习文档,它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。(书籍含电子版PDF)

在这里插入图片描述

3. 大模型视频教程

对于很多自学或者没有基础的同学来说,书籍这些纯文字类的学习教材会觉得比较晦涩难以理解,因此,我们提供了丰富的大模型视频教程,以动态、形象的方式展示技术概念,帮助你更快、更轻松地掌握核心知识。

在这里插入图片描述

4. 2026行业报告

行业分析主要包括对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。

5. 大模型项目实战

学以致用 ,当你的理论知识积累到一定程度,就需要通过项目实战,在实际操作中检验和巩固你所学到的知识,同时为你找工作和职业发展打下坚实的基础。

在这里插入图片描述

6. 大模型面试题

面试不仅是技术的较量,更需要充分的准备。

在你已经掌握了大模型技术之后,就需要开始准备面试,我们将提供精心整理的大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。

在这里插入图片描述

7. 资料领取:全套内容免费抱走,学 AI 不用再找第二份

不管你是 0 基础想入门 AI 大模型,还是有基础想冲刺大厂、了解行业趋势,这份资料都能满足你!
现在只需按照提示操作,就能免费领取:

👇👇扫码免费领取全部内容👇👇
在这里插入图片描述

智能问答进阶之路:RAG(大模型检索增强生成)框架详解与实战,融合检索与生成助力智能系统更上层楼 阅读详情

相关推荐

C/C++面试八股文汇总

以对象管理资源,利用的就是C++构造的对象最终会被对象的析构函数销毁的原则。上述的的申请、使用、释放资源的程序较为简单,但是如果程序很复杂的时候,需要为所有的new 分配的内存delete掉,导致极度臃肿,效率下降,更可怕的是,程序的可理解性和可维护性明显降低了,当操作增多时,处理资源释放的代码就会越来越多,越来越乱。栈在函数调用时,第一个进栈的是主函数中后的下一条指令(函数调用语句的下一条可执行语句)的地址,然后是函数的各个参数,在大多数的C编译器中,参数是由右往左入栈的,然后是函数中的局部变量。

wzzrh的博客 1万+

RAG一文读懂!概念、场景、优势、对比微调与项目代码示例

定义一个自定义的嵌入函数,用于将文本内容转换为嵌入向量。其中使用 ERNIE Bot 库来创建文本的嵌入,并且通过 Chromadb 库来管理这些嵌入向量。

lihui49的博客 2110

22版本Altium Designer导出生产文件的规范化操作指南

本文详细介绍了PCB设计中的Gerber文件导出流程及相关文件生成方法。主要内容包括:1)Gerber文件导出的5个关键设置步骤;2)NC钻孔文件的导出方法;3)坐标文件的生成方式;4)文件打包规范要求必须包含Gerber文件、NC钻孔文件和坐标文件;5)文件提交的两种方式(新手推荐提交原始工程文件,量产推荐仅提交Gerber文件包)。文章还特别强调了单位一致性、精度验证等注意事项,为PCB设计文件的规范输出提供了完整指导。

qq_56506325的博客 1058

RAG技术全解析:打造下一代智能问答系统

检索增强生成(RAG)技术通过结合大型语言模型(LLM)和外部知识库来克服传统语言模型在特定领域任务上的局限。RAG通过索引、检索和生成的三步流程,增强了语言模型的能力,提高了生成内容的准确性和相关性。本文详细介绍了RAG的工作原理、实现过程和评估方法,并展望了其在多模态领域的应用前景。RAG不仅优化了问答系统的性能,还通过多样的技术整合和灵活的检索过程,推动了智能问答系统的发展。

alysblmd 1万+

Nestjs框架: 集成 Prisma

NestJS官方文档提供了两种数据库相关的内容:Techniques下的数据库板块和Recipes下的具体数据库集成方案。本文以Prisma为例,演示了如何集成Prisma到NestJS项目中。首先创建NestJS项目并安装Prisma,配置MySQL数据库连接。通过Prisma CLI初始化项目、定义数据模型并生成迁移文件。接着创建Prisma模块和服务,配置Prisma客户端连接数据库。最后在控制器中注入PrismaService实现数据查询。整个过程包含了Docker启动MySQL、Prisma模型定

Wang的专栏 1293

手教你如何使用Simulink和相关工具箱模拟和实现无人机的多机接力信号中继的建模

扩大通信范围:单架无人机的通信能力有限,通过多机接力的方式可以显著扩展通信覆盖范围。提高可靠性:当某架无人机出现故障或电量不足时,其他无人机可以接管其任务,确保通信不中断。适应复杂环境:在山区、森林等复杂地形中,多机接力可以绕过障碍物,建立稳定的通信链路。使用Communications Toolbox中的模块来模拟无线通信链路。例如,可以使用模块模拟噪声信道,或者使用模块计算信号衰减。matlab深色版本。

MHD0815的博客 767

大模型rag技术,什么是RAG?大模型入门到精通,收藏这篇就够了

RAG(Retrieval-Augmented Generation)即检索增强生成,为大模型提供了从特定数据源检索到的信息,以此来修正和补充生成的答案。

Python_0011的博客 7564

大模型推理中Prefill与Decode、KV Cache三者说明

Prefill 阶段对输入 Prompt 并行编码,一次性构建KV Cache,属于计算密集型任务。Decode 阶段逐 token 迭代生成,复用KV Cache避免重复计算,属于显存带宽密集型任务。KV Cache是自回归推理的核心基石,用显存换时间,实现两阶段衔接与高效生成。PD 分离通过任务解耦、异构硬件、异步调度、独立批处理,解决传统一体化推理的资源冲突与利用率低下问题,是当前云端大模型推理服务的主流工程优化方向。

a486259的博客 1489

一文彻底搞懂RAG

大家好,今天咱们用最接地气、零门槛的方式,把RAG扒得明明白白。不管你是刚接触AI的大学生,还是想快速落地项目的初级程序员,看完这篇,你能直接懂原理、能上手、能避坑,再也不用被各种玄学概念绕晕。先问个扎心的问题:你用大模型的时候,有没有遇到过这种情况?问它2026年最新的政策、刚发布的产品参数、你们公司内部的规章制度,它要么答非所问,要么一本正经地胡说八道——这就是大模型的幻觉和知识滞后。

人工智能AI技术 1782

Qt软件开发: 开发MQTT客户端软件,模拟硬件登录各大主流MQTT平台完成通信

此软件是使用QT编写MQTT客户端(根据mqtt官方文档3.1.1,自己实现过程代码,没有使用其他库,稳定,方便移植),模拟硬件登录各大主流的MQTT物联网服务器,完成主题订阅、发布等操作,实现数据通信交互。 已经测试OneNET、阿里云IOT、华为云IOT、百度IOT、电信IOT、原子云IOT等等常用的物联网云平台,都可以正常实现数据通信,只要云平台支持标准MQTT协议都可以使用此软件进行登录测试。 特别是大家没有硬件,想测试与MQTT物联网云服务器通信的,此软件是非常的方便。使用简单,比官方的软件操作

1万+

gem5-gpu教程01 部署(实测可跑通)

这将GPGPU-Sim更新为与gem5-gpu兼容的最新版本。此版本是已知可用于gem5 gpu的最新版本。

qq_20388971的博客 1404

一文搞懂RAG的切分策略

《RAG系统文档切分策略详解》介绍了构建检索增强生成(RAG)系统的5种关键文档切分方法:1)固定大小切分简单但易破坏语义;2)语义切分利用NLP技术保持上下文连贯性;3)递归切分结合固定长度与语义结构;4)基于文档结构的切分利用格式标记;5)基于LLM的智能切分精度高但成本大。文章强调实际应用中需混合策略,并推荐可视化工具ChunkViz辅助理解。该系列持续更新于GitHub项目LLMHub,涵盖RAG全流程技术解析。

和大家一起涨芝士 903

Intellij IDEA 使用教程(一)Jdk安装和配置

一.JDK下载 这里下载的是Java SE 8u181 64位版本。可以根据自己电脑配置来选择不同版本。 官网下载JDK 二.安装JDK 双击运行jdk-8u181-windows-x64.exe安装程序 选择安装目录,然后点击下一步 等待安装 安装JRE,就是java的运行环境,可以安装在java目录下 等待安装 安装完成。点击关闭。 三.java环境变量配置 关于环境变量的配置,...

岁月不饶人,我亦未曾饶过岁月 4054

一文彻底搞懂大模型 - RAG(检索、增强、生成)

RAG(Retrieval-Augmented Generation,检索增强生成) 是一种结合了信息检索技术与语言生成模型的人工智能技术。该技术通过从外部知识库中检索相关信息,并将其作为提示(Prompt)输入给大型语言模型(LLMs),以增强模型处理知识密集型任务的能力,如问答、文本摘要、内容生成等。RAG模型由Facebook AI Research(FAIR)团队于2020年首次提出,并迅速成为大模型应用中的热门方案。一、检索增强生成(RAG)什么是RAG?RAG(Retrieval-Augment

程序员鑫港的博客 26万+

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

一文搞懂RAG:基于LangChain构建大模型问答应用!

本文详细介绍基于RAG(检索增强生成)的大模型问答系统构建方法,涵盖索引(加载、切分、存储)和检索与生成两大核心环节,并展示使用LangChain 1.0的RAG Agent和RAG Chain两种实现方式。文章还提供大模型AI学习系统路径,分为初阶应用、高阶应用、模型训练和商业闭环四个阶段,帮助读者从零掌握大模型技术。

bugyinyin的博客 763

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

什么是RAG?大模型 RAG 是什么?一文搞懂RAG

大模型RAG(Retrieval-Augmented Generation)是一种结合检索与生成技术的人工智能模型,旨在增强大型语言模型(LLMs)在特定任务中的表现,特别是在需要访问外部知识库或实时信息的场景中。RAG通过检索模块从知识库中获取相关信息,并将其与生成模型结合,生成更准确、详尽的答案。其核心优势在于解决LLMs存储容量有限、知识更新滞后等问题,广泛应用于开放式问答、专业领域问答和对话系统等场景。随着大模型技术的快速发展,相关岗位需求激增,初级工程师平均薪资达28K,掌握AI工具成为提升职业竞

2401_85390073的博客 1678

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

一文搞懂 RAG

本文系统介绍了RAG(检索增强生成)技术的发展与应用。传统RAG通过检索-增强-生成三步骤提升大模型输出的准确性和可靠性,而新兴的AgenticRAG则引入智能体决策机制,使系统能够动态调整检索策略。文章详细对比了两种技术的特点,并提供了Python代码示例展示实现过程。特别强调了2024年以来RAG技术的广泛应用,以及2025年与Agent结合带来的技术突破。

Q2024107的博客 826

一文搞懂 MCP 与 RAG 的区别

RAG与MCP是AI应用中的两种关键技术:RAG通过检索外部知识增强回答的准确性和覆盖面,适用于知识问答等任务;MCP则通过标准化协议连接工具和数据源,实现系统操作和流程自动化。核心区别在于RAG专注于知识补充,MCP专注于实际执行。两者可组合使用,MCP将RAG作为工具调用。选型需根据需求决定:纯知识问答用RAG,系统操作用MCP,综合需求则组合使用。随着AI大模型发展,这些技术正成为行业新趋势。

AI_today的博客 982

一文搞懂RAG 的文档解析

本文介绍了RAG系统的文档解析技术,重点探讨了PDF解析的三大方法:基于规则的方法(如PyPDF)简单但段落完整性差;深度学习方法(如PP-StructureV2)能识别复杂布局但表格识别仍不精准;多模态大模型(如Qwen2.5-VL)通过端到端智能理解实现版面精准还原。这三种方法各有优缺点,需要根据实际需求选择适合的技术方案。文章还提供了相关技术指南和开源项目链接,为构建高质量RAG系统提供参考。

和大家一起涨芝士 1032

一文搞懂 RAG(检索增强生成):从原理到实战,手把手构建智能问答系统

数学中的向量有大小和方向。在 AI 领域,我们把文本映射成一组浮点数数组——每个维度对应一个语义特征,整个数组表示 n 维空间中的一个点,这就是文本向量,也叫 Embedding。语义相近的文本 → 向量空间中的距离也近。magnitude = np.linalg.norm(v) # 向量大小unit_vector = v / magnitude # 单位向量(方向)环节做什么关键技术文档处理把文档变"可检索"分块策略(递归切分)、Overlap向量化把文字变"可计算"

kznsbs的博客 172

一文搞懂RAG:从理论到实践

RAG(Retrieval-Augmented Generation)是一种将检索机制与生成模型结合的方法。它的核心思想是,在生成文本时,通过检索相关的信息来增强生成的内容。这种方式使得模型不仅能够依赖于其训练中学习到的知识,还能利用外部知识库中的最新信息。

码上飞扬的博客 2316

【必学收藏】一文搞懂RAG技术:Spring AI实现本地知识库问答系统

本文详细介绍了RAG(检索增强生成)技术,通过Spring AI框架实现基于本地知识库的AI问答系统。内容包括RAG概念解析、环境搭建、文档加载、向量转换存储、查询增强等完整实现流程。文章展示了如何利用Spring AI的DocumentReader、SimpleVectorStore等组件构建知识库,并通过QuestionAnswerAdvisor实现检索增强功能,帮助开发者快速掌握RAG技术应用。

2401_84815887的博客 1011

一文搞懂从RAG到Agentic RAG:智能AI系统的技术演进与选择

但问题来了:RAG和Agentic RAG到底有何不同?哪一个更适合你的业务需求?别急,这篇文章将带你深入剖析这两者的核心特点、优势、差异以及应用场景,帮你找到最适合的AI解决方案。让我们一起跳进这个智能世界,探索RAG与Agentic RAG的进化之路!

2401_85375186的博客 771

一文彻底搞懂大模型 - Dify(Agent + RAG)

该平台结合了后端即服务(Backend as Service, BaaS)和LLMOps的理念,为开发者提供了。

m0_59163425的博客 27万+

什么是RAG?一文搞懂检索增强生成技术

本文介绍检索增强生成(RAG)技术的基本原理与应用价值。RAG通过"检索-生成"两阶段机制,将大语言模型与外部知识库结合,解决模型时效性不足、专业领域知识缺失和幻觉问题。系统核心包含数据预处理(文档切分/向量化)、检索模块(稀疏/密集/混合检索)和生成模块(LLM合成答案)。作者将推出系列文章深入解析RAG全流程实现,包括文档解析、切分策略、Embedding技术等,相关资源已开源至Github项目LLMHub。该技术正推动AI助手、专业问答等应用突破静态知识限制,实现更精准的信

和大家一起涨芝士 825
上一篇: RAG 必看!检索不准?全靠 rerank 救场
下一篇: 一文学会如何构建无向量 RAG 系统
Llama-Turbo
博客等级 码龄4年 9901粉丝 2022原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值