如何减少AI智能体幻觉?从证据约束到人工审核的可靠性策略
AI智能体的幻觉不仅限于捏造事实。它也可能表现为忽略约束条件、逻辑矛盾,或在任务从未执行的情况下声称已完成。可靠性策略应根据具体情况,将不同类型的错误交由证据、规则、工具和人工进行管控。
首先,识别错误类型
- 事实性错误:捏造不存在的信息或引用。
- 指令偏离:忽略用户约束、格式要求或时间范围。
- 逻辑矛盾:计算、因果关系或不同时间点陈述之间不一致。
- 工具状态误报:声称操作已完成,但实际上从未执行。
不同类型的错误需要不同的管控手段。事实性问题需依赖证据约束,格式问题可通过Schema处理,计算应交由程序完成,外部操作必须使用真实的工具返回值。
第一层:限制信息来源与回答边界
提示词应明确指定允许使用的材料,禁止猜测,并定义如何处理不确定性。RAG可先检索已审核的业务文档,再由智能体基于检索内容作答并展示来源。但如果知识库本身过时或检索结果有误,RAG同样会将这些错误带入答案。因此,必须对版本和来源进行管理。
第二层:将确定性任务委托给规则与工具
| 内容 | 更可靠的验证方法 |
|---|---|
| JSON/字段 | Schema校验 |
| 金额与统计数据 | 使用程序重新计算 |
| 数据库结果 | 使用只读查询并验证返回结果 |
| 外部事实 | 保存可追溯的来源 |
| 发送/写入状态 | 检查工具的实际返回值与最终状态 |
模型可以提供解释,但不应独自承担证明操作已成功执行的责任。
第三层:在输出生成后执行一致性检查
逐条核对关键事实与证据,验证时间范围、单位、实体和引用是否一致。第二次模型调用有助于发现问题,但“另一模型也同意”不能作为事实的证明。当验证失败时,系统应返回需要确认的项目,而不是反复重新生成输出直到其看起来合理为止。
第四层:根据风险等级确定人工审核需求
高风险任务在执行前应进入审核队列,包括支付、删除、公开发布和敏感数据导出。低风险任务可通过抽样进行审核。每次人工修正都应记录错误类型、触发条件和修复方法,随后将其加入回归测试集。
可靠性验收清单
- 响应中的关键事实可追溯至源材料或工具结果。
- 系统在信息不足导致不确定时明确声明。
- 数值、格式和权限通过确定性规则进行审查。
- 系统在没有实际执行结果的情况下不声称已完成。
- 高风险副作用必须经过确认。
- 失败案例被纳入持续评估集。
常见问题
能否完全消除幻觉?
无法保证完全消除。目标应是识别高风险错误,降低其发生概率,并确保错误不会直接触发不可逆操作。
仅靠RAG就足够了吗?
不够。RAG改善了证据溯源,但仍需进行检索评估、输出验证、工具核验和风险分级。
多模型投票能证明事实正确吗?
不能。多个模型可能共享相同的错误。投票可用于识别分歧,但事实仍需通过源材料或确定性工具进行验证。
下一步行动
建议从选择一种高频故障类型开始,在SmaugBrain工作流中添加溯源、验证和人工确认节点,并使用历史故障样本验证更改是否有效。