事实核查技能Skill fact-check

该技能用于系统验证AI生成内容中的声明,通过独立验证过程捕捉幻觉和未支持的断言,确保信息准确性。关键词:事实检查、幻觉检测、内容验证、AI生成内容、独立验证、LLM输出验证。

AI应用 0 次安装 0 次浏览 更新于 3/9/2026

名称: 事实检查 描述: 根据来源验证生成输出中的声明。用作内容生成后的独立过程,以捕捉幻觉。关键约束 - 不能可靠地与生成过程结合在单一过程中。 许可证: MIT 元数据: 作者: jwynia 版本: “1.0” 领域: 研究 集群: 方法论

事实检查技能

系统验证生成内容中的声明。设计用于捕捉幻觉、虚构和未支持的断言。

为什么独立过程重要

根本问题: 大型语言模型通过预测下一个内容来生成合理的内容。同样的机制会产生幻觉——听起来正确但并非真实的自信陈述。生成模式下的LLM无法可靠地捕捉自己的幻觉,因为:

  1. 注意力集中在生成上,而不是验证
  2. 连贯性压力使错误声明在上下文中感觉正确
  3. 相同的权重会产生并确认错误
  4. 没有外部基础来反驳虚构

解决方案: 验证必须是独立的认知过程,具有:

  • 专注于每个声明的新鲜注意力
  • 明确的来源检查(而非内存/训练数据)
  • 对内容持对抗态度
  • 尽可能的外部基础

诊断状态

F1: 无验证过程

症状: 内容生成并交付,未经任何事实检查。 风险: 幻觉未被检测到就传递出去。 干预: 在交付前运行验证过程。提取声明,根据来源检查每个。

F2: 自我验证(无效)

症状: 在同一过程中要求“检查你的事实”同时生成。 风险: 错误信心——错误被同一过程确认。 干预: 先完成生成,然后运行独立的验证过程,有明确的来源要求。

F3: 基于内存的验证(不可靠)

症状: 根据“我所知道的”检查声明,没有外部来源。 风险: 幻觉被虚构知识验证。 干预: 要求每个验证声明有明确的来源引用。如果无来源,标记为未验证。

F4: 选择性验证

症状: 只检查部分声明;其他假设正确。 风险: 未检查的声明可能包含错误。 干预: 系统提取所有可验证声明。检查每个,或明确标记未检查项。

F5: 验证完成

症状: 所有声明提取,每个根据来源检查,置信度分配。 指标: 存在来源引用,未验证声明标记,置信度明确。

验证过程

阶段1: 声明提取

从内容中提取每个可验证陈述。

要提取的声明类型:

  • 事实断言(“X是Y”,“X导致Y”)
  • 统计数据和数字(“40%的…”,“在2023年…”)
  • 归因(“根据X…”,“研究显示…”)
  • 定义(“X意味着…”,“X被定义为…”)
  • 历史声明(“X发生在…”,“X由…创立”)
  • 因果声明(“X导致Y”,“X防止Y”)
  • 比较声明(“X优于Y”,“X是最大的…”)

要跳过的内容:

  • 明确标记为意见
  • 假设和推测(如果标记)
  • 从陈述前提的逻辑推导
  • 直接引用(验证归因,而非内容)

阶段2: 声明分类

按可验证性分类每个声明:

类别 描述 验证策略
可验证-硬 数字、日期、名称、引用 必须与来源完全匹配
可验证-软 一般事实、过程、机制 来源应基本支持
归因 “X说…”,“根据…” 验证来源存在并说过类似内容
推断 从证据得出的结论 验证前提,评估推理
意见作为事实 主观陈述作为客观事实 标记为需要重新措辞或限定

阶段3: 来源验证

为每个声明尝试验证:

## 声明验证日志

### 声明1: “[精确声明文本]”
- **类别:** [可验证-硬/软/归因/推断]
- **来源检查:** [具体来源]
- **发现:** [确认/部分支持/未找到/矛盾]
- **置信度:** [高/中/低]
- **注释:** [差异,需要限定]

### 声明2: ...

验证结果:

结果 含义 行动
确认 来源明确支持声明 保留,引用来源
部分支持 来源支持部分,而非全部 限定或缩小声明
未找到 未找到来源 标记未验证,考虑移除
矛盾 来源说相反内容 移除或纠正
过时 来源过时;当前状态可能不同 更新或添加时间性警告

阶段4: 置信度分配

为内容分配整体置信度:

级别 标准
所有关键声明已验证;未发现矛盾
大部分声明已验证;一些未验证但合理
重要声明未验证;一些需要纠正
不可靠 发现多个矛盾;需要重大修订

幻觉模式

常见幻觉类型需警惕:

1. 合理虚构

模式: 听起来正确但不存在具体细节。 例子: 虚假论文引用、不存在的统计数据、虚构引用。 检测: 根据主要来源验证具体声明。

2. 自信推断

模式: 合理推断陈述为既定事实。 例子: “研究显示…”(无具体研究),“专家同意…”(无引用)。 检测: 要求任何外部支持声明有具体来源。

3. 时间混淆

模式: 混合不同时期信息。 例子: 旧统计数据呈现为当前、已失效组织描述为活跃。 检测: 检查来源日期,验证当前状态。

4. 归因漂移

模式: 正确信息归因于错误来源。 例子: 引用分配给错误人物、发现归因于错误研究。 检测: 专门验证归因,而不仅仅是内容。

5. 融合

模式: 合并多个来源细节为单一虚构来源。 例子: 虚构研究结合了不同论文的真实发现。 检测: 验证具体来源存在并包含所有归因声明。

6. 精度夸大

模式: 给模糊知识添加虚假精度。 例子: “大约47.3%”当仅支持“大约一半”。 检测: 检查来源是否确实提供该精度水平。

验证检查清单

发布事实检查内容前:

  • [ ] 声明提取? 所有可验证陈述识别
  • [ ] 来源检查? 每个声明根据外部来源验证
  • [ ] 具体而非内存? 验证使用实际来源,非LLM训练数据
  • [ ] 矛盾标记? 声明与来源冲突记录
  • [ ] 未验证标记? 无来源声明明确识别
  • [ ] 置信度陈述? 整体可靠性水平传达
  • [ ] 独立过程? 验证在生成后完成,而非期间

与研究技能集成

研究阶段 事实检查角色
研究期间 验证来源本身中的声明
合成后 验证合成是否准确代表来源
交付前 最终过程捕捉输出中的幻觉

交接模式:

  1. 研究技能收集和合成信息
  2. 内容基于研究生成
  3. 事实检查技能作为独立过程运行
  4. 纠正完成,置信度分配
  5. 输出交付,带验证状态

操作约束

此技能不能做什么

  1. 生成期间验证 — 必须是独立过程
  2. 捕捉所有幻觉 — 一些可能遗漏
  3. 无来源验证 — 无来源 = 未验证,而非“通过知识验证”
  4. 替代领域专业知识 — 可检查来源存在,非评估质量

验证最关键时

上下文 验证级别
发布内容 要求完整验证
决策支持 关键声明必须验证
教育内容 预期高准确性
随意对话 可接受轻验证
创意小说 N/A(不同标准)

反模式

模式 问题 修复
“我有信心” 信心 ≠ 准确性 要求来源引用
“据我所知” 内存不可靠 检查外部来源
“一般说来” 模糊性隐藏不确定性 具体或标记未验证
“研究显示” 哪项研究? 引用具体来源
验证同时生成 同一过程无法捕捉自己错误 独立过程强制
检查一,假设其余 部分验证 检查所有或标记未检查

输出格式

交付事实检查内容时:

## [内容标题]

[带声明的内容体]

---

### 验证状态

**整体置信度:** [高/中/低]

**已验证声明:**
- [声明1] — 来源: [引用]
- [声明2] — 来源: [引用]

**未验证声明:**
- [声明3] — 未找到来源;视为不确定

**已做纠正:**
- [原始声明] → [纠正声明] (来源: [引用])

**警告:**
- [任何限制或限定]

输出持久性

此技能将主要输出写入文件,以便工作跨会话持久。

输出发现

在进行任何其他工作前:

  1. 检查项目中context/output-config.md
  2. 如果找到,查找此技能的条目
  3. 如果未找到或无此技能条目,先询问用户
    • “我应该在哪里保存此事实检查会话的输出?”
    • 建议: explorations/fact-check/ 或此项目的合理位置
  4. 存储用户偏好:
    • 如果存在上下文网络,在context/output-config.md
    • 否则,在项目根目录.fact-check-output.md

主要输出

为此技能持久:

  • 提取的声明 - 识别的所有可验证陈述
  • 验证结果 - 每个声明带来源和状态
  • 置信度评估 - 整体内容可靠性
  • 已做纠正 - 从原始的任何更改

对话 vs. 文件

存文件 留在对话
验证状态报告 来源讨论
声明逐条结果 澄清问题
置信度评估 验证过程
纠正和警告 实时反馈

文件命名

模式: {内容名称}-factcheck-{日期}.md 例子: research-synthesis-factcheck-2025-01-15.md

来源框架

此技能扩展研究集群,具有生成后验证。区别于研究(收集信息),并作为输出质量控制操作。

相关: skills/research/SKILL.md(生成前), frameworks/doppelganger/(真理层次结构)