RAG(检索增强生成)的工作流程

一、先理解 RAG 的核心目的

大模型(比如 ChatGPT)虽然知识多,但有两个问题:

  1. 知识可能过时(比如不知道 2025 年的新政策);
  2. 没有你的私有知识(比如你公司的内部文档、行业机密)。

RAG 就是解决这俩问题的:让大模型回答问题时,先从你的 “私有知识库” 里找相关资料,再结合这些资料生成回答,相当于给大模型配了个 “私人资料库 + 搜索引擎”。

二、拆解 RAG 流程:分 “离线准备” 和 “在线回答” 两步

第一步:离线准备(提前把你的知识 “喂” 给系统)

目的:把你私有的知识(比如公司文档、行业报告)变成大模型能 “查” 的形式。

  1. 知识库:你的私有资料(比如 “金融产品手册”“员工培训文档”)。
  2. 清洗、装载:把这些资料里的 “垃圾内容”(比如重复、无用的话)删掉,整理成干净的文档。
  3. 切分:把大文档切成小片段(比如一篇 100 页的手册,切成 1000 个小段落),方便后续查找。
  4. 向量化:把每个小片段变成 “数字向量”(类似把文字翻译成 AI 能理解的数学语言)。
  5. 向量模型 + 向量库:把这些数字向量存起来,形成一个 “向量数据库”(相当于给知识建一个 “数字图书馆”,方便快速检索)。

第二步:在线回答(用户提问时,现查资料再回答)

目的:用户提问后,让大模型先查 “你的私有知识库”,再结合知识回答。

  1. 用户请求→Prompt:用户提问(比如 “我们公司新金融产品的收益率是多少?” ),变成大模型能理解的 Prompt。
  2. 向量化:把用户的问题也变成 “数字向量”(让 AI 理解问题的数学含义)。
  3. 相似检索:拿着这个 “问题向量”,去向量库里找最相关的知识片段(比如从金融产品手册里找到 “新理财产品收益率” 的段落)。
  4. 注入背景知识:把找到的相关知识(TopK 最相关的片段),和用户问题一起打包,变成新的 “提示词模版”。
  5. LLM 生成回答:大模型拿着 “新提示词”(包含用户问题 + 私有知识),生成更准确、更贴合你需求的回答。

三、举个栗子:用 RAG 回答 “公司新金融产品收益率”

  1. 离线准备:
    • 把公司 “新金融产品手册” 清洗、切分、向量化,存到向量库。
  2. 在线回答:
    • 用户问:“新金融产品收益率多少?”
    • 系统把问题向量化,去向量库找到手册里 “收益率 5.2%” 的片段。
    • 把问题 +“收益率 5.2%” 一起给大模型,大模型回答:“我们公司新金融产品的年化收益率是 5.2%,风险等级为中低……”

四、RAG 的技术重点(为啥这么设计)

  1. 相似度检索:得准确找到 “问题和知识片段的关联”(比如用户问收益率,得精准找到手册里的收益率段落,而不是风险说明)。
  2. 离线数据装载:得把私有知识处理成 AI 能懂的向量,还得存好,否则 “现查资料” 就会很慢、很准。

五、总结:RAG 就是给大模型配 “私人秘书 + 资料库”

  • 离线时:把你的私有知识整理成 “数字图书馆”(向量库);
  • 在线时:用户提问,先查这个 “图书馆” 找相关知识,再让大模型结合知识回答。

这样做的好处:

  • 回答更准确(用最新、最私有的知识);
  • 解决大模型 “知识过时、没有私有信息” 的问题;
  • 让大模型回答更贴合你的业务需求(比如金融、法律这类需要精准知识的领域)。

简单说,RAG 就是让大模型从 “闭着眼凭记忆回答”,变成 “睁着眼查资料回答”,更聪明、更实用~
posted @ 2025-06-16 21:08  m516606428  阅读(292)  评论(0)    收藏  举报