AI 事实核查总说"有一定可信度"?我写了个技能,让它敢下结论、有据可查、还会帮你写高情商回复
问题:AI 不适合做事实核查?
让 AI 做事实核查,很多人第一反应是:它幻觉都解决不了,怎么查别人?
但换个角度想——AI 擅长的是信息检索和交叉比对,而事实核查的核心工作恰好就是这些。真正难的不是"搜索",而是输出质量控制:AI 天然倾向于讨好、模糊、和稀泥。事实核查需要的是"敢下结论、有据可查、态度鲜明"。
基于这个思路,我在 OpenClaw 上做了一个事实核查技能——Debunk。不追求 100% 准确(没有工具能做到),但追求结论明确、来源可查、结构一致。用了一个月,处理了各种假新闻、营销夸大、伪科普,效果超出预期。
先看效果
以下是对一条"Anthropic 开源代码库并更名 OpenClaude"假新闻的核查结果(实为愚人节文章被搬运成突发新闻):
从上面可以看到,核查报告包含可信度评级、核查清单(每条论点有来源链接)、锐评总结、以及社交回复话术。不是冷冰冰的"这是假的",而是用事实说话的同时帮你维护社交关系。
技能架构
用户输入(链接/截图/文字)
│
├─ 场景判断:自查型 or 社交回复型
│
▼
步骤 1:获取内容
├─ 公众号 URL → Playwright 脚本(反爬兜底)
├─ 其他 URL → web_fetch
├─ 截图 → OCR
└─ 文字 → 直接使用
│
▼
步骤 2:提取核心论点(可验证的事实性声明)
│
▼
步骤 3:逐一查证(web_search + web_fetch 交叉验证)
│
▼
步骤 4:生成输出
├─ 场景 A:可信度评级 + 核查清单 + 锐评总结
└─ 场景 B:上述 + 意图推测 + 4 种回复话术
两种场景的区分很简单:有没有社交语境。有人分享给你 → 社交回复型,自己查 → 自查型。
技术实现
基于 OpenClaw Agent 平台,核心审核流程封装在 debunk 技能,已发布到 ClawHub。
第一步:安装技能
openclaw skills install debunk
技能安装后位于 ~/.openclaw/skills/debunk/,包含 SKILL.md(核查流程定义)和 scripts/fetch-url.js(反爬兜底脚本)。安装即可使用,无需额外配置。
第二步:了解输出结构
技能的输出是高度结构化的,这是质量控制的手段——固定格式比自由发挥更可靠。
可信度评级(技能自带)
用 5 星制评级,强制显示满 5 个符号,不留模糊空间:
☆☆☆☆☆ 完全捏造
⭐☆☆☆☆ 几乎全假
⭐⭐☆☆☆ 大部分不实
⭐⭐⭐☆☆ 有事实基础但被夸大
⭐⭐⭐⭐☆ 大部分属实,个别措辞有营销成分
⭐⭐⭐⭐⭐ 完全属实
核查清单(技能自带)
每条论点严格按以下格式输出:
**N. "原文引用的论点"**
✅/⚠️/❌/❓ 一句话结论。关键数据对比和实际情况说明。
🔍 来源名称:一句话概括该来源说了什么(`[原文](URL)`)
每条论点必须有至少一个权威来源链接,不允许无来源的结论。
锐评总结(技能自带)
主观评论,可以毒舌、调侃、嘲讽。但禁止重复核查清单里的具体数据——锐评是"读后感",不是"摘要"。
回复话术(技能自带,仅社交回复型场景)
默认展示高级情商版,核心结构:
| 环节 | 篇幅 | 要求 |
|---|---|---|
| 肯定 | ~50% | 肯定内容中正确的部分、对方的善意 |
| 不留痕迹引导 | ~50% | 用疑问引导/补充信息/邀请验证等技法递出事实 |
关键原则:
- ❌ 绝不允许只有肯定没有引导
- ❌ 禁止用"但是""不过"等明显转折词
- ✅ 用"对了""顺便""说到这个"自然过渡
引导技法示例:
# 疑问引导
"这个数字我看着有点奇怪,80分说的是哪个版本来着?"
# 补充信息
"对了之前看到另一个测试里 Claude 还是领先两分左右"
# 邀请验证
"这个数据是官方的还是媒体自己算的?回头可以找原报告看看"
第三步:了解反爬兜底机制
公众号(mp.weixin.qq.com)有反爬,web_fetch 大概率失败。技能内置了 Playwright 脚本兜底:
node ~/.openclaw/skills/debunk/scripts/fetch-url.js "<url>" --max-chars 15000
抓取优先级:web_fetch → Playwright 脚本 → 提示用户复制粘贴。这是技能内置的逻辑,不需要手动配置。
第四步:直接使用
安装完成后,直接对 Agent 发消息即可:
# 自查型
"事实核查一下这个:https://example.com/article"
# 社交回复型
"朋友转发了这个,帮我查查是真的吗:https://example.com/article"
# 文字输入
"帮我核查这段话:[粘贴内容]"
# 截图输入
[发送截图]
技能会自动判断场景并生成对应格式的输出。
踩坑总结
坑 1:AI 不敢下结论
最初版本没有规定"必须显示满 5 个符号"的评级格式,AI 经常给出模糊的"有一定可信度"而不是明确的星级。根本原因是 AI 的讨好倾向——怕得罪人、怕判断错。
解决:规定固定格式(☆☆☆☆☆ ~ ⭐⭐⭐⭐⭐),用符号强制 AI 做出明确判断。
坑 2:社交回复只有肯定没有引导
AI 的默认行为是"你说得对,不过..."——要么全是肯定(阿谀奉承),要么用"但是"硬转折(太刻意)。
解决:设计"高级情商版"作为默认风格,规定"肯定 50% + 引导 50%"的结构铁律,提供引导技法表,明确禁止"但是""不过"等转折词。
坑 3:核查清单缺少来源链接
AI 会写"据媒体报道"但不给具体链接,或者给一个搜索结果页而不是原文链接。
解决:规定固定格式(🔍 来源名称 + 一句话概括 + [原文](URL)),明确要求"不允许无来源的结论"。
坑 4:公众号文章抓取失败
web_fetch 对公众号返回空内容或反爬拦截页。
解决:内置 Playwright 脚本 scripts/fetch-url.js 作为兜底,优先级为 web_fetch → Playwright → 提示用户手动复制。
最终效果
- 输入链接/截图/文字,输出结构化的核查报告
- 每条论点都有可信度评级、权威来源链接、具体数据对比
- 社交场景下自动生成回复话术,帮你纠正错误又不伤和气
- 公众号等反爬网站有专用 Playwright 脚本兜底
技能开源
- GitHub:github.com/tino-chen/o…
- ClawHub:
openclaw skills install debunk