TechNova的客服AI上周处理了一笔退货咨询。同一款WH-1000耳机,同一个问题,答案却从"30天"变成了"15天"。
没人给模型升级,没重新训练,没微调参数。变的只是答案从哪来——这次它先查了查公司知识库里的政策文档,版本4.1,上季度刚更新。
这就是RAG(检索增强生成)。不是某个工具,是一套让AI"先查资料再说话"的系统结构。它解决了一个被低估的问题:大模型的知识是冻住的,而现实世界一直在变。
模型没变聪明,只是换了个信息来源
Part 1里那个答错30天的AI,和这次答对15天的,是同一个模型。区别只在架构:前者从训练记忆里找答案,后者先检索、再生成。
训练数据里的退货政策是六个月前的快照。模型分不清新旧,只能把记得的东西自信地说出来。RAG把这个流程拆开——检索组件去知识库里捞最新文档,塞进上下文,让模型照着念。
模型还是那个模型,但答案的来源从"我记得"变成了"我查到的"。
这种结构让知识更新变得便宜。改文档就行,不用碰模型参数。版本控制、审计追踪、权限管理,都能在外部系统里完成。
但RAG不是万能的。它解决的是"知识时效性",不是"模型推理能力"。如果检索回来的文档本身有问题,模型照样会一本正经地胡说。
六个组件,按顺序跑
每个RAG系统都长这样:查询→检索器→知识库→重排序→上下文组装→生成。
查询(Query)是用户的问题。TechNova的场景里,就是"WH-1000怎么退货"。
检索器(Retriever)负责从知识库里找相关内容。最简单的实现是关键词匹配,但现代系统多用向量搜索——把文档和问题都转成高维向量,找语义相近的。
知识库(Knowledge Base)是外部存储。可以是数据库、文档系统、甚至另一个API。关键是它和模型解耦,能独立更新。
重排序(Reranker)解决检索精度问题。向量搜索可能捞回100篇文档,重排序用更精细的模型挑出最相关的3-5篇。
上下文组装(Context Assembly)把选中的文档格式化成模型能读的提示。这里藏着很多工程细节:文档太长要切分,格式要统一,还得留够token给模型输出。
最后生成(Generation)。模型基于组装好的上下文写回答,而不是靠训练记忆。
这六个环节,任何一个掉链子,都会让RAG变成"高级版的瞎编"。
容易混淆的概念:工具≠模式
市面上很多产品打着RAG旗号卖组件。向量数据库、嵌入模型、提示模板——这些只是实现手段,不是RAG本身。
你可以用Elasticsearch做检索,不用向量搜索。可以用规则引擎匹配文档,不用神经网络。RAG的核心是"先检索后生成"的结构,不是特定技术栈。
反过来,买了全套向量数据库也不等于做了RAG。我见过不少项目:文档灌进去了,检索精度一塌糊涂,重排序没有,上下文组装随便拼接,最后模型还是胡言乱语。
TechNova的例子之所以work,是因为每个环节都到位。政策文档结构化存储、版本号清晰、检索能精准定位到WH-1000条款、上下文组装保留了关键限制条件("15天"旁边跟着"自签收日起")。
缺任何一步,用户可能拿到"15天"但没注意到已经过了期限——技术上答对了,体验上照样翻车。
RAG的边界:它能做什么,不能做什么
它能 grounding(锚定事实)。让模型的输出和特定文档绑定,减少幻觉。
它能更新知识。知识库变了,答案就变,不用重新训练。
它能溯源。答案从哪篇文档来,可以追踪,方便审计和纠错。
但它不能提升推理能力。模型本身不会算微积分、不会写复杂代码、不会理解隐含意图——这些靠基座模型。
它也不能保证检索质量。知识库一团糟、文档过时、检索算法垃圾,RAG只会加速错误信息的传播。
TechNova的客服AI能答对15天,是因为有人维护了干净的知识库。如果政策文档里写着"30天"但忘了更新,RAG会把这个错误权威地传达给用户。
RAG是放大器,不是纠错机。好输入放大,坏输入也放大。
为什么现在聊这个
大模型落地企业场景,RAG几乎是标配。但落地姿势千差万别:有的当成万能药,有的做成高级搜索,有的干脆是套壳的提示工程。
TechNova的故事是个基准案例——它展示了RAG最朴素的收益:让AI的回答锚定在可更新、可审计的外部知识上。
但实现这个收益,需要六个组件协同,需要知识库治理,需要持续优化检索精度。不是买套向量数据库就完事的。
下一篇会拆更细的实现:向量搜索怎么work,嵌入模型选哪个,重排序有没有必要。以及一个更现实的问题——RAG和微调(fine-tuning)到底怎么选,能不能一起用。
热门跟贴