AI 脉络GitHub ↗
术语库概念对比学习路径AI 雷达参与共建GitHub ↗
检索入门基础概念

RAG

检索增强生成 · Retrieval-Augmented Generation

回答前先从外部资料中检索相关片段,再把它们作为上下文交给模型生成答案的方法。

最后核验 2026-09-05 · 已核验

用一个类比理解

像开卷考试:模型不用凭记忆硬答,而是先翻到可能相关的页,再根据找到的材料作答。

这篇能帮你解决什么

带着目标读,读完可以验证

  • 沿资料准备、检索和生成三个阶段定位回答错误
  • 用一组有证据标注的问题检查系统是否真的引用正确资料
开始深读 →先做一道自测 →查看 2 份来源 →
建议先看:LLM

它解决什么

  • 让回答基于私有或最新资料
  • 为答案提供可追溯来源
  • 减少对训练记忆的依赖

它不是什么

  • RAG 不保证资料正确
  • 检索到材料也不保证模型正确引用
  • 它不是训练模型

适合使用

  • 知识频繁更新
  • 内容来自企业或个人资料库
  • 需要引用来源

暂时别用

  • 资料很少且可直接放进上下文
  • 任务主要改变输出风格或行为
  • 问题不依赖外部知识

常见失败方式

  • 只优化向量库忽略数据清洗
  • 切块破坏语义
  • 没有分别评测检索和生成

从一条带出处的回答理解#

用户问“未拆封商品能否退换”,系统先找到当前生效的规则,再据此回答并指向规则原文。RAG 的全称是 Retrieval-Augmented Generation(检索增强生成):外部检索为生成提供信息,而不是要求模型只依靠训练时形成的参数回答。1

分清离线准备和在线回答#

资料准备: 清理文档、保留标题和版本、组织可检索单元、记录访问权限、建立索引。Embedding(向量表示)是一种检索手段,关键词检索或组合检索也可以参与应用流程。

回答请求: 接收问题 → 检索候选资料 → 按需要筛选或重排 → 将片段及来源交给模型 → 检查回答与引用。

这里描述的是常见应用流程,不等同于原论文的完整训练架构。一个资料片段最好能回到具体文件、章节与版本;只有一串没有来源的文本,后续很难排错。

跟着一个失败案例排查#

教学情境: 新规则允许特定商品退换,旧规则不允许。系统却引用旧规则作答。

  1. 资料层: 新版本是否已进入资料库?旧版本是否标记失效?
  2. 检索层: 新规则是否在候选结果中?查询条件是否错误地排除了它?
  3. 输入层: 选中的片段有没有包含适用范围和例外条款?切块是否截断了关键限定?
  4. 生成层: 正确片段已经进入输入时,模型是否仍误读了条件?
  5. 引用层: 答案给出的来源是否确实支持该句话,而不只是与话题相关?

这样的拆分能帮助确定修改位置。仅看到“答案错了”,还不足以判断该换向量库、提示还是模型。

做一个最小评测#

准备一些真实问题,每题标记应使用的证据和允许的回答范围,再加入资料缺失、版本冲突和无权访问的情况。分别检查:相关证据是否被召回、回答是否忠于证据、引用是否匹配、没有依据时是否合理退出。2

下面只是教学记录示意,不是实测性能:

问题:未拆封商品能否退换?
应使用证据:规则 v2,第 3 节及其例外条款
实际召回:规则 v1
错误位置:资料或检索阶段
处理:修正版本管理后复测,再评估生成

不要把一个平均满意度分数当作全部依据;它可能掩盖检索失败、错误引用或越权访问等不同问题。阈值应根据业务风险、样本分布和人工复核能力决定。

什么时候先别搭 RAG#

资料很少、每次都需要整体阅读,可以先测试 长上下文。错误主要是输出格式不稳定,先看 结构化输出。需要改变稳定行为而不是提供新事实,再研究 微调。

检索到了资料也不代表资料可信。权限过滤应在信息暴露给模型前落实;把“请勿泄露”写进提示,不能代替访问控制。这是应用设计要求,不是 RAG 自动提供的保障。

检验理解 · 教学情境

你会怎么判断?

知识库里有正确的退换货规则,但系统回答错了。你发现发送给模型的片段只包含旧版规则。应该先改生成提示、换模型,还是检查资料版本与召回?

想好后,展开参考答案

先检查资料版本、索引更新、过滤条件和召回结果。正确证据没有进入模型输入,单独强化生成提示无法稳定补救。修复后,再检查模型是否忠于召回片段,以及引用是否真正支持答案。

可信来源

依据在哪里,能说明什么

正文中的编号链接对应下列资料。教学案例与操作建议由本站整理,不是原作者的实验结果或普遍保证。

来源 2官方文档OpenAI

Evaluation best practices — Q&A over docs

支持的结论:给出文档问答评测的任务、样本和指标设计思路,包括检索上下文与答案质量。

适用边界:文档中的示例阈值不是所有知识库系统通用的上线标准。

资料核验于 2026-09-05返回正文 ↑