news 2026/5/10 9:29:07

RAG介绍及工作流程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
RAG介绍及工作流程

一、RAG 是什么?

RAG(Retrieval-Augmented Generation),即检索增强生成,是一种结合信息检索大模型生成的技术框架,核心目标是让大模型在生成回答时,能够引用外部权威、实时、精准的知识,从而解决大模型自身的固有缺陷。

二、为什么要用 RAG?

主要解决传统大模型的痛点

  • 缓解“幻觉”问题

    大模型可能生成虚构或错误信息,而RAG让模型基于检索到的真实数据资料生成答案,大幅减少幻觉,同时可追溯信息来源

  • 突破模型知识时效限制

    大模型的训练数据往往滞后,无法获取最新信息。RAG可实时检索最新资料(如新闻、行业报告),保证答案的时效性。
  • 扩展模型的专业领域能力

    通用大模型缺乏特定领域的深度知识(如企业内部的规章制度、专业文献)。RAG可构建领域专属知识库,让大模型成为垂直领域的专家。

  • 增强答案的可解释性与可信度

    RAG生成的答案可附带来源引用(如参考的文档段落),让用户验证信息可靠性,提升信任感。
  • 隐私与安全

    很多公司不希望把内部文件拿去训练模型。用 RAG,只需把文档存到自己的检索系统中,推理时临时读取,不必参与模型训练。

三、RAG的工作流程

准备阶段:分片(Chunking)、索引(Indexing)

分片(Chunking):将长文本拆分为大小适中、语义完整的短文本片段

  1. 数据加载:对各种非结构化数据( PDF、DOCX、Markdown、HTML等)进行处理,处理方式可以把各种数据源转换成统一的纯文本格式;或是对非结构化数据按文件类型归类,路由给不同加载器来处理这些文件。

  2. 数据分割:将它们分割成更小、更易于管理的文本块(Chunks)。常见做法:按固定字数 / Token 切重叠分块,按结构切,语义切分。若是通过OCR提取出的文本,还需先进行去噪后再进行文本块分割。

索引(Indexing):将拆分后的 Chunk 转换为向量格式,并构建索引库

  1. 向量化:使用嵌入模型(Embedding模型)将每个文本块转换为一个高维向量(Vector)。语义相近的文本,其向量在空间中也更接近。

  2. 索引:将这些向量及其对应的原始文本、元数据(来源、页码等)存入专门的向量数据库方便溯源,构建向量索引常用向量数据库:开源(Milvus、Chroma、FAISS),再选择适合的索引算法(如 HNSW、IVF_FLAT)。

检索阶段:召回(Retrieval)、重排(Re-ranking)

召回(Retrieval):从海量数据中 “粗筛”

  1. 使用与准备阶段相同的嵌入模型,将用户查询的原始问题也转换为向量。

  2. 在向量数据库中,执行近似最近邻搜索,计算查询向量与所有存储向量之间的相似度(常用余弦相似度、欧氏距离、点积)。

  3. 根据相似度排序,返回相似度最高的K个文本块Top-K及其元数据。

重排(Re-ranking):对召回结果 “精筛”

  1. 向量相似度(召回)有时不够精确,需进行更精细重排,选出最相近的几个

  2. 选用一个更强大的重排模型,更深入地理解查询和文档块之间的语义关系,并直接输出一个相关性分数,得分高的被选为最终上下文。

  3. 根据这个分数对所有候选文档进行重新排序,并选取Top-N

生成阶段:生成(Generation)

生成(Generation)

  1. 构造提示:将重排后的 Top-N 个 Chunk与用户原始问题,按照预定的模板组装成新的提示词。

  2. 模型推理:将构造好的提示词输入给LLM,LLM 会利用检索到的信息,结合模型的语言生成能力,来生成准确且相关的最终答案。

  3. 生成与约束:LLM在生成时,会被要求严格依据上下文和数据来源来生成,并按照指定格式生成准确且可追溯的答案。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/8 16:38:11

窗口置顶工具完全指南:AlwaysOnTop三步快速上手教程

窗口置顶工具完全指南:AlwaysOnTop三步快速上手教程 【免费下载链接】AlwaysOnTop Make a Windows application always run on top 项目地址: https://gitcode.com/gh_mirrors/al/AlwaysOnTop 在日常工作和学习中,你是否经常需要在多个窗口间频繁…

作者头像 李华
网站建设 2026/4/27 13:51:25

Vue-Office项目PDF大文件预览性能优化终极指南

Vue-Office项目PDF大文件预览性能优化终极指南 【免费下载链接】vue-office 项目地址: https://gitcode.com/gh_mirrors/vu/vue-office 你是否曾经在使用Vue-Office项目进行PDF大文件预览时,遇到过浏览器卡顿、内存飙升甚至崩溃的困扰?作为一款优…

作者头像 李华
网站建设 2026/5/3 9:25:17

SketchUp STL插件:开启3D建模与实体打印的无缝连接之旅

还在为精美的3D设计无法变成实体而苦恼吗?SketchUp STL插件正是你需要的完美解决方案!这款强大的Ruby扩展让SketchUp软件具备了完整的STL文件格式导入导出能力,成为连接虚拟设计与现实制造的关键桥梁。无论你是3D打印爱好者还是专业设计师&am…

作者头像 李华
网站建设 2026/5/5 14:42:03

原神帧率解锁终极指南:轻松突破60帧限制,享受丝滑游戏体验

原神帧率解锁终极指南:轻松突破60帧限制,享受丝滑游戏体验 【免费下载链接】genshin-fps-unlock unlocks the 60 fps cap 项目地址: https://gitcode.com/gh_mirrors/ge/genshin-fps-unlock 还在为原神的60帧限制而困扰吗?想要充分发挥…

作者头像 李华
网站建设 2026/5/5 10:03:31

GPT-SoVITS训练过程中显存占用优化

GPT-SoVITS训练过程中显存占用优化 在当前个性化语音生成需求激增的背景下,仅需一分钟语音即可克隆音色的技术正变得愈发重要。GPT-SoVITS 作为开源社区中备受关注的高质量语音合成方案,凭借其出色的少样本学习能力,成为虚拟主播、有声书配音…

作者头像 李华
网站建设 2026/5/9 12:49:08

Degrees of Lewdity中文本地化终极指南:从零开始享受完整汉化体验

Degrees of Lewdity中文本地化终极指南:从零开始享受完整汉化体验 【免费下载链接】Degrees-of-Lewdity-Chinese-Localization Degrees of Lewdity 游戏的授权中文社区本地化版本 项目地址: https://gitcode.com/gh_mirrors/de/Degrees-of-Lewdity-Chinese-Locali…

作者头像 李华