导语:在智能客服系统中,“AI幻觉”往往不是模型“乱说”,而是系统“喂错”。从工程角度来看,控制输入质量,远比更换模型更关键。本文将从RAG底层出发,拆解知识切分与检索优化,如何从源头降低机器幻觉。


一、很多幻觉问题,其实不在模型

在实际项目中,一个很常见的误区是:

👉 一旦AI回答不准,第一反应是:

  • 模型不行
  • 参数不够
  • 要不要换更强的大模型

但从工程实践来看,这类问题往往并不发生在“生成端”,而是发生在“输入端”。

在RAG系统中,本质逻辑非常清晰:

模型负责生成
检索决定上限
Chunk决定检索质量

也就是说:

👉 大模型能回答什么,取决于你给了它什么

在易科势腾的RAG工程实践中,我们更倾向于优先优化:

  • 知识切分(Chunk)
  • 检索策略(Retrieval)

而不是一开始就调整模型。


二、固定长度切分,为什么是幻觉的高发源头

在很多RAG系统初期,默认做法是:

每500字符切一个Chunk

这种方式实现简单,但在复杂业务文档中,会带来一个非常隐蔽的问题:

👉 上下文污染

从工程经验来看,固定长度切分几乎是所有系统早期的“默认选择”,但也是最容易被忽略的风险来源。

典型问题1:语义割裂

例如客服文档:

如果用户购买的是旗舰版,其退换周期为30天;基础版为7天。

如果切分点刚好在中间:

👉 模型可能只拿到“30天 / 7天”,却丢失了前置条件

结果就是:

👉 答对一半,错一半


典型问题2:内容拼接(最常见)

例如一段文档:

合作伙伴
本田中国 / 中信银行

公司简介
成立于2005年

如果被切在同一个Chunk中:

👉 模型会默认这些内容“都相关”

结果就是:

👉 回答“合作伙伴”时,顺带输出公司简介

这就是典型的:

👉 拼接型幻觉


三、从“切文本”到“切知识”:结构感知切分

随着知识库规模变大,固定长度切分的问题会越来越明显:

  • 上下文漂移
  • 参数串联
  • 检索不稳定

因此工程实践正在转向:

👉 结构感知切分(Structure-aware Chunking)

核心原则很简单:

  • 按标题 / 段落 / 小节切分
  • 不跨语义边界
  • 每个Chunk都是“完整表达”

在易科势腾的项目中,这种方式本质上做了一件事:

👉 把Chunk从“文本片段”,变成“知识单元”

例如:

{
  "section": "合作伙伴",
  "content": "易科势腾合作伙伴包括本田中国、中信银行等。"
}

这样的Chunk在检索和生成阶段:

👉 更稳定、更可控、更容易被引用


四、FAQ结构:不是必须,但非常“AI友好”

在结构化切分基础上,可以进一步做一层优化:

👉 转换为FAQ结构

{
  "question": "易科势腾有哪些合作伙伴?",
  "answer": "包括本田中国、中信银行等。"
}

从工程角度来看,这一步的价值在于:

  • 更贴近用户提问方式
  • 提升检索匹配精度
  • 提高AI直接引用概率

但需要注意:

👉 FAQ只是增强手段,不是前提条件
👉 核心仍然是Chunk语义完整


五、检索阶段:比“多召回”更重要的是“少污染”

很多系统为了避免漏召回,会:

Top10 / Top20 全部喂给大模型

但工程经验表明,这反而会导致:

👉 信息过载型幻觉

因为模型会默认:

👉 “你给我的,都是相关的”


更合理的做法是:

1️⃣ Metadata前置过滤

在易科势腾的实践中,我们通常会先做:

业务线过滤 + 产品过滤 + 时间过滤

例如:

  • 产品 = 手机
  • 文档类型 = 售后政策

👉 先过滤,再向量检索

可以直接减少大量“串台问题”。


2️⃣ Rerank + 阈值控制

核心策略只有一句话:

👉 宁缺毋滥

  • Top-K 控制在 3~5
  • 设置相似度阈值
  • 低于阈值 → 直接不回答

在客服场景中:

👉 “不知道”远比“胡说”更可接受


六、工程实践:优化RAG,比换模型更有效

在易科势腾的实际项目中,曾出现典型问题:

👉 政策类内容“跨部门串答”

初期尝试:

  • 换模型
  • 调prompt

效果都有限。

最终优化路径是:

  1. 重构Chunk切分(从固定长度 → 结构感知)
  2. 建立Metadata过滤体系
  3. 增加生成约束(只基于上下文回答)

结果:

👉 在未更换模型的情况下
👉 幻觉率显著下降(约70%量级)

这类案例说明一个非常关键的结论:

👉 RAG工程质量,决定了智能客服的下限


七、结论:减少幻觉,本质是控制信息边界

从工程角度来看,AI幻觉并不是一个“模型问题”,而是一个“信息控制问题”。

可以总结为三点:

  1. Chunk决定信息边界(是否混入无关内容)
  2. 检索决定信息范围(是否召回错误内容)
  3. 输入决定输出质量(模型只是在“复述你给的世界”)

一句话总结:

如果Chunk是混乱的,检索是宽松的,那么再强的大模型,也只能在错误信息上“认真发挥”。


八、总结

在智能客服场景中:

👉 减少幻觉,不是“让模型更聪明”
👉 而是“让模型少看错东西”

在这一点上,像知识切分、结构化表达、检索约束这些看似基础的工程能力,反而决定了系统是否真正可用。

从长期来看,这些能力,也正是企业知识能否被AI稳定理解和引用的关键。


Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐