啥是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日晚於实验楼
相关推荐
CIO_Alliance4 分钟前
AI+iPaaS解决方案深度整合:让跨系统业务流程自动化一步到位
人工智能·ipaas·系统集成·ai+ipaas·企业cio联盟·企业级ai化转型
苏州IT威翰德5 分钟前
算力资产“续命”专家:苏州威翰德科技赋能NVIDIA高端AI芯片芯片级维修
大数据·人工智能
天上路人18 分钟前
A59P双波束语音模块:神经网络降噪在远场拾音中的工程实现分析
人工智能·深度学习·神经网络·ai降噪·ai语音·麦克风·回音消除
冬奇Lab26 分钟前
AI 评测系列(03):LLM-as-Judge——让 LLM 评价 LLM 的正确姿势
人工智能·llm
Miao1213136 分钟前
某海外住宿平台如何在大规模场景下实现指标一致性:Minerva 指标平台实践
大数据·数据库·人工智能
冬奇Lab39 分钟前
每日一个开源项目(第164篇):毕昇(BISHENG)- 面向企业的开源 LLM DevOps 平台
人工智能·开源·agent
SeaTunnel40 分钟前
从 Python Script 地狱到标准化数据集成框架
大数据·开发语言·python·程序员·代码·seatunnel
深度研习笔记1 小时前
OpenCV工业视觉实战09|项目EXE打包+工控机无环境部署+后台常驻运行,彻底脱离Python环境,完成项目最终交付
python·opencv·webpack
CCPC不拿奖不改名1 小时前
大模型推理架构与开源生态知识整理
数据库·windows·python·架构·langchain·开源·github
声讯电子1 小时前
录音笔AI降噪方案:从录得到到听得清的听觉革命
人工智能·语音识别