本阶段课程 · 知识库、检索与 RAG
知识库:文档解析、分段与版本Embedding、向量与语义检索RAG:从检索证据到生成答案记忆、RAG 与微调的区别
LESSON 22 / 36阅读约 7 分钟

Embedding、向量与语义检索

理解按意思找资料的方法,以及相似度为什么不等于事实可信度。

检索首先是找候选材料

知识库里可能有很多内容,但一个问题通常只需要其中几段。检索的任务就是从可访问资料中找出相关候选,再交给后续回答过程。检索结果不是最终答案,也不是事实已经验证的证明。

最熟悉的方法是关键词搜索:问题里出现一个订单号,就找包含这个订单号的记录。它对精确名称、编号和术语很有用,但对于不同说法表达同一意思的情况,可能漏掉相关内容。

语义检索怎样处理不同问法

用户可能问“临时有事来不了了,报名的钱怎么办”,规则标题却叫“退费与转让”。语义检索尝试根据意思匹配内容,而不是要求双方出现完全相同的词。

一种常见实现会使用嵌入模型,把文本转换成一组数值,叫作embedding或向量。可以把它理解为内容在某个计算空间里的表示:适合语义检索的模型会让某些相关文本具有更接近的表示,系统据此寻找候选。

你不需要计算这些数值,也不需要给每个数字解释一个独立的人类含义。真正需要关注的是:同类问题能否找到相关原文,不相关问题会不会也被硬塞一个结果。

向量数据库保存什么

向量数据库或支持向量搜索的系统,帮助保存这些数值表示并快速查找相近项。实际应用通常还保存原文、来源和其他字段,以便取回可阅读的内容,并过滤版本与权限。

检索后交给语言模型的通常是找到的文字片段及相关信息。不能把这个过程理解成把向量“神奇地还原”为原始文档;应用需要保留向量与原文的对应关系。为资料建立向量,也不等于训练回答问题的语言模型。

方法擅长什么典型限制
关键词或精确匹配订单号、产品型号、明确术语不同表达可能匹配不到
向量检索近义表达与语义相关内容相似不等于适用或正确
混合检索组合关键词与语义线索仍需合适筛选与评估
重排对候选进一步比较相关性候选里没有答案时,不能凭空创造证据

相似度为什么不是答案可信度

两段话都讨论退款,可能一段是现行政策,另一段已经失效。它们语义相关,却不能同时作为当前依据。“提前24小时可以退款”与“不足24小时不能退款”也高度相关,具体答案仍取决于用户的取消时间。

因此,还要检查对象、版本、日期和条件。一个高相似度数值,只表示按照某种方法比较时比较接近,不能直接解释为“答案有95%的概率正确”。

没找到答案时,怎样定位原因

先在原始文档中人工查找。如果原文有答案而系统没取回,可能是分段、关键词、筛选条件或检索排序的问题;如果原文根本没有答案,就需要补资料或明确告诉用户无法确认。

不要通过要求模型“必须回答”来掩盖检索缺口。下节会把检索与生成接起来,并说明RAG如何让这些来源真正进入回答过程。

交互演示 · 知识库开卷实验亲手控制证据,看答案如何变化。 6 分钟 · 教学模拟

检查一下理解

向量相似度较高,可以直接解释为答案正确概率高吗?

本节参考与继续阅读

下列章节用于核对概念与机制。本站以中文重新组织讲解,例子和练习为独立编写。

可选练习理解检索是在挑候选证据,而不是已经证明了答案。
练习目标

理解检索是在挑候选证据,而不是已经证明了答案。

使用本课规则,在普通 AI 对话里做一遍人工可核对的查找。后半段打开知识库开卷实验,观察版本筛选。本站实验按预设规则匹配,不运行真实向量计算。

用于查找的三段材料
青禾读书会活动规则|当前版本2026-09
活动时间:周日14:00—16:00。
人数:最多12人。
退费:活动开始前24小时可全额退款;不足24小时不退款,可转让名额。
阅读:不要求读完整本书,带来一个问题也可以参加。
停车:本规则没有提供停车费用信息。

跟着做一遍

下面的结果是本站编写的对照示例。实际工具的措辞可能不同,按每步的关键条件检查即可。

01

让它只找原文,不先回答

发送规则和问题,限制输出为相关原文。

发给 AI 的内容
材料:
青禾读书会活动规则|当前版本2026-09
活动时间:周日14:00—16:00。
人数:最多12人。
退费:活动开始前24小时可全额退款;不足24小时不退款,可转让名额。
阅读:不要求读完整本书,带来一个问题也可以参加。
停车:本规则没有提供停车费用信息。
问题:我临时有事去不了,报名的钱怎么办?
先不要给建议,只复制最相关的完整规则段落。
做完后,展开结果对照
对照示例 · 不要求逐字相同

应找出“退费:活动开始前24小时可全额退款;不足24小时不退款,可转让名额”。

为什么这样做问题里没有“退费”两个字,意思仍可能对应到退费规则。理解近义表达,是语义检索想帮助解决的问题。

02

换问法,看证据是否相同

继续问第二种说法,同时保留规则条件。

发给 AI 的内容
问题换成:开场前两小时取消,能拿回报名费吗?仍然先找相关原文,再说明两小时属于哪个条件。
做完后,展开结果对照
对照示例 · 不要求逐字相同

同一条退费规则;两小时不足24小时,按给定规则不退款,可以转让。

为什么这样做找到了相关段落后,还要比较具体条件。相似度高不是“可以退”的证明。

03

在实验里取消版本过滤

打开知识库开卷实验,选退费问题,勾选旧规则并取消“检索前排除失效版本”,点击运行;再开启过滤运行一次。

做完后,展开结果对照
对照示例 · 不要求逐字相同

未过滤时会同时显示新旧证据,并说明旧版48小时规则已失效;排除失效版本后只使用当前规则。

为什么这样做检索不只比文字意思,还需要检查日期、适用范围和访问权限。

刚才用到的一个新词

语义检索与嵌入

语义检索尝试按意思找材料;嵌入是把内容变成可比较的数值表示,常用来实现这种查找。

没做出来?从这里排查

取回一堆含“活动”的无关段落

把问题收窄到费用或时间,检查原文标题和片段是否清楚。

查到的段落来自别的活动

加上活动名称与有效版本条件,不能只按相似语句选证据。

换一个例子验证

给一条规则写三种问法。

  1. 一种使用原文关键词,一种用口语,一种带具体条件。
  2. 让 AI 为每种问法指出原文依据。
  3. 加入一个完全未覆盖的问题,检查是否会硬找无关段落。
检查标准你能判断“找得对”与“答得对”分别是哪一步。

完成状态仅保存在当前浏览器,可再次点击取消。