最近在主导一个 AI 检索的项目,需要对检索增强生成(RAG)有所了解,下面是我对检索增强生成(RAG)的一个初浅的了解。
索增强生成(RAG)是指对大型语言模型输出进行优化,使其能够在生成响应之前引用训练数据来源之外的权威知识库。
检索增强生成(RAG)的原理图如下:
graph TB
subgraph 用户交互
Start([用户查询]):::user
End([交互响应]):::user
end
subgraph 大语言模型
end
subgraph 知识库构建
SD[(结构化知识库)] --> 向量化知识库 --> VD[(向量知识库)]
end
Start ==> 向量化用户查询 ==> 向量检索 ==> 相关知识
Start ==> 提示词模版
相关知识 ==> 提示词模版
提示词模版 == 组合 ==> 模型输入
模型输入 ==> 大语言模型 ==> 模型输出 ==> End
相关知识 ==> End
向量化知识库 o-.-o 大语言模型
向量化用户查询 o-.-o 大语言模型
向量检索 o-.-o VD
相关知识 o-.匹配.-o SD
classDef user fill:green,color:white