RAG工作机制详解

RAG(Retrieval-Augment-Generation) 检索-增强-生成

  1. 先从资料库中检索相关内容
  2. 再基于这些内容来生成答案
    image

RAG的使用场景

产品手册太长带来的问题
1.模型无法读取所有内容 2.模型推理成本高 3.模型推理慢

RAG处理流程

image

问题: 如何分片、如何选择相关的片段
image

分片

分片方式:

  1. 按字数分
  2. 按段落分
  3. 按章节分
  4. 按页码分

索引

  1. 通过Embedding将片段文本转换成为向量
  2. 将片段文本和片段向量存入向量数据库中

向量

概念:有大小有方向的量
eg: [1.0, 2.3, 5.76, 5.8, 10.1, -3.6]
每个向量都有维度
image

Embedding - 将文本转换为向量的过程

image

向量数据库 - 用于存储和查询向量的数据库

image
image

召回 - 搜索与用户问题相关的片段

image
image

向量相似度计算方法

  • 余弦相似度:计算两个向量之间夹角的cos值,判断cos值当值越小 =》 相似度越高
    image
  • 欧式距离:计算两个向量之间的距离,距离越小,相似度越高
    image
  • 点积:从A向B引入一条垂线: a * b的乘积越大代表相似度越高
    image

重排 - 重新排序

image

image

生成答案过程

image
image

posted @ 2026-04-05 16:15  Felix_Openmind  阅读(2)  评论(0)    收藏  举报
*{cursor: url(https://files-cdn.cnblogs.com/files/morango/fish-cursor.ico),auto;}