1007 字
约 3 分钟
10
S20-B04 · 幻觉、冲突与语义漂移
适用读者:RAG 答得"像模像样但不对"的人。
前置:S20-B03。
覆盖旧文:575(280) 1071(109) 573(283) 577(115) 586(116) 572(270) 576(262) = 1,435 点。
覆盖扩展:E-S20-006(冲突处置)、E-S20-012(语义漂移)。
上一篇:S20-B03 · 检索与重排:向量、BM25、混合、HyDE
下一篇:S20-J01 · 评估。
1. 一句话结论
RAG 的幻觉分两种:检索没给对(可修),检索给了但模型不照做(难修)。前者占多数,所以先查检索。
| 类型 | 表现 | 归因 |
|---|---|---|
| 检索型幻觉 | 片段里没有,模型却答了 | 召回失败/分块切断 |
| 生成型幻觉 | 片段里有,模型改写/编造 | 提示词/模型约束不足 |
| 冲突型 | 片段与模型知识矛盾,模型选了后者 | 未声明优先级 |
| 语义漂移 | 检索结果越来越偏 | 索引/向量漂移(E-S20-012) |
2. 冲突处置:知识与文档矛盾时听谁的(E-S20-006)
默认策略:以检索到的文档为准(它是"最新事实"),并在提示词里明确写:
若资料与你的既有知识冲突,一律以资料为准;
若资料未覆盖,回答"资料未提及",不要推测。
| 策略 | 适用 |
|---|---|
| 文档优先 | 企业知识库(推荐) |
| 模型优先 | 文档不可信/过时 |
| 显式标注冲突 | 高风险场景(如医疗/合规) |
判据:"资料错了会怎样?" 后果严重 → 让模型显式标注"资料与常识冲突,请人工确认"。
3. 降低幻觉的六种手段
| 手段 | 说明 |
|---|---|
| 强制引用 | 要求答案附带来源片段 id |
| 提高召回(topK/混合) | 先保证"资料里有" |
| 拒答通道 | 允许回答"资料未提及" |
| 结构化输出 | 强制 JSON(含 evidence 字段) |
| 事实核验(二次调用) | 用另一轮检查答案是否有据 |
| 降低温度 | 减少发散(但会牺牲表达) |
"为什么"允许拒答"最有效":模型幻觉往往是因为"被要求必须回答"——给它一条"不知道"的出口,幻觉率会明显下降(推断,需按模型实测)。
4. 语义漂移(E-S20-012)
定义:随着文档/模型更新,同样的查询检索到的片段质量逐步下降。
| 原因 | 对策 |
|---|---|
| embedding 模型升级 | 全量重建索引(B02) |
| 文档分布变化(新术语) | 定期重跑评估集(J01) |
| 索引过期(删了文档没删向量) | 同步删除 + 定期校验 |
判据:"检索质量是慢慢变差还是一直差?" 慢慢变差 → 漂移;一直差 → 分块/模型选错。
5. 五个误区
| 误区 | 真相 |
|---|---|
| "换个强模型能治幻觉" | 检索侧问题换模型无效 |
| "提高温度更聪明" | 更发散、更容易编 |
| "要求模型必须回答" | 逼它编造 |
| "冲突时模型会自己判断" | 需显式声明优先级 |
| "索引建一次就够了" | 会漂移 |
6. 自检
- 三类幻觉的归因分别是什么?
- 冲突处置的三种策略?
- 六种降低幻觉的手段里哪个最有效?
- 语义漂移的三个原因?
- "一直差"与"慢慢变差"分别说明什么?
7. 下一篇
S20-J01 · 评估:离线指标、在线 A/B 与失败模式
幻觉讲完,下一篇讲"怎么证明改完更好了"。
本篇属于系列《S20 · AI 应用与工程》。旧文来源:A-575/1071/573/577/586/572/576;扩展点 E-S20-006/012。
S20-B04 · 幻觉、冲突与语义漂移
https://www.clxhxhhr.top/posts/5467/ 评论
0 条
还没有评论,先写一条吧。