RAG 的诞生:为了让 AI 不再“乱编”

RAG 的诞生:为了让 AI 不再"乱编"

  • [一、什么是 RAG?](#一、什么是 RAG?)
  • [二、RAG 的核心原理](#二、RAG 的核心原理)
    • [1. 检索(Retrieval)](#1. 检索(Retrieval))
    • [2. 生成(Generation)](#2. 生成(Generation))
    • [3. RAG 原理示意](#3. RAG 原理示意)
  • [三、为什么 RAG 会诞生?发展历程解析](#三、为什么 RAG 会诞生?发展历程解析)
    • [1. 早期问答系统(2000年前后)](#1. 早期问答系统(2000年前后))
    • [2. 向量检索兴起(2010年代)](#2. 向量检索兴起(2010年代))
    • [3. 大语言模型崛起(2020年左右)](#3. 大语言模型崛起(2020年左右))
    • [4. RAG 的提出(Facebook AI Research,2020-2021)](#4. RAG 的提出(Facebook AI Research,2020-2021))
    • [5. 多模态 RAG(2022年后)](#5. 多模态 RAG(2022年后))
    • [6. 企业落地阶段(2023年至今)](#6. 企业落地阶段(2023年至今))
  • [四、RAG 是怎么工作的?](#四、RAG 是怎么工作的?)
  • [五、RAG 能解决哪些问题?](#五、RAG 能解决哪些问题?)
  • [六、RAG 仍存在的限制](#六、RAG 仍存在的限制)
  • [七、RAG 的应用场景](#七、RAG 的应用场景)
  • [八、RAG 的未来趋势](#八、RAG 的未来趋势)
  • 九、总结

人工智能和大语言模型(LLM)的发展,让机器能够理解和生成自然语言,像人类一样回答问题、写文章,甚至生成代码。但单靠模型内部的"记忆",往往有几个问题:

  1. 知识有限:模型只能回答它训练过的内容,最新信息可能不知道。

  2. 容易出错:模型可能凭"想象"生成答案,也就是所谓的"幻觉"。

  3. 专业领域薄弱:医学、法律、金融等专业知识模型不一定掌握准确细节。

RAG 就是为了解决这些问题而诞生的技术。它让模型在回答问题时,不仅依赖自己的记忆,还会去"图书馆"查资料,然后结合记到的知识和查到的资料生成答案。


一、什么是 RAG?

RAG 全称 Retrieval-Augmented Generation,中文为"检索增强生成"。其核心思想是:

在生成答案时,不仅依赖大模型内部的训练知识,还能够实时访问外部知识库或文档,从而生成更加准确和可靠的内容。

通俗理解: 就像一个学生回答问题,不仅依靠自己记忆,还会去图书馆查资料,然后结合记忆和查到的资料回答问题。

举个例子:

你问模型:"请告诉我最新的新能源补贴政策。"

  • 纯模型可能只靠训练记忆,回答的是过时或模糊的信息。

  • RAG 模型会先去查最新政策文件,再结合训练知识生成答案,因此更准确。

简单流程可以理解为三步:

  1. 检索资料:先找到相关文档或信息。

  2. 结合生成:把找到的资料和问题一起输入模型,让模型生成答案。

  3. 输出结果:返回给用户,同时保证答案有"出处",更可靠。


二、RAG 的核心原理

RAG 由两个核心模块组成:检索(Retrieval)生成(Generation),以及二者的融合策略。

1. 检索(Retrieval)

原理

  1. 将用户问题或查询文本转化为向量(Embedding),表示语义特征:

    复制代码
    用户问题 → 向量化模型 → 高维向量
  2. 在知识库中查找与问题向量最相似的文档或段落。

  3. 相似度计算常用方法:

    方法 在意什么 白话比喻
    余弦相似度 方向 只看"箭朝哪儿指",不看箭多长
    点积 方向 + 强度 方向像、而且箭越长(越重要)分越高
    欧氏距离 物理距离 量两根箭头落点的直线距离一样不一样
    • 余弦相似度:方向像不像?

      → 最常用于语义检索(RAG 使用最多)

    • 点积:方向像不够,还要更"自信"

      → 用于 embedding 本身带"重要性权重"的情况

    • 欧氏距离:空间距离近不近

      → 用于聚类,不太适合语义检索

技术示例

功能 技术选型
向量数据库 Milvus、Pinecone、Weaviate
搜索引擎 Elasticsearch、OpenSearch
向量化模型 OpenAI Embeddings、SentenceTransformers、Qwen Embeddings

2. 生成(Generation)

原理

  1. 将检索到的文档与用户问题一起拼接为生成上下文。

  2. 输入大语言模型,生成自然语言答案。

  3. 可以使用不同生成策略:

    • 纯生成:只依赖 LLM 内部知识

    • RAG Fusion:检索文档 + LLM 生成

    • 检索后重排序:生成多个候选答案,再根据文档相关度选择最佳

技术实现

功能 技术选型
云端 LLM OpenAI GPT 系列、Claude
本地部署模型 LLaMA、MPT、Qwen
Java/Spring 调用 Spring AI 封装 LLM Client

3. RAG 原理示意

复制代码
用户问题 → 问题向量化 → 向量检索 → 获取相关文档
            ↓
      构建生成上下文 → LLM生成答案 → 后处理 → 返回结果

或可画为:

复制代码
+-----------+      +-----------+      +-----------+
| 用户问题  | ---> | 向量检索  | ---> | 文档集合  |
+-----------+      +-----------+      +-----------+
       |                                |
       +-----------> 拼接上下文 -------->|
                                       |
                                       v
                                 +-----------+
                                 | LLM生成   |
                                 +-----------+
                                       |
                                       v
                                 +-----------+
                                 | 返回答案  |
                                 +-----------+

三、为什么 RAG 会诞生?发展历程解析

1. 早期问答系统(2000年前后)

  • 背景问题:计算机只能根据关键词搜索,问"苹果公司股票涨了多少",系统可能只匹配到"苹果",无法区分水果和公司。

  • 解决方案:基于模板和规则的问答,回答固定问题。

  • 问题仍存在:智能化低,无法理解问题真正的意思,也不灵活。

2. 向量检索兴起(2010年代)

  • 背景问题:关键词匹配太死板,不能理解语义相似性,比如"新能源补贴"与"绿色能源扶持"意思接近,但关键词不同。

  • 解决方案:把文档和问题转化成数字向量,测量"语义相似度",找到最相关内容。

  • 问题仍存在:检索只能找到相关内容,但无法生成自然语言答案,仍需人工阅读。

3. 大语言模型崛起(2020年左右)

  • 背景问题:模型可以生成自然语言,回答问题灵活,但知识局限在训练数据里,容易"编造答案"。

  • 解决方案:使用 GPT、LLaMA 等大模型生成答案。

  • 问题仍存在:模型"记忆"有限,面对最新信息或专业知识容易出错。

4. RAG 的提出(Facebook AI Research,2020-2021)

  • 诞生目的:把检索(获取资料)和生成(模型回答)结合起来,让模型既能理解问题,也能引用外部知识生成准确答案。

  • 解决问题

    • 知识覆盖有限 → 可以实时查询知识库

    • 幻觉生成 → 输出答案有真实文档支撑

    • 专业领域知识薄弱 → 可以接入专业文档或数据库

5. 多模态 RAG(2022年后)

  • 发展:不仅支持文本,还可以处理图像、视频、音频信息。

  • 应用:例如问"这个产品图片展示了哪些功能",模型可以结合图片内容回答,而不是只靠训练记忆。

6. 企业落地阶段(2023年至今)

  • 场景

    • 客服问答:自动回答客户问题

    • 企业知识管理:内部文档智能检索

    • 科研辅助:快速总结论文和报告

  • 趋势:面向特定行业定制 RAG 系统,知识库动态更新。


四、RAG 是怎么工作的?

假设你问模型:"请总结最新新能源政策的要点",RAG 的处理过程可以这样理解:

  1. 用户提问

    "请总结最新新能源政策的要点。"

  2. 检索相关资料

    • 模型先把问题理解成一个"向量",就像把问题变成数字化的意思标签。

    • 然后去知识库里找到最相似的文档:

      • 文档1:2025年新能源补贴政策更新

      • 文档2:新能源产业税收优惠方案

      • 文档3:各省新能源项目政策汇总

  3. 构建生成上下文

    • 把找到的文档和用户问题组合起来:

    "根据以下文档回答问题:文档1: 2025年新能源补贴政策更新... 文档2: 新能源产业税收优惠方案... 用户问题: 请总结最新新能源政策的要点。"

  4. 生成答案

    • 模型根据上下文生成自然语言答案:

    "根据最新政策,新能源企业可享受税收优惠,同时获得中央与地方补贴,重点支持风电、光伏和储能项目。"

  5. 返回结果

    • 可以加摘要或标注来源,让答案更可靠。

五、RAG 能解决哪些问题?

  1. 知识覆盖有限

    • 问最新政策、最新科研进展,模型依靠知识库也能给出答案。
  2. 减少幻觉生成

    • 生成内容有文档支撑,不再凭"想象"回答问题。
  3. 提高专业领域准确性

    • 可以接入医疗指南、法律合同、财务报表等文档。
  4. 支持多模态数据

    • 不仅文本,还能结合图片、视频或音频内容回答问题。
  5. 动态更新知识

    • 知识库更新即可,无需重新训练模型。

六、RAG 仍存在的限制

  1. 依赖知识库质量

    • 如果知识库不全或文档不准确,模型答案也可能不准确。
  2. 响应速度稍慢

    • 先检索再生成比纯生成模型耗时更长。
  3. 实现复杂

    • 需要构建知识库、向量检索系统、生成模型、上下文拼接和后处理。
  4. 多轮对话处理挑战

    • 长对话中如何选择上下文、避免重复信息仍需优化。

七、RAG 的应用场景

场景 示例 说明
企业客服 "如何申请报销差旅费用?" 检索企业政策文档 → 模型生成步骤 → 返回用户
科研文献分析 "量子计算最新进展有哪些?" 检索最新论文 → 模型总结 → 输出摘要
教育辅导 "什么是牛顿第二定律?" 检索教材段落 → 模型生成通俗解释 → 学生理解更快
多模态问答 "这张产品图片展示了哪些功能?" 检索图文数据 → 模型分析图像 → 输出描述
内容生成 "写一篇新能源政策的新闻稿" 检索政策文件 → 模型生成完整新闻稿 → 返回

八、RAG 的未来趋势

  1. 多模态更广泛应用:文本+图片+视频+音频联合回答问题

  2. 知识库自动更新:实时抓取最新资料,保证答案时效性

  3. 企业专属 RAG 系统:针对行业构建定制问答和决策系统

  4. 向量数据库与模型深度集成:提升检索速度和答案准确性

  5. 私有化部署与数据隐私:在企业内部部署,保证敏感数据安全

  6. 与推理和强化学习结合:解决复杂问题、多步骤决策能力更强


九、总结

RAG 的核心价值是:

  • 生成能力 + 外部知识增强

  • 解决大语言模型知识有限、容易幻觉的问题

  • 适用于智能问答、科研分析、教育辅导、内容创作、知识管理和多模态问答等场景

关键理解

RAG 不只是"会答题的模型",而是一个能查资料、能理解、能生成答案的智能系统


相关推荐
三条猫2 小时前
将3D CAD 模型结构树转换为图结构,用于训练CAD AI的思路
人工智能·3d·ai·cad·模型训练·图结构·结构树
攻城狮7号2 小时前
Meta开源SAM 3D,如何教会 AI “想象”三维世界
人工智能·开源大模型·sam 3d·2d变3d·meta大模型·3d 视觉ai
三七互娱后端团队2 小时前
告别“玄学”调参:DSPy 框架入门,让 AI 自动优化 AI 的提示词
人工智能·后端
三七互娱后端团队2 小时前
别再只用 Vector Search 了:手把手教你落地 GraphRAG(图谱增强检索)
人工智能·后端
Predestination王瀞潞2 小时前
Windows环境下Pytorch的配置
人工智能·pytorch·python
Christo32 小时前
AAAI-2024《Multi-Class Support Vector Machine with Maximizing Minimum Margin》
人工智能·算法·机器学习·支持向量机·数据挖掘
千里飞刀客2 小时前
aruco位姿检测
人工智能·opencv·计算机视觉
浪子不回头4152 小时前
AI机考-Transformers
人工智能
BAOYUCompany3 小时前
暴雨AI服务器点燃AGI蓝海市场
人工智能