关于 fact-check
fact-check 是用于系统核验生成内容中事实性主张的技能,适合需要检查准确性的内容创作者与研究流程。它将主张提取、外部来源核对、置信度评估分为独立步骤,并记录未验证内容。
主要功能
- 01提取可核验主张
- 02按类型分类主张
- 03逐项对照来源
- 04标记未验证或矛盾内容
- 05评估整体置信度并记录结果
适用场景
- 01发布前检查生成内容
- 02核验研究综述是否准确反映来源
- 03为决策材料核实关键主张
- 04整理来源、修正与置信度报告
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ jwynia/ agent-skills --skill fact-check安装后在 Claude Code 中输入/fact-check确认已加载。
详细介绍
事实核查技能
系统地核实生成内容中的主张,旨在发现幻觉、虚构内容和缺乏依据的断言。
为什么分开核查很重要
**根本问题:**大模型通过预测接下来应该出现的内容,生成听起来合理的文本。这种机制也会产生幻觉——那些听起来像是真的、实际上却并非如此的自信陈述。处于生成模式的大模型无法可靠地发现自身的幻觉,因为:
- 注意力集中在生成上,而非核查
- 连贯性压力会让错误主张在上下文中显得正确
- 产生错误的同一组权重也会确认这个错误
- 没有外部依据来反驳虚构内容
**解决方案:**核查必须作为单独的认知步骤进行,其中包括:
- 将注意力全新地集中在每一项主张上
- 明确核对来源(而非依赖记忆或训练数据)
- 对内容采取质疑态度
- 尽可能使用外部依据
诊断状态
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:来源核验
尝试核验每项声明:
## Claim Verification Log
### Claim 1: "[exact claim text]"
- **Category:** [Verifiable-Hard/Soft/Attribution/Inference]
- **Source checked:** [specific source]
- **Finding:** [Confirmed/Partially supported/Not found/Contradicted]
- **Confidence:** [High/Medium/Low]
- **Notes:** [discrepancies, qualifications needed]
### Claim 2: ...
核验结果:
| 结果 | 含义 | 操作 |
|---|---|---|
| 已确认 | 来源明确支持该声明 | 保留,并引用来源 |
| 部分支持 | 来源仅支持部分内容 | 添加限定语或缩小声明范围 |
| 未找到 | 未找到来源 | 标记为未核验,并考虑删除 |
| 相矛盾 | 来源表达了相反的内容 | 删除或更正 |
| 已过时 | 来源时间较早;当前情况可能不同 | 更新内容或添加时效性说明 |
阶段 4:置信度分级
为内容分配整体置信度:
| 级别 | 标准 |
|---|---|
| 高 | 所有关键声明均已核验;未发现矛盾 |
| 中 | 大多数声明均已核验;部分声明未经核验,但看似合理 |
| 低 | 大量声明未经核验;需要进行一些更正 |
| 不可靠 | 发现多处矛盾;需要进行重大修订 |
幻觉模式
需要留意的常见幻觉类型:
1. 看似合理的捏造
模式: 编造听起来可信、但实际上不存在的具体细节。 示例: 虚假的论文引用、不存在的统计数据、杜撰的引言。 检测: 对照一手来源核验具体声明。
2. 自信地推断
模式: 将合理推断表述为已证实的事实。 示例:“研究表明……”(没有具体研究)、“专家一致认为……”(没有引文)。 检测: 任何声称有外部依据的内容都必须有具体来源。
3. 时间混淆
模式: 混淆不同时期的信息。 示例: 将旧统计数据当作当前数据,或将已解散的组织描述为仍在运作。 检测: 检查来源日期,并核实当前状态。
4. 归属偏移
模式: 将正确信息归于错误的来源。 示例: 将引言归于错误的人,将研究发现归于错误的研究。 检测: 不仅要核验内容,还要专门核验归属信息。
5. 信息拼接
模式: 将多个来源的细节拼接成一个虚构的来源。 示例: 编造一项研究,把不同论文中的真实发现拼在一起。 检测: 核实特定来源确实存在,且包含所有归于该来源的声明。
6. 精度夸大
模式: 为模糊的知识添加虚假的精确度。 示例: 来源只支持“大约一半”,却声称“约 47.3%”。 检测: 检查来源是否确实提供了相应精度的数据。
核验清单
发布经过事实核查的内容前:
- 是否提取了声明? 已识别所有可核验的陈述
- 是否检查了来源? 已根据外部来源核验每项声明
- 是否依据具体来源,而非记忆? 核验时使用了实际来源,而非大模型的训练数据
- 是否标明了矛盾? 已指出声明与来源之间的冲突
- 是否标明了未经核验的内容? 已明确指出没有来源支持的声明
- 是否说明了置信度? 已传达整体可靠性等级
- 是否单独进行了一轮核验? 核验是在生成之后进行的,而不是生成过程中
与研究技能的整合
| 研究阶段 | 事实核查的作用 |
|---|---|
| 研究期间 | 核验来源本身的声明 |
| 综合之后 | 核验综合内容是否准确呈现来源 |
| 交付之前 | 最终检查,发现输出中的幻觉 |
交接流程:
- 研究技能收集并综合信息
- 根据研究内容生成内容
- 事实核查技能单独进行一轮核验
- 进行更正并分配置信度
- 附上核验状态后交付输出
操作限制
此技能无法做到的事
- 在生成过程中核验——必须单独进行一轮核验
- 发现所有幻觉——仍可能有遗漏
- 在没有来源的情况下核验——没有来源就意味着未经核验,而不是“凭知识已核验”
- 取代领域专业知识——可以检查来源是否存在,但无法评估其质量
最需要核验的情境
| 情境 | 核验级别 |
|---|---|
| 已发布内容 | 必须全面核验 |
| 决策支持 | 必须核验关键主张 |
| 教育内容 | 预期准确度高 |
| 日常对话 | 可以进行轻度核验 |
| 创意小说 | 不适用(标准不同) |
反模式
| 模式 | 问题 | 修正方法 |
|---|---|---|
| “我很有信心” | 有信心 ≠ 准确 | 要求引用来源 |
| “据我所知” | 记忆并不可靠 | 查阅外部来源 |
| “一般来说” | 含糊其辞会掩盖不确定性 | 具体说明或标记为未经核验 |
| “研究表明” | 哪项研究? | 引用具体来源 |
| 生成时核验 | 同一轮无法发现自身错误 | 必须分轮处理 |
| 核验一项,就假定其余项也没问题 | 核验不完整 | 全部核验,否则标记为未核验 |
输出格式
交付经过事实核查的内容时:
## [Content Title]
[Content body with claims]
---
### Verification Status
**Overall Confidence:** [High/Medium/Low]
**Verified Claims:**
- [Claim 1] — Source: [citation]
- [Claim 2] — Source: [citation]
**Unverified Claims:**
- [Claim 3] — No source found; treat as uncertain
**Corrections Made:**
- [Original claim] → [Corrected claim] (Source: [citation])
**Caveats:**
- [Any limitations or qualifications]
输出持久化
此技能会将主要输出写入文件,以便在不同会话间保留工作成果。
输出位置探查
在进行任何其他工作之前:
- 检查项目中是否存在
context/output-config.md - 如果存在,查找此技能对应的条目
- 如果文件不存在,或没有此技能对应的条目,先询问用户:
- “这次事实核查的输出应保存到哪里?”
- 建议:
explorations/fact-check/或适合该项目的位置
- 保存用户的偏好:
- 如果存在上下文网络,保存到
context/output-config.md - 否则保存到项目根目录下的
.fact-check-output.md
- 如果存在上下文网络,保存到
主要输出
对此技能,需持久化以下内容:
- 提取的主张 - 识别出的所有可核验陈述
- 核验结果 - 每项主张及其来源和状态
- 置信度评估 - 对内容整体可靠性的评估
- 所做的更正 - 对原文所做的任何修改
对话与文件
| 写入文件 | 保留在对话中 |
|---|---|
| 核验状态报告 | 来源讨论 |
| 逐项主张的核验结果 | 澄清问题 |
| 置信度评估 | 核验过程 |
| 更正和注意事项 | 实时反馈 |
文件命名
格式:{content-name}-factcheck-{date}.md
示例:research-synthesis-factcheck-2025-01-15.md
来源框架
此技能通过生成后核验扩展研究集群。它不同于收集信息的研究,而是对输出进行质量控制。
相关内容:skills/research/SKILL.md(生成前)、references/doppelganger/(真伪层级)