当前位置: 首页 > news >正文

什么是RAG(Retrieval-Augmented Generation)?一文读懂检索增强生成

什么是RAG?

RAG是一种结合文档检索(Retrieval)与语言模型生成(Generation)的技术,它的核心思想是:先查资料,再作答

RAG是“知识”和“大模型”的桥梁。

与传统LLM(Large language model,大型语言模型,如chartgpt)不同,RAG不完全依赖模型内部知识,而是将用户的问题与一个外部知识库结合,通过检索获取相关文档,再交由语言模型生成回答。

为什么会有RAG?

RAG的出现,是为了解决传统打语言模型(LLM)在真实应用中的三大痛点:

  1. 知识截止问题:LLM的知识固定在训练时的数据(如GPT-3.5截止到2021年),无法回答新的事实、最新的政策、技术文档更新等问题
  2. 幻觉(Hallucination):LLM可能编造事实,当模型遇到知识空白时,它会“自洽的胡说八道”,表面看似合理,实则错误
  3. 无法访问私有知识:无法访问公司内部知识、专属文档、个人数据等非公开内容

RAG的优势

功能说明
外部知识接入实时连接知识库,让模型不止靠记忆
提升问答可信度基于真实内容作答,减少幻觉
支持复杂问答多文档融合后,能支持长文档或跨文档问答
可快速迭代只需要更新知识库,无需重复训练模型
企业智能化支撑内部问答、助手、客服等应用场景

RAG的典型应用场景

  • 客户服务助手
  • 金融文档的自动文档
  • 企业文档助手,客服机器人
  • 医学指南、病例支持

RAG工作流程

在这里插入图片描述

如何搭建一个简单的RAG系统

工具选型(可用):

  • 文档向量化:OpenAI Embedding API
  • 向量数据库:FAISS
  • 生成模型(选择已有模型):OpenAI GPT
  • 框架推荐:LangChain、LlamIndex、Haystack

步骤概览:

  1. 文档预处理(切片、清洗)
  2. 文本向量化并存入数据库
  3. 接收用户问题 -> 转成向量 -> 检索相似片段
  4. 将检索内容 + 问题作为Prompt输出LLM生成回答

在这里插入图片描述

参考文章

  • Code a simple RAG from scratch:https://huggingface.co/blog/ngxson/make-your-own-rag

下一步计划

搭建一个软考相关RAG系统。

http://www.lryc.cn/news/587454.html

相关文章:

  • Vue3 实现文件上传功能
  • 【操作系统】strace 跟踪系统调用(一)
  • 网络编程 JAVA
  • 2025年渗透测试面试题总结-2025年HW(护网面试) 45(题目+回答)
  • 学习开发之无参与有参
  • 前四天综合总结
  • Cursor的使用
  • ARC 03 从Github Action job 到 runner pod
  • 暑期自学嵌入式——Day01(C语言阶段)
  • BERT系列模型
  • Spring AI 项目实战(十六):Spring Boot + AI + 通义万相图像生成工具全栈项目实战(附完整源码)
  • 闲庭信步使用图像验证平台加速FPGA的开发:第十三课——图像浮雕效果的FPGA实现
  • 【Mysql作业】
  • 16.使用ResNet网络进行Fashion-Mnist分类
  • [GWCTF 2019]我有一个数据库
  • 在 Ubuntu 下安装 MySQL 数据库
  • 谷歌推出Vertex AI Memory Bank:为AI智能体带来持久记忆,支持连续对话
  • 【echarts踩坑记录】为什么第二个Y轴最大值不整洁
  • 华为HarmonyOS 5.0深度解析:跨设备算力池技术白皮书(2025全场景智慧中枢)
  • JavaScript加强篇——第八章 高效渲染与正则表达式
  • vue防内存泄漏和性能优化浅解
  • PHP语法高级篇(二):文件处理
  • 小架构step系列13:测试用例的加载
  • python的平安驾校管理系统
  • C# 接口(接口可以继承接口)
  • MySQL SQL语句精要:DDL、DML与DCL的深度探究
  • 大模型-量化技术
  • mmap映射文件
  • mapstruct与lombok冲突原因及解决方案
  • Java面试基础:面向对象(2)