7.4 幻觉检测与工具调用验证

幻觉在智能体中的危害远超聊天场景,因为直接转化为可执行的操作。本节阐述幻觉的三类防线、工具名检测、参数范围验证、事实核查机制,以及配合自修正的完整幻觉检测引擎。

7.4.1 智能体场景中的幻觉危害

幻觉(Hallucination)在智能体中危害极大,因为输出直接转化为行动:

幻觉类型
示例
后果

工具幻觉

调用不存在的 send_email_to_ceo()

调用失败,错误消息反复重试

参数幻觉

file_path="/root/.ssh/id_rsa"

访问敏感文件或注入攻击

事实幻觉

“API 端点是 example.com/api/v2”(实际是 v1)

请求错误,数据丢失

能力幻觉

声称可以执行“删除数据库”操作(无权限)

执行失败,暴露权限漏洞

关键特点:

  • 不可撤销性:工具执行后难以回滚(删除、转账等)

  • 级联失败:单个幻觉引发智能体反复重试,消耗 token

  • 安全漏洞:幻觉可能绕过权限检查

7.4.2 幻觉检测的三层防线

幻觉检测包括三层递进式的防线机制:

图 7-4:幻觉检测三层防线 —— 从工具调用验证到事实核实的多层防护

层 1: 工具名幻觉检测

直接检查工具是否在注册表中存在:

层 2: 参数幻觉检测

参数可能虽然合法但不合理(例如超过实际限制):

层 3: 事实幻觉检测

检查输出中的事实陈述是否与已知知识库一致:

完整的幻觉检测引擎

整合三层防线的完整幻觉检测引擎实现如下:

自修正机制

当检测到幻觉时,系统不是直接失败,而是将纠正信息反馈给模型,让其自我修正:

流程示例

完整的幻觉检测使用流程示例如下:

总结

幻觉检测的三层防线:

  • 工具名检查:高置信度检测,支持纠正建议

  • 参数检查:类型和范围验证

  • 事实检查:知识库对照核实

配合自修正机制,能有效提升智能体的可靠性,减少幻觉导致的级联失败。

最后更新于