【AI 系列】RAG 检索增强生成的流程

RAG 检索增强生成的流程

RAG 其全称是 Retrieval Augmented Generation,可以被翻译成 检索增强生成技术,从标题上也能了解其核心的流程 检索 => 增强 => 生成。

LLM 的局限

在介绍 RAG 之前,我们先来了解一下 LLM 的局限性。

首先是幻觉问题(hallucination),LLM 底层还不具备真正的逻辑推理能力,是根据大量的数据进行概率性预测,所以在某些情况下,LLM 会生成一些不合理的答案。

其次是对领域知识的欠缺,造成这个问题主要是俩个原因,第一个是对知识的更新慢,另一个是对专业领域的知识训练样本不足导致。

RAG 的优势

当我们了解了 LLM 的局限性后,RAG 会尽可能提供与答案相关的上下文,来增强它正确输出的可能性。

RAG 的优势主要体现在以下几个方面:

  1. 用户输入提问
  2. 检索:根据用户提问对 向量数据库 进行相似性检测,查找与回答用户问题最相关的内容
  3. 增强:根据检索的结果,生成 prompt。 一般都会涉及 "仅依赖下述信息源来回答问题" 这种限制 LLM 参考信息源的语句,来减少幻想,让回答更加聚焦
  4. 生成:将增强后的 prompt 传递给 LLM,返回数据给用户

所以 RAG 就是哪里有问题解决哪里,既然大模型无法获得最新和内部的数据集,那我们就使用外挂的向量数据库为 LLM 提供最新和内部的数据库。既然大模型有幻想问题,我们就将回答问题所需要的信息和知识编码到上下文中,强制大模型只参考这些内容进行回答。

注意:LLM 是逻辑推理引擎,而不是信息引擎。所以,由外挂的向量数据库提供最有效的知识,然后由 LLM 根据知识进行推理,提供有价值的回复。

RAG 流程

后续章节,在下将针对 RAG 的各个流程做详细的介绍。

相关推荐
敲敲了个代码1 小时前
从硬编码到 Schema 推断:前端表单开发的工程化转型
前端·javascript·vue.js·学习·面试·职场和发展·前端框架
dly_blog3 小时前
Vue 响应式陷阱与解决方案(第19节)
前端·javascript·vue.js
吴佳浩3 小时前
Python入门指南(七) - YOLO检测API进阶实战
人工智能·后端·python
消失的旧时光-19433 小时前
401 自动刷新 Token 的完整架构设计(Dio 实战版)
开发语言·前端·javascript
tap.AI3 小时前
RAG系列(二)数据准备与向量索引
开发语言·人工智能
console.log('npc')3 小时前
Table,vue3在父组件调用子组件columns列的方法展示弹窗文件预览效果
前端·javascript·vue.js
用户47949283569153 小时前
React Hooks 的“天条”:为啥绝对不能写在 if 语句里?
前端·react.js
我命由我123454 小时前
SVG - SVG 引入(SVG 概述、SVG 基本使用、SVG 使用 CSS、SVG 使用 JavaScript、SVG 实例实操)
开发语言·前端·javascript·css·学习·ecmascript·学习方法
老蒋新思维4 小时前
知识IP的长期主义:当AI成为跨越增长曲线的“第二曲线引擎”|创客匠人
大数据·人工智能·tcp/ip·机器学习·创始人ip·创客匠人·知识变现
货拉拉技术4 小时前
出海技术挑战——Lalamove智能告警降噪
人工智能·后端·监控