大语言模型幻觉检测新工具与数据集

介绍RefChecker框架及其基准数据集,通过知识三元组结构实现细粒度幻觉检测,覆盖零上下文、噪声上下文和准确上下文三种场景,提供GPT-4/Claude 2等自动检测工具和人工标注方案。

新工具与数据集助力大语言模型幻觉检测

采用知识三元组而非自然语言表述事实,可实现更细粒度的判断。

幻觉检测挑战

大型语言模型(LLM)存在显著缺陷:倾向于产生幻觉,即作出听起来合理但事实不准确的断言。有时这些幻觉非常微妙,例如断言基本正确但日期误差仅一两年。

RefChecker 框架

为检测此类微妙幻觉,某中心发布 RefChecker(引用检查器),包含新型幻觉检测框架和用于多场景评估的基准数据集。与传统使用句子或短语表征LLM文本事实断言的方式不同,RefChecker 采用具备<主体、谓词、客体>结构的知识三元组——与知识图谱数据结构一致。这种细粒度评估方式使LLM输出分析更精确且信息量更丰富。

基准数据集涵盖三种场景:

  1. 零上下文:LLM无参考文本直接回答问题(100个样例)
  2. 噪声上下文:提供可能包含错误信息的检索文档列表(检索增强生成/RAG场景,100个样例)
  3. 准确上下文:提供单一准确文档(100个样例)

检测机制三要素

1. 参考文献获取

RefChecker 支持三种参考文献获取方式,对应基准数据集的三种数据类型:

  • 零上下文(开放问答)
  • 噪声上下文(检索增强生成)
  • 准确上下文(文本摘要)

数据来源包括 NaturalQuestions 开发集(闭卷问答)、MS MARCO 开发集(RAG)和 databricks-dolly-15k(摘要/闭卷问答/信息抽取)。

2. 评估粒度

通过将LLM响应分解为知识三元组,可检测单个知识点的真实性。例如句子"Richard Mulligan在《Partridge Family》中饰演Kincaid先生"可拆解为:

  • 〈Richard Mulligan, 饰演角色, Mr. Kincaid〉
  • 〈Mr. Kincaid, 出现于剧集, The Partridge Family〉

3. 声明分类

采用三维分类法而非二元标签:

  • 蕴含(绿色对勾):参考文献支持的声明
  • 矛盾(红色叉号):参考文献反驳的声明
  • 中立(橙色问号):需要额外证据验证的声明

技术实现流程

RefChecker 包含两个可配置模块:

  1. 声明三元组提取器 (E):初始版本使用 GPT-4 和 Claude 2,后续将提供 Mixtral-8x7B 开源提取器
  2. 幻觉检查器 (C):提供基于 GPT-4、Claude 2 和 RoBERTa-NLI 的自动检查器,后续将增加 AlignScore 和基于 Mistral 的开源检查器

自动检查器多数投票结果与人工标注一致性最高。即将发布用于人工评估的标注工具。

快速开始

RefChecker 已在 GitHub 开源库发布,支持 pip 安装。详细使用指南包含:

  • 知识三元组提取方法
  • 三元组层级幻觉检测流程
  • 自定义LLM评估方案

精细幻觉检测是制定有效缓解策略的第一步。欢迎通过 GitHub 提交反馈和改进方案。

致谢:Lin Qiu, Zheng Zhang

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计