benchmark.md
11.5 KB
Satire News Scraper - Benchmark
版本: v1.0.0 创建: 2026-03-26 评估对象: 讽刺新闻抓取与短剧素材提取 Skill
1. 评估体系概述
1.1 评估目标
本 Benchmark 用于评估讽刺新闻抓取 Skill 的以下能力:
- 内容识别: 准确识别讽刺新闻 vs 真实新闻
- 荒诞分析: 正确提取荒诞元素和计算荒诞指数
- 分类准确: 准确判断讽刺类型
- 改编评估: 合理评估短剧改编价值
- 数据完整性: 输出结构完整、字段齐全
1.2 评分维度总览
| 维度 | 权重 | 评分范围 | 说明 |
|---|---|---|---|
| 荒诞度 (Absurdity) | 25% | 1-10 | 内容本身的荒诞程度识别准确性 |
| 来源质量 (Source Quality) | 20% | 1-10 | 来源网站质量和相关性 |
| 元数据完整性 (Metadata) | 15% | 1-10 | 字段完整性和准确性 |
| 时效性 (Timeliness) | 15% | 1-10 | 内容新鲜度和相关性 |
| 短剧适配性 (Adaptability) | 15% | 1-10 | 改编价值评估准确性 |
| 格式规范 (Format) | 10% | 1-10 | 输出格式规范性 |
2. 评分维度详解
2.1 荒诞度 (Absurdity) - 权重 25%
评估内容: Skill 对内容荒诞程度的识别和评分是否准确
评分标准
| 分数 | 标准 | 说明 |
|---|---|---|
| 10 | 完美识别 | 准确识别所有荒诞元素类型,荒诞指数评分与人工评估一致 |
| 8-9 | 优秀 | 识别主要荒诞元素,指数评分偏差 ≤1 |
| 6-7 | 良好 | 识别核心荒诞点,指数评分偏差 ≤2 |
| 4-5 | 及格 | 识别部分荒诞元素,但遗漏重要特征 |
| 2-3 | 较差 | 仅识别表面荒诞,未理解深层讽刺 |
| 1 | 失败 | 完全误判内容性质 |
检查点
- [ ] 正确识别荒诞元素类型 (Type A-G)
- [ ] 荒诞指数与人工评估偏差 ≤1.5
- [ ] 准确提取 absurd_premise
- [ ] 正确识别 dramatic_twist
2.2 来源质量 (Source Quality) - 权重 20%
评估内容: 抓取来源的质量和相关性
来源分级
| 等级 | 来源 | 质量分 |
|---|---|---|
| S | The Onion (Local News 栏目) | 10 |
| A | The Onion (其他栏目)、ClickHole | 8-9 |
| B | Babylon Bee、其他知名讽刺网站 | 6-7 |
| C | 小型讽刺博客、社交媒体 | 4-5 |
| D | 非讽刺来源、低质量内容 | 1-3 |
评分标准
| 分数 | 标准 |
|---|---|
| 10 | 100% 来自 S/A 级来源 |
| 8-9 | 80%+ 来自 S/A 级来源 |
| 6-7 | 60%+ 来自 S/A 级来源,无 D 级 |
| 4-5 | 混入少量 D 级来源 |
| 2-3 | 大量低质量来源 |
| 1 | 主要来自非讽刺来源 |
2.3 元数据完整性 (Metadata) - 权重 15%
评估内容: 输出字段的完整性和准确性
必需字段清单
必填字段 (缺失一个扣2分):
- headline: 原标题
- absurd_premise: 荒诞设定
- satire_angle: 讽刺角度
- satire_type: 讽刺类型 (枚举值)
- absurdity_score: 荒诞指数 (1-10)
- source.site: 来源网站
- source.url: 原文链接
- source.published_at: 发布时间
推荐字段 (缺失一个扣1分):
- absurd_elements: 荒诞元素类型数组
- dramatic_twist: 剧情反转点
- adaptation_value: 改编价值 (A/B/C/D)
- adaptation_notes.genre: 短剧类型
- adaptation_notes.tone: 基调
- adaptation_notes.visual_elements: 视觉建议数组
- adaptation_notes.dialogue_style: 对白风格
- adaptation_notes.estimated_duration: 预估时长
评分标准
| 分数 | 标准 |
|---|---|
| 10 | 所有必填和推荐字段完整 |
| 8-9 | 必填字段完整,缺失 ≤2 推荐字段 |
| 6-7 | 必填字段完整,缺失 3-4 推荐字段 |
| 4-5 | 缺失 1-2 必填字段 |
| 2-3 | 缺失 3+ 必填字段 |
| 1 | 大量字段缺失或错误 |
2.4 时效性 (Timeliness) - 权重 15%
评估内容: 内容的新鲜度和相关性
时间分级
| 时间范围 | 新鲜度分 | 说明 |
|---|---|---|
| ≤ 7天 | 10 | 最新内容 |
| 8-30天 | 8-9 | 近期内容 |
| 1-3个月 | 6-7 | 较新内容 |
| 3-6个月 | 4-5 | 一般 |
| 6-12个月 | 2-3 | 较旧 |
| > 1年 | 1 | 过时内容 |
评分标准
| 分数 | 标准 |
|---|---|
| 10 | 100% 内容 ≤ 7天 |
| 8-9 | 80%+ 内容 ≤ 30天 |
| 6-7 | 60%+ 内容 ≤ 3个月 |
| 4-5 | 部分内容过时 |
| 2-3 | 大量内容 > 6个月 |
| 1 | 主要抓取过时内容 |
时效性豁免
以下内容不受时效性限制:
- 经典讽刺新闻(具有长期参考价值)
- "Local Man" 类普适性荒诞内容
- 被标记为 evergreen 的内容
2.5 短剧适配性 (Adaptability) - 权重 15%
评估内容: 改编价值评估的准确性
改编等级标准
| 等级 | 分数范围 | 标准 | 占比目标 |
|---|---|---|---|
| A | 9-10 | 高度适合改编 | 20% |
| B | 7-8 | 适合改编 | 40% |
| C | 5-6 | 改编价值有限 | 25% |
| D | 不适合改编 | 15% |
评分标准
| 分数 | 标准 |
|---|---|
| 10 | 改编评估与人工评估 100% 一致 |
| 8-9 | 一致性 ≥ 90%,等级偏差 ≤ 1 |
| 6-7 | 一致性 ≥ 80%,等级偏差 ≤ 1 |
| 4-5 | 一致性 ≥ 60%,部分等级误判 |
| 2-3 | 一致性 |
| 1 | 改编评估无规律可循 |
适配性检查点
- [ ] 视觉化建议具体可行
- [ ] 预估时长合理
- [ ] 对白风格与来源匹配
- [ ] 识别出高风险/敏感内容
2.6 格式规范 (Format) - 权重 10%
评估内容: 输出格式的规范性和一致性
格式要求
JSON 格式:
- 有效 JSON 语法
- 字段命名规范 (snake_case)
- 日期格式 ISO8601
- 数组和对象结构正确
内容格式:
- 字符串无多余空格
- 无 HTML 标签残留
- 编码统一 UTF-8
- 枚举值符合规范
评分标准
| 分数 | 标准 |
|---|---|
| 10 | 完全符合格式规范 |
| 8-9 | 轻微格式问题,不影响解析 |
| 6-7 | 部分格式不一致 |
| 4-5 | 明显格式错误 |
| 2-3 | 严重格式问题 |
| 1 | 无法解析的格式 |
3. 综合评分计算
3.1 计算公式
Total Score = Σ(维度分数 × 维度权重)
各维度满分:
- 荒诞度: 10 × 0.25 = 2.5
- 来源质量: 10 × 0.20 = 2.0
- 元数据完整性: 10 × 0.15 = 1.5
- 时效性: 10 × 0.15 = 1.5
- 短剧适配性: 10 × 0.15 = 1.5
- 格式规范: 10 × 0.10 = 1.0
理论满分: 10.0
3.2 等级划分
| 总分范围 | 等级 | 说明 |
|---|---|---|
| 9.0 - 10.0 | S | 卓越,可作为标杆 |
| 8.0 - 8.9 | A | 优秀,生产就绪 |
| 7.0 - 7.9 | B | 良好,需要微调 |
| 6.0 - 6.9 | C | 及格,需要改进 |
| 5.0 - 5.9 | D | 较差,需要大幅改进 |
| F | 不合格,无法使用 |
4. 行业基准线
4.1 industry_avg_score
industry_avg_score: 7.0
说明: 基于开源讽刺新闻分析工具和社区项目的平均水平
评估维度平均分:
- 荒诞度: 6.5
- 来源质量: 7.0
- 元数据完整性: 7.5
- 时效性: 7.0
- 短剧适配性: 6.0
- 格式规范: 8.0
4.2 elite_avg_score
elite_avg_score: 8.5
说明: 专业媒体分析工具和商业级内容分析服务的平均水平
评估维度平均分:
- 荒诞度: 8.5
- 来源质量: 9.0
- 元数据完整性: 8.5
- 时效性: 8.0
- 短剧适配性: 8.0
- 格式规范: 9.0
4.3 目标设定
Skill 目标:
初版目标: 7.5 (超过行业平均)
优化目标: 8.5 (达到精英水平)
卓越目标: 9.0+ (行业领先)
5. 评分 Rubric
5.1 5分制 Rubric
| 维度 | 5 (优秀) | 4 (良好) | 3 (及格) | 2 (较差) | 1 (失败) |
|---|---|---|---|---|---|
| 荒诞度 | 完美识别,偏差 ≤0.5 | 识别准确,偏差 ≤1 | 基本准确,偏差 ≤1.5 | 部分识别,偏差 ≤2.5 | 完全误判 |
| 来源质量 | 100% S/A 级 | 80%+ S/A 级 | 60%+ S/A 级 | 混入 D 级 | 主要低质量 |
| 元数据 | 所有字段完整 | 缺 ≤2 推荐字段 | 缺 3-4 推荐字段 | 缺 1-2 必填 | 大量缺失 |
| 时效性 | 100% ≤7天 | 80%+ ≤30天 | 60%+ ≤3月 | 大量过时 | 主要过时 |
| 适配性 | 100% 一致 | ≥90% 一致 | ≥80% 一致 | ≥60% 一致 | |
| 格式 | 完全规范 | 轻微问题 | 部分不一致 | 明显错误 | 无法解析 |
5.2 评分示例
示例 1: 完美输出
{
"headline": "Local Man Declares Himself Mayor Of Wendy's",
"absurd_premise": "普通顾客自封餐厅市长",
"satire_angle": "讽刺人们对微小权力的渴望",
"satire_type": "absurdist",
"absurd_elements": ["A", "C"],
"dramatic_twist": "自封市长而非真正当选",
"absurdity_score": 8.5,
"adaptation_value": "A",
"adaptation_notes": {
"genre": "超现实喜剧",
"tone": "absurd",
"visual_elements": ["餐厅场景", "自封仪式", "其他顾客的困惑表情"],
"dialogue_style": "严肃新闻体",
"estimated_duration": "60s"
},
"source": {
"site": "The Onion",
"url": "https://www.theonion.com/...",
"published_at": "2026-03-25T10:00:00Z"
}
}
评分: 荒诞度10 + 来源质量10 + 元数据10 + 时效性10 + 适配性10 + 格式10 = 10.0 (S级)
示例 2: 及格输出
{
"headline": "Local Man Declares Himself Mayor Of Wendy's",
"absurd_premise": "一个人想当市长",
"satire_angle": "政治",
"satire_type": "political",
"absurdity_score": 6,
"adaptation_value": "B",
"source": {
"site": "The Onion",
"url": "https://www.theonion.com/..."
}
}
评分: 荒诞度5 + 来源质量10 + 元数据6 + 时效性5 + 适配性6 + 格式8 = 6.65 (C级)
问题:
- absurd_premise 过于简化
- satire_type 错误(应为 absurdist)
- 缺少 dramatic_twist
- 缺少 adaptation_notes 详细内容
- 缺少 published_at
6. 输出格式完整性检查清单
6.1 自动化检查项
JSON 结构:
[ ] 有效 JSON 格式
[ ] 所有必填字段存在
[ ] 字段类型正确
[ ] 枚举值在允许范围内
[ ] 日期格式 ISO8601
[ ] URL 格式有效
数据范围:
[ ] absurdity_score 在 1-10 之间
[ ] adaptation_value 为 A/B/C/D
[ ] satire_type 为允许值之一
[ ] absurd_elements 为有效类型数组
[ ] 字符串字段非空
6.2 人工检查项
内容质量:
[ ] absurd_premise 准确概括荒诞点
[ ] satire_angle 识别正确的讽刺目标
[ ] dramatic_twist 描述真正的反转
[ ] visual_elements 具体可行
[ ] 改编评估合理
逻辑一致性:
[ ] satire_type 与内容匹配
[ ] absurdity_score 与 absurd_elements 一致
[ ] adaptation_value 与内容质量匹配
[ ] tone 与来源风格匹配
7. 测试集要求
7.1 训练集 (train_dataset.json)
- 数量: 40 条样本
- 分布:
- The Onion: 50% (20条)
- ClickHole: 30% (12条)
- Babylon Bee: 20% (8条)
- 类型分布:
- 社会讽刺: 40%
- 荒诞日常: 30%
- 政治讽刺: 20%
- 黑色幽默: 10%
- 改编等级分布:
- A级: 20%
- B级: 40%
- C级: 25%
- D级: 15%
7.2 测试集 (test_dataset.json)
- 数量: 15 条样本
- 必须包含:
- 至少 2 条各类型讽刺内容
- 至少 1 条难以识别的边界案例
- 至少 1 条高敏感度内容
- 至少 1 条过时但经典的内容
8. 版本历史
| 版本 | 日期 | 变更 |
|---|---|---|
| v1.0.0 | 2026-03-26 | 初始版本,定义 6 维度评分体系 |
使用说明: 本文档定义 Satire News Scraper Skill 的评估标准和行业基准。评分应基于人工标注的 golden set 进行验证。