RAG的工作流程与目标

发布时间:2026/10/17 8:08:02

RAG的工作流程与目标 目录RAG的工作流程知识库的构建调用RAG的目标如何提高Query和知识库的匹配度如何优化Query如何优化知识库扩展Embedding模型RAG的工作流程上一节内容如何与大模型交互从提示词工程到RAG介绍到了RAGRetrieval-AugmentedGeneration检索增强生成。实际上只要是先搜索再把搜索到的信息用来辅助回答问题都叫做检索增强生成如跟豆包对话互联网搜索Sql语句查询等等。大模型中的RAG是指给大模型外挂一个知识库提问的时候先查资料再让大模型照着资料回答问题。核心就两个大步骤一个叫构建知识库一个叫调用。我们用下面这张图去讲讲这两个大步骤知识库的构建如上图中虚线框中的步骤就是是构建知识库了。它里面又分了如下三个步骤1整理文档Documents收集各种各样不同类型的原始文档格式包含 Word、PDF、PPT、Excel、图片、视频、网页等。通过人工或者AI辅助去做处理把它们全部都处理成纯文字格式。2文本切片Chunk / Chunking将处理完成的大段纯文字切分成一个个独立的知识切片。切片字数范围一般一两百字两三千字常用 六百~八百 字切片的原则是尽量让每一个切片能够独立完整表述一个主题或者讲清一件事情人工、代码、AI 辅助均可参与切片工作。3存入向量数据库Vector DataBase我们需要用到Embedding模型将知识切片转化成数学向量存入向量数据库中。所谓的数学向量就是一串数字用数学的语言描述了你原本的那段文字。每一条数学向量和你的每一个文字的知识切片都是一一对应的关系且它极大程度地包含了原本那段文字里面要表达的语言的意思。调用1用户提问Query用户的Query是一个问题或者是一个任务将这段文字描述送入Embedding模型必须要和生成知识库的Embedding模型一致生成代表问题语义的数学向量。2向量数据库相似度检索Retrive拿着问题向量和向量数据库里预先存储的向量逐一计算相似度系数得到0~1之间的一个数值数值越接近 1 代表内容越匹配。筛选出相似度较高的向量再通过向量与知识切片一一对应的映射关系还原出对应的原始文本知识切片。不存在完全没有相似度的情况只会出现相似度偏低。一条数学向量跟几千条数学向量去比较相似度计算量虽然大但是一点都不慢。原因就是这个向量数据库对这种向量检索的过程专门做了索引做了加速。所以你哪怕是上百万条它的检索速度都不会特别慢。3提示词拼接Augment将①系统提示词System Prompt②检索得到的相关知识切片文本Relevent Context ③用户原始提问Query这三部分的内容拼接成最终的提示词。4交给大模型LLM生成答案Generate将拼接完成的完整提示词交给大语言模型如豆包等由大模型输出回答返回给用户。RAG的目标如何提高Query和知识库的匹配度这个RAG的最终目标就是希望左边的用户Query能够检索出能真正跟它问题相关的知识切片即相似度系数比较高用以辅助大模型给用户输出精确的回复。想要提升用户Query与知识库切片的匹配效果不能只优化知识库一侧用户 Query和知识库两边都要做优化两者策略要互相匹配。如何优化Query用户原始提问经常存在缺陷缺少主语、依赖对话上下文、对比类问题、多问题连环提问、反问句式等直接拿去检索知识库效果很差。在标准 RAG 检索之前增加一个小 AgentAgented RAG对原始问题做改写、补全。如何优化知识库知识库的匹配的内容和回答的质量息息相关我们需要梳理该业务场景下用户的问题及情况收集的资料要尽量能够覆盖业务场景的情况。虽然写的很简单但是RAG的优化工作是无穷的比如有一天收集到100个用户问题有30个问题在搜索的时候知识库匹配的相关度系数比较高还有40个问题在搜索的时候知识库匹配的相关度系数比较低。那么就应该把这些问题导出来去分析原因并不断迭代知识库。扩展Embedding模型Embedding模型是一种专门的向量化模型它跟我们平时用的豆包、DeepSeek、通义千问这些不太一样。我们平时用的豆包通义千问这个叫大语言模型。就跟大语言模型一样。Embedding模型也有很多种有阿里巴巴提供的Embedding模型有字节跳动提供的Embedding模型我们都是要做选型的不同的Embedding模型也有不同的功能和作用。
延伸阅读

更多相关文章

2026/10/16 12:16:12

Codex Hooks 实战指南:从“安全第一”到“自动化省心”

引言:Hooks 很香,但别急着“全自动” Hooks(钩子)是 Codex 中一个极具吸引力的功能:它允许你在特定事件(如命令执行、会话开始)发生时,自动运行预设的脚本。想象一下,代…

2026/10/16 20:20:40

Kimi LeetCode LCP 31. 变换的迷宫 Rust实现

以下是 LCP 31. 变换的迷宫 的 Rust 实现,采用 BFS 状态压缩 的思路,参考了 C 题解的状态设计 。---解题思路状态设计:f[time][x][y][scroll_state] 表示在时刻 time 位于 (x, y)、卷轴使用状态为 scroll_state 时的最短步数。状态值 含义…

2026/10/10 19:35:24

Oracle 19c RAC登录风暴引发library cache lock生产故障分析

故障环境为 Exadata 一体机 Oracle 19.9 RAC,出现部分业务用户无法连接数据库、其他用户登录正常的现象,本文完整还原故障现象、排查思路、内核 Bug 根因、解决方案。一、故障现象 凌晨 01:45,生产数据库收到异常告警短信,告警等待…

2026/10/17 8:05:04

策略梯度强化学习中的方差与偏差优化:从REINFORCE到GAE

很多人第一次跑通 REINFORCE 的时候,都会遇到一个非常诡异的现象:同一份代码、同一个随机种子,这次训练能跑到两百分,下次直接瘫在二十分。把梯度打印出来一看,更新方向一会儿朝东一会儿朝西,优化器吃掉了所…

2026/10/17 8:05:04

端口镜像与链路聚合:原理、配置与实战避坑指南

1. 为什么我要把端口镜像和链路聚合放在一起讲刚入行那会儿,我一直觉得端口镜像和链路聚合是两码事:一个用来抓包分析,一个用来增加带宽和冗余,八竿子打不着。直到有一次在机房里排查一个"时通时断"的故障,我…

2026/10/17 8:05:04

用Kotlin+XML复现微信界面:RecyclerView与Fragment实战指南

简介:一份基于Android Studio打造的仿微信界面完整工程,面向Android入门与中级开发者,通过实战项目演示如何搭建类似微信的社交应用UI,帮助解决界面设计不知从何下手的问题。资源共1041个文件、压缩包约24.25MB,涵盖XM…

2026/10/17 8:05:04

批量下载IEEE论文:Python脚本自动化文献整理的完整方案

简介:这是一款针对科研人员与高校学生的IEEE论文批量下载工具,基于Python开发,可借助DOI号或搜索关键词,从IEEE Xplore数字图书馆自动获取论文并保存为PDF,大幅节省文献调研和综述撰写时间,尤其适合综述写作…

2026/10/17 8:00:04

C++迷宫游戏:面向对象工程实践与跨平台终端开发

1. 这不是玩具&#xff0c;而是一次扎实的C工程实践 “C迷宫游戏”这五个字&#xff0c;乍看像学生课设作业&#xff0c;但在我带过的几十个模拟项目里&#xff0c;它恰恰是检验C核心能力最锋利的一把尺子——不是考你会不会写 cout << "Hello World" &…

2026/10/16 5:33:43

Python调用Gemini Structured Outputs实现工单路由门禁

客服工单最怕的不是模型“答错一句话”&#xff0c;而是它给出一段看起来合理的说明&#xff0c;程序却从中猜错优先级。通俗做法是&#xff1a;要求模型只交 JSON&#xff08;JavaScript Object Notation&#xff0c;轻量数据格式&#xff09;&#xff0c;再让代码验证它。Gem…

2026/10/16 4:03:48

Spring Boot超市进销存系统毕设实战:从需求拆解到答辩通关

最近带的一个学生项目组里&#xff0c;有A同学跑来问我&#xff1a;选什么毕设题目最稳妥&#xff0c;既能让评审老师觉得工作量够&#xff0c;又不会在答辩时被问到语无伦次。我第一反应就是推荐基于Spring Boot的超市仓库管理系统——也就是超市进销存系统。这个题目乍一看平…

2026/10/15 13:42:16

Flutter StatefulWidget 生命周期核心解析

很多刚开始接触 Flutter 的朋友&#xff0c;在看完一堆“Hello World”和基础组件之后&#xff0c;大概率都会撞上同一堵墙&#xff1a;StatefulWidget 里那堆 initState、build、dispose 方法&#xff0c;到底什么时候被调用&#xff1f;为什么顺序是那样&#xff1f;在里面到…

2026/10/17 0:04:32

PlanarSLAM:面向曼哈顿世界的点线面联合SLAM系统

简介&#xff1a;本资源是面向机器人视觉与SLAM研究者的C开源RGB-D SLAM系统实现&#xff0c;专为结构化室内场景&#xff08;如办公室、走廊&#xff09;设计&#xff0c;通过融合点、线、平面三类几何特征并引入“曼哈顿世界”假设&#xff0c;显著提升位姿跟踪鲁棒性与稠密地…

2026/10/17 0:04:32

TDH Workflow调度实战:从DAG依赖驱动到任务编排与故障排查

1. 从一个调度脚本说起&#xff1a;TDH Workflow到底在解决什么问题第一次接触TDH的Workflow&#xff0c;是在一个数据清洗项目里。当时团队每天要跑几十个ETL任务&#xff0c;任务之间有严格的先后依赖——A表清洗完才能跑B表的关联&#xff0c;B表跑完才能触发C表的聚合。最开…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑