啥是RAG 它能干什么?

RAG工作机制详解

前言

为什么需要学习RAG?

RAG(Retrieval-Augmented Generation,检索增强生成)是一种结合了信息检索与大语言模型生成能力的技术。与传统模型相比,RAG能够从外部知识库中检索相关信息,再基于这些信息生成更准确、更可靠的回答。

闲聊 :好久没写博客了 现在除了原本的Chat功能 现在居然也支持agent 你现在看到的开头的这段介绍都是agent自动帮我插入的,编辑页面也经过了优化,CSDN真是紧跟时代发展!

BZW:最后 整个排版也是 agent 自动帮我优化的 我只需要自己再微调一下就可以了 有点小龙虾------博客版的味道了^ _^

传统模型 vs. Agent

  • 传统模型:回答"如何预订酒店"时,仅提供文字步骤。
  • Agent:直接调用预订API,完成订单并返回确认信息。

前置知识补充

1. Token(词元)

我们在与大模型对话时输入的是文字,但在喂给大模型之前都需要先进行Token化

为什么需要Token化?

  • 单词在计算机中以字符形式存储,如果大模型每次都要从字符组合成单词,效率太低。
  • 通过建立Token词典,可以将"apple"转化为数字"1",大大提高处理效率。
  • 将字词或部分字词转化为数字的过程就叫做Tokenizer

2. Embedding(嵌入)

如果说Tokenizer是将用户输入的文字转化为数字,那么Embedding就是把这些数字转化为向量。

Embedding的优势

  • 可以表示不同维度上的关系远近
  • 例如:香蕉和苹果除了都是中文和水果外,在其他方面区别很大
  • 而"苹果"对应的不同翻译(如"apple"),除了语言差异外,都指同一个东西
  • 单一维度无法满足需求,需要Embedding进行向量化表示

3. 大语言模型Embedding vs. RAG Embedding

重要区别

  • 大语言模型的Embedding:主要用于理解输入文本的语义
  • RAG的Embedding:目的是概括一段话,提取关键信息

RAG Embedding的工作流程

  1. 模型输出Embedding向量
  2. 经过线性层处理
  3. 将向量转化为便于理解的Token

为什么需要RAG?

实际应用场景

  • 现在我们在学校或公司网站上,总能在右下角看到一个"智能管家"来帮助解答问题,我们当然可以在询问的时候丢给他一个系统的使用手册 但是这往往就会导致很多问题:
  • 如果你常用AI帮助你解决问题 那么这其实是很常见的 比如我们丢给豆包一片研究生论文 很大概率都会出现由于文档内容太长只能读取前80% 这就是涉及到上下文窗口大小的一个问题

  • 而输入太多就会导致token的消耗很大 对应的就是成本变高 和速度变慢 这是非常好理解的

  • 所以这个时候就需要我们RAG登场了 下面对于RAG基本运行流程的分析就可以让你基本理解 为什么RAG可以很好的解决这些问题

RAG的基本运行流程

核心步骤

  1. 索引

  2. 召回

  3. 重排

  • 召回和重排的区别
  • 有的人就说 直接在召回阶段 选出前三个最相似的不就行了吗 干嘛非得再次重排 简直是多此一举 其实关键是在于他们的筛选逻辑是不同的
  1. 生成
  • 我们拿到了上面的结果 之后就可以喂给大模型了 我个人理解的就像是:
  • 期末考试的时候 你发现你一个学期啥也没学 这个时候 大的来了 老师最后一节课把题库或者说是考试范围和重点 给你在书上圈好了 你虽然铲了一学期 依旧能够凭借这份资料 高分通过期末考试

回顾

  • 整体的流程可以分为提问前和提问后
  • 提问前的准备工作
  • 提问后

结语

  • 那么RAG的有关内容就到这里了 感谢你的关注 ~
  • 希望看到这里的你有美好的一天 我明天还有个面试 那 也祝我好运吧 ~ ------5.14日晚於实验楼
相关推荐
YOLO数据集集合3 小时前
中国城市建筑功能矢量数据集 | 建筑功能 矢量数据 城市规划 空间分析 Shapefile 多分类 GIS数据集8017期
人工智能·分类·数据挖掘·空间分析·城市规划·中国城市建筑·功能矢量
图特摩斯科技3 小时前
OntoFlow 本体智能平台在污水处理厂的应用
人工智能·abutiongraph·palantir·ontology·ontoflow
动物园猫3 小时前
行人与骑行者目标检测数据集:2类别、5,000张图像 | 目标检测
人工智能·目标检测·目标跟踪
像风一样自由20203 小时前
17.Milvus如何完成一次向量相似度检索
人工智能·postgresql·大模型·milvus·rag·智能体
芒果作者3 小时前
视频审核助手
人工智能·音视频
CODER03043 小时前
ubuntu24.04:降内核+显卡驱动+cuda+cudnn+pytorch+anaconda+pycharm
人工智能·pytorch·深度学习·自然语言处理·cuda·ubuntu24.04·降内核
Likeadust3 小时前
多视角直播破局!企业融媒体系统在线高清直播EasyDSS多路同屏技术,重构实时可视化传播体验
人工智能·重构·媒体
万邦科技Lafite3 小时前
1688一键创建订单付款API操作指南讲解
人工智能·微信·api·电商开放平台·淘宝开放平台·api开放接口
Forerror20263 小时前
API网关能做什么?MAI Gateway如何赋能企业AI能力
人工智能·maigateway·finapi·企业级ai网关·大模型财务管控
weixin_307779133 小时前
Databricks里用PySpark统计指定表和字段中各字段的空值、空字符串或零值比例
运维·数据仓库·python·spark·云计算