RAG(Retrieval-Augmented Generation,检索增强生成)是在回答时检索相关资料,再把资料作为上下文交给生成环节。它像“开卷答题”:让模型参考参数之外的材料,但开了书不代表一定找对、读对或答对。
从问题到答案,经过三个环节
以一个虚构的报销手册问答为例,资料写着“餐饮每日上限 100 元、交通需发票、提交主管审核”。这些只是解释流程的假设条款,不是任何单位的实际政策。
- 检索:根据用户关于报销的问题,找到相关手册片段。
- 增强:把问题、条款及其版本或出处放入模型上下文。
- 生成:根据材料组织答案,并使关键结论可追溯到相应条款。
系统不一定先判断“模型不知道”才检索;何时检索、用关键词还是向量、如何筛选资料,是具体实现的选择。把文件放进目录也不等于已经完成解析、索引和检索。
参数知识与外部资料,是不同的记忆来源
Lewis 等人的 2020 年 RAG 论文 将预训练模型中的参数化记忆与检索访问的非参数记忆结合,在知识密集任务上评价。论文摘要描述了检索模型与生成模型的组合,不能把所有“搜索后交给模型”的应用都视为论文结构的完整复现。
日常产品中,外部资料的价值是补充企业私有信息、可更新内容和可核查出处,而不是把资料瞬间写入模型权重。
与微调不是谁全面替代谁
| 关注点 | RAG | 微调 |
|---|---|---|
| 主要改变 | 提供给生成环节的资料与上下文 | 通过训练改变权重 |
| 更新材料 | 需要解析、索引与版本管理 | 需要相应训练与评估流程 |
| 常见用途 | 带来源的知识访问与问答 | 任务行为、风格或能力适配 |
| 仍需检查 | 检索、权限、证据和生成 | 数据质量、泛化和行为变化 |
两者可以组合。成本取决于数据规模、更新频率、检索与模型调用等条件,不能笼统说 RAG 总是更便宜或更准确。微调概念另见 LoRA 与评估边界。
资料加入后,还可能在哪些地方出错
检索可能漏掉关键段落,旧版本可能排在新版之前,权限过滤可能错误,切分也可能拆散条件。生成环节还可能忽略否定词、拼接冲突条款,或引用一个其实不支持答案的链接。
回到虚构报销例子:若只检索到“上限 100 元”,漏掉“每日”或适用人员,答案仍可能误导。来源存在不能代替逐句核对,资料不足时应明确说无法确定,而不是补造公司规定。
分层评估,才知道该修哪里
对固定问题集,先检查有没有检索到正确版本与获授权证据,再查答案是否被证据支持、是否遗漏条件。检索没命中和模型误读需要不同处理,不应都归为“提示词不够好”。
更新资料后还应检查索引、缓存与访问范围是否同步。本文是概念与流程整理,不报告任何知识库实测准确率,也不承诺消除幻觉或即时掌握新资料。