UNPKG

article-writer-cn

Version:

AI 驱动的智能写作系统 - 专注公众号/自媒体文章创作

836 lines (611 loc) 20.2 kB
# PRD-02: 套话库和句式库系统 > **优先级**: P0(核心功能) > **预计工作量**: 3 天 > **负责人**: TBD > **状态**: 📝 待开发 --- ## 1. 需求背景 ### 1.1 问题陈述 **用户痛点**: > "AI 经常一股 AI 腔。你想要它像你本人说话,它却用'在当今时代'、'综上所述'这些套话。" **具体问题**: - ❌ AI 生成的文章 AI 检测率 > 50% - ❌ 大量套话:"在当今时代"、"显著提升"、"充分利用" - ❌ 典型 AI 句式:"不是...而是..."连续出现 - ❌ 过度书面化:"进行操作" vs "用" - ❌ 缺乏真实细节:抽象描述多,具体案例少 **核心目标**: > 通过系统化的套话库和句式库,将 AI 检测率降低到 **30% 以下**(80% 案例达标) ### 1.2 解决方案 **三遍审校机制**: ``` 第一遍:内容审校(准确性) ↓ 检查事实、逻辑、结构 第二遍:风格审校(降 AI 味)⭐ 核心 ↓ - 删除套话(8 大类套话库) - 拆解 AI 句式(识别对称结构) - 替换书面词汇(200+ 替换库) - 口语化改造 - 加入真实细节 第三遍:细节打磨(排版) ↓ 句长、段长、标点、节奏 ``` **核心价值**: - ✅ 系统化 - 不依赖 AI 临场发挥,而是基于规则库 - ✅ 可复现 - 每次审校效果一致 - ✅ 可优化 - 持续积累套话和句式案例 --- ## 2. 用户故事 ### 2.1 主要用户故事 **故事 1: 自动识别套话** ``` 作为 内容创作者 我想 让 AI 自动识别文章中的套话 以便 AI 提醒我删除或替换 验收标准: - AI 能识别 8 大类套话(如"在当今时代") - AI 输出对比格式:❌ 原文 → ✅ 改后 - AI 说明为什么是套话 - AI 提供具体的替换建议 ``` **故事 2: 识别 AI 句式** ``` 作为 内容创作者 我想 让 AI 识别典型的 AI 句式 以便 拆解这些句式,变得更自然 验收标准: - AI 能识别"不是...而是..."等对称结构 - AI 能识别连续使用的相同句式 - AI 提供拆解建议 ``` **故事 3: 替换书面词汇** ``` 作为 内容创作者 我想 让 AI 自动替换书面词汇 以便 文章更口语化、接地气 验收标准: - AI 能识别 200+ 书面词汇(如"显著提升") - AI 提供口语化替换(如"提升很多" → "每个项目省 3-5 小时") - AI 优先使用具体数字而非抽象表达 ``` **故事 4: 对比输出** ``` 作为 内容创作者 我想 看到修改前后的对比 以便 我学习如何避免 AI 味 验收标准: - 清晰的对比格式(❌ vs ✅) - 说明修改理由 - 标注 AI 特征(套话/句式/书面词汇) ``` --- ## 3. 功能需求 ### 3.1 套话库系统 #### 3.1.1 八大类套话库 **功能描述**: 建立系统化的套话分类和识别规则 **文件位置**: `spec/presets/anti-ai-detection/套话库.md` **八大类套话**: ##### 1. 时代背景套话 **特征**: 假大空的开头,没有实际信息 **典型套话**: - "在当今时代" - "在当前形势下" - "随着科技的发展" - "在互联网时代" - "在数字化浪潮中" **替换策略**: - ✅ 直接删除 - ✅ 用具体时间:"2025 年" - ✅ 用真实事件引入:"Claude Code 发布两周后" **示例**: ``` ❌ 原文: "在当今 AI 技术飞速发展的时代,编程工具也在不断进化..." ✅ 改为: "Claude Code 出了。我用了两周,确实比 Cursor 好用。" 【理由】删除时代套话,用真实时长代替 ``` ##### 2. 总结套话 **特征**: 文章结尾的废话总结 **典型套话**: - "综上所述" - "总而言之" - "通过以上分析" - "从上述内容可以看出" **替换策略**: - ✅ 直接删除(结尾不需要总结套话) - ✅ 用明确立场:"我的建议是..." - ✅ 用行动号召:"如果你也..." **示例**: ``` ❌ 原文: "综上所述,Claude Code 是一款优秀的工具。" ✅ 改为: "所以,我把 Cursor 卸了。" 【理由】删除总结套话,用真实行动表达观点 ``` ##### 3. 程度副词套话 **特征**: 夸大的形容词,缺乏具体数据 **典型套话**: - "显著提升" - "大幅度提高" - "极大地改善" - "明显优化" **替换策略**: - ✅ 用具体数字:"提升 30%" - ✅ 用真实对比:"从 10 分钟降到 3 分钟" - ✅ 用具体场景:"以前要写 3 遍,现在 1 遍就行" **示例**: ``` ❌ 原文: "Claude Code 显著提升了开发效率" ✅ 改为: "用好 Claude Code,每个项目能省 3-5 小时。我测下来,平均快了 40%。" 【理由】用具体数字替代抽象程度副词 ``` ##### 4. 建议套话 **特征**: 空洞的建议,没有可执行性 **典型套话**: - "建议充分利用" - "应该合理使用" - "需要注意" - "值得关注" **替换策略**: - ✅ 给具体建议:"第一步...第二步..." - ✅ 说明为什么:"因为...所以..." - ✅ 用命令式:"直接用 XX" **示例**: ``` ❌ 原文: "建议开发者充分利用 Claude Code 的上下文理解能力" ✅ 改为: "用 Claude Code 重构代码时,直接让它读整个项目,别一个文件一个文件喂。" 【理由】给出具体可执行的建议 ``` ##### 5. 强调套话 **特征**: 重复强调,啰嗦 **典型套话**: - "不仅...而且..." - "既...又..." - "不但...还..." - "同时"、"此外"、"另外"(高频出现) **替换策略**: - ✅ 拆成两句话 - ✅ 删除连接词,直接陈述 - ✅ 选择最重要的点说 **示例**: ``` ❌ 原文: "Claude Code 不仅响应速度快,而且代码质量高,同时还支持多种语言。" ✅ 改为: "Claude Code 有三个优点:快(2 秒响应)、准(bug 少 30%)、全(支持 20+ 语言)。" 【理由】拆解强调句式,用列表+数据更清晰 ``` ##### 6. 客观中立套话 **特征**: 过度客观,没有态度 **典型套话**: - "可以认为" - "在某种程度上" - "从某种意义上说" - "基本上"、"大致" **替换策略**: - ✅ 明确表达观点:"我认为" - ✅ 给出明确结论:"就是" - ✅ 删除模糊词汇 **示例**: ``` ❌ 原文: "可以认为 Claude Code 在某种程度上优于 Cursor" ✅ 改为: "Claude Code 比 Cursor 好用。至少在代码理解这块,完胜。" 【理由】删除模糊表达,明确态度 ``` ##### 7. 动词名词化套话 **特征**: 把简单动词变成复杂名词短语 **典型套话**: - "进行操作" → "用" - "实施管理" → "管" - "开展工作" → "做" - "提供帮助" → "帮" **替换策略**: - ✅ 直接用动词 - ✅ 删除多余的"进行"、"实施"、"开展" **示例**: ``` ❌ 原文: "对代码进行重构操作" ✅ 改为: "重构代码" 【理由】删除动词名词化,简洁直接 ``` ##### 8. 排比套话 **特征**: 过度使用排比,显得刻意 **典型套话**: - 连续三个"XXX 的 XXX" - 连续使用相同句式 - 对称结构过多 **替换策略**: - ✅ 打破对称,用不同句式 - ✅ 删除多余的排比 - ✅ 保留最重要的 1-2 个 **示例**: ``` ❌ 原文: "这是一个强大的工具,这是一个智能的助手,这是一个高效的伙伴。" ✅ 改为: "Claude Code 很强。我现在每天都在用。" 【理由】删除排比套话,简单直接 ``` #### 3.1.2 套话识别规则 **实现方式**: 正则表达式 + 关键词匹配 **规则文件**: `spec/presets/anti-ai-detection/套话识别规则.json` ```json { "时代背景套话": { "patterns": [ "在当今.*时代", "随着.*的发展", "在.*浪潮中", "在当前.*下" ], "keywords": ["在当今", "随着", "浪潮", "时代背景"], "severity": "high", "replacement_strategy": "删除或用具体时间替代" }, "程度副词套话": { "patterns": [ "(显著|大幅度|极大地|明显)(提升|提高|改善|优化)", "(充分|合理|有效)(利用|使用|发挥)" ], "keywords": ["显著", "大幅度", "充分利用"], "severity": "high", "replacement_strategy": "用具体数字或真实对比" } } ``` **验收标准**: - ✅ 能识别 8 大类套话 - ✅ 覆盖至少 100+ 套话短语 - ✅ 误报率 < 10% - ✅ 召回率 > 80% --- ### 3.2 AI 句式库 #### 3.2.1 典型 AI 句式 **功能描述**: 识别 AI 常用的对称句式和重复模式 **文件位置**: `spec/presets/anti-ai-detection/AI 句式库.md` **核心句式**: ##### 1. "不是...而是..."句式 **特征**: AI 最爱的对比句式 **识别规则**: ```regex 不是.*而是.* ``` **问题**: 连续使用超过 2 次就很明显 **替换策略**: - ✅ 改为"XX,不是 YY"(打破对称) - ✅ 用"其实是"替代"而是" - ✅ 拆成两句话 **示例**: ``` ❌ 原文(连续使用 3 次): "不是技术问题,而是理解问题。不是速度慢,而是方法错。不是工具差,而是用法不对。" ✅ 改为: "技术没问题。问题在理解。速度慢?其实是方法不对。工具本身挺好,就是很多人不会用。" ``` ##### 2. "既...又..."句式 **特征**: 强调两个优点 **识别规则**: ```regex 既.*又.* ``` **替换策略**: - ✅ 拆成两句 - ✅ 用"而且"连接 - ✅ 用列表展示 ##### 3. "通过...实现..."句式 **特征**: 书面化的因果表达 **识别规则**: ```regex 通过.*实现.* ``` **替换策略**: - ✅ 改为"用 XX 做到 YY" - ✅ 改为"XX,就能 YY" **示例**: ``` ❌ 原文: "通过使用 Claude Code,可以实现更高效的开发" ✅ 改为: "用 Claude Code,开发效率能提升 40%" ``` ##### 4. 连续三段式 **特征**: 连续三段使用相同句式开头 **问题**: "首先...其次...最后..."、"第一...第二...第三..." **替换策略**: - ✅ 打破规律,用不同开头 - ✅ 合并段落 **示例**: ``` ❌ 原文: 首先,Claude Code 响应速度快。 其次,Claude Code 理解力强。 最后,Claude Code 功能全面。 ✅ 改为: Claude Code 快(2 秒响应)。理解力也强,能读懂整个项目上下文。功能还全,支持 20+ 语言。 ``` #### 3.2.2 句式识别规则 **规则文件**: `spec/presets/anti-ai-detection/AI 句式规则.json` ```json { "对比句式": { "pattern": "不是.*而是.*", "max_frequency": 2, "severity": "medium", "fix": "打破对称结构,使用不同表达" }, "连续句式": { "pattern": "(首先|其次|最后|第一|第二|第三)", "max_consecutive": 3, "severity": "high", "fix": "打破连续性,使用不同开头" } } ``` **验收标准**: - ✅ 能识别 10+ 典型 AI 句式 - ✅ 能检测句式重复(同一句式 > 2 次) - ✅ 提供拆解建议 --- ### 3.3 书面词汇替换库 #### 3.3.1 200+ 替换对照表 **功能描述**: 建立书面词汇到口语化表达的映射 **文件位置**: `spec/presets/anti-ai-detection/书面词汇替换库.md` **分类替换表**: ##### 类别 1: 动作类 | 书面词汇 | 口语化替换 | 更好的替换 | |---------|-----------|-----------| | 进行操作 | 用 | 直接用 XX | | 实施管理 | 管 | 管好 XX | | 开展工作 | 做 | 做 XX | | 提供帮助 | 帮 | 帮你 XX | | 进行测试 | 测 | 测一下 | | 实现功能 | 做到 | 做到了 XX | | 完成任务 | 做完 | 搞定了 | ##### 类别 2: 程度类 | 书面词汇 | 口语化替换 | 更好的替换 | |---------|-----------|-----------| | 显著提升 | 提升很多 | 提升 40%(具体数字)| | 大幅度提高 | 快了不少 | 快了 3-5 小时 | | 极大地改善 | 好多了 | 从 D 到 A(具体对比)| | 明显优化 | 优化了 | bug 少了 30% | | 充分利用 | 用好 | 直接用 XX 功能 | ##### 类别 3: 连接类 | 书面词汇 | 口语化替换 | 更好的替换 | |---------|-----------|-----------| | 因此 | 所以 | 所以 | | 然而 | 但是 | 不过 | | 此外 | 还有 | 另外 | | 与此同时 | 同时 | (删除,直接说)| | 综上所述 | (删除)| (删除)| ##### 类别 4: 态度类 | 书面词汇 | 口语化替换 | 更好的替换 | |---------|-----------|-----------| | 可以认为 | 我认为 | 我觉得 | | 在某种程度上 | (删除)| (删除)| | 基本上 | (删除)| (删除)| | 值得注意的是 | 注意 | 重点是 | **完整库**: 包含 200+ 对照 **规则文件**: `spec/presets/anti-ai-detection/书面词汇库.json` ```json { "动作类": [ {"书面": "进行操作", "口语": "用", "更好": "直接用 XX"}, {"书面": "实施管理", "口语": "管", "更好": "管好 XX"} ], "程度类": [ {"书面": "显著提升", "口语": "提升很多", "更好": "提升 XX%(具体数字)"}, {"书面": "大幅度提高", "口语": "快了不少", "更好": "快了 X-Y 小时"} ] } ``` **验收标准**: - ✅ 包含至少 200 个替换对照 - ✅ 按类别分组(动作/程度/连接/态度等) - ✅ 提供"更好的替换"(具体化建议) --- ### 3.4 审校输出格式 #### 3.4.1 对比输出模板 **功能描述**: 清晰展示修改前后对比 **输出格式**: ``` ## 🔍 风格审校报告 **文章**: articles/001-claude-code/draft.md **审校时间**: 2025-10-26 10:30 **发现问题**: 12 处 --- ### ⚠️ 需修改 (12 处) #### 【位置】第 1 段第 1 句 ❌ **原文**: "在当今 AI 技术飞速发展的时代,编程工具也在不断进化..." ✅ **改为**: "Claude Code 出了两周。我每天都在用。" **修改理由**: - 删除时代背景套话("在当今...时代") - 用真实时长代替抽象描述 - 拆分长句(原句 38 字) **AI 特征**: - 🏷️ 套话(时代背景类) - 🏷️ 书面语 - 🏷️ 句子过长 --- #### 【位置】第 3 段第 2 句 ❌ **原文**: "通过充分利用 Claude Code 的能力,可以显著提升开发效率" ✅ **改为**: "用好 Claude Code,每个项目能省 3-5 小时" **修改理由**: - 替换书面词汇("充分利用" → "用好") - 替换程度副词("显著提升" → "省 3-5 小时") - 用具体数字替代抽象表达 **AI 特征**: - 🏷️ 套话(动作类 + 程度类) - 🏷️ 书面词汇 - 🏷️ 抽象表达 --- ### ✅ 已符合标准 (8 处) - 第 2 段:使用真实案例,口语化表达 - 第 5 段:具体数字,有态度 - ... --- ### 📊 审校统计 | 维度 | 原文 | 改后 | 改进 | |------|------|------|------| | **AI 检测率** | 68% | 28% | ✅ 降低 40% | | **套话数量** | 15 个 | 3 个 | ✅ 减少 80% | | **平均句长** | 28 字 | 18 字 | ✅ 缩短 35% | | **具体数字** | 2 个 | 8 个 | ✅ 增加 300% | --- ### 💡 建议 1. 继续加入更多真实案例(当前 2 个,建议 5+ 个) 2. 第 7 段仍有"不是...而是..."句式,可以拆解 3. 考虑增加个人态度表达 --- 应用全部修改? - `yes` - 应用全部修改 - `no` - 不应用,保留原文 - `edit` - 逐条编辑 - `preview` - 预览修改后的完整文章 ``` **验收标准**: - ✅ 清晰的对比格式(❌ vs ✅) - ✅ 说明修改理由 - ✅ 标注 AI 特征(套话/句式/书面词汇) - ✅ 提供统计数据(AI 检测率变化) - ✅ 给出后续建议 --- ## 4. 技术方案 ### 4.1 文件结构 ``` spec/presets/anti-ai-detection/ ├── 套话库.md # 8 大类套话,示例和替换策略 ├── 套话识别规则.json # 正则表达式和关键词 ├── AI 句式库.md # 典型 AI 句式 ├── AI 句式规则.json # 句式识别规则 ├── 书面词汇替换库.md # 200+ 对照表 ├── 书面词汇库.json # 结构化数据 └── 审校输出模板.md # 对比输出格式 ``` ### 4.2 实现步骤 #### Step 1: 创建套话库(Day 1) 1. 编写 `套话库.md`(8 大类,每类 10+ 示例) 2. 编写 `套话识别规则.json`(正则 + 关键词) 3. 收集真实案例(从 AI 生成文章中提取) #### Step 2: 创建句式库(Day 1) 1. 编写 `AI 句式库.md`(10+ 典型句式) 2. 编写 `AI 句式规则.json`(识别规则) 3. 测试句式识别准确性 #### Step 3: 创建替换库(Day 2) 1. 编写 `书面词汇替换库.md`(200+ 对照) 2. 按类别分组(动作/程度/连接/态度) 3. 编写 `书面词汇库.json`(结构化数据) 4. 提供"更好的替换"建议 #### Step 4: 更新 /audit 命令(Day 3) 1. 修改 `templates/commands/audit.md` 2. 嵌入套话库、句式库、替换库引用 3. 实现对比输出格式 4. 实现统计功能(AI 检测率、套话数量等) #### Step 5: 测试和优化(Day 3) 1. 用真实 AI 文章测试 2. 验证 AI 检测率是否降到 30% 以下 3. 收集新的套话和句式案例 4. 优化识别规则 --- ## 5. 验收标准 ### 5.1 功能验收 #### 测试用例 1: 套话识别 ``` ✅ 输入: 包含 15 个套话的文章 ✅ 执行: /audit style ✅ 预期结果: - 识别出至少 12 个套话(召回率 > 80%) - 每个套话提供替换建议 - 对比输出清晰 ``` #### 测试用例 2: 句式识别 ``` ✅ 输入: 包含 3 次"不是...而是..."的文章 ✅ 执行: /audit style ✅ 预期结果: - 识别出连续使用的句式 - 提供拆解建议 - 标注为"AI 特征" ``` #### 测试用例 3: 词汇替换 ``` ✅ 输入: 包含 20 个书面词汇的文章 ✅ 执行: /audit style ✅ 预期结果: - 识别出至少 16 个(召回率 > 80%) - 提供口语化替换 - 提供"更好的替换"(具体化) ``` #### 测试用例 4: AI 检测率 ``` ✅ 输入: AI 检测率 60% 的文章 ✅ 执行: /audit style ✅ 预期结果: - 修改后 AI 检测率 < 30%(80% 案例达标) - 提供前后对比数据 ``` ### 5.2 质量标准 **套话库**: - ✅ 8 大类全部覆盖 - ✅ 每类至少 10+ 示例 - ✅ 总计 100+ 套话短语 - ✅ 识别准确率 > 90% **句式库**: - ✅ 至少 10 种典型 AI 句式 - ✅ 能检测重复使用(> 2 次) - ✅ 提供拆解建议 **替换库**: - ✅ 至少 200 个对照 - ✅ 按类别分组 - ✅ 提供"更好的替换" **审校效果**: - ✅ AI 检测率降至 30% 以下(80% 案例) - ✅ 套话减少 > 80% - ✅ 平均句长控制在 15-25 字 - ✅ 具体数字增加 > 2 倍 --- ## 6. 风险和依赖 ### 6.1 技术风险 #### 风险 1: AI 可能无法严格遵循规则库 **描述**: Claude 可能临场发挥,不使用规则库 **缓解措施**: - 在命令中明确引用规则库文件 - 使用 `allowed-tools: Read(//spec/presets/anti-ai-detection/**)` 强制读取 - 提供清晰的示例 **应急方案**: - 简化规则库,只保留核心规则 - 增加命令中的示例说明 #### 风险 2: 识别准确率不足 **描述**: 套话/句式识别误报率高或召回率低 **缓解措施**: - 持续收集真实案例优化规则 - 提供人工确认机制 - 允许用户自定义规则 **应急方案**: - 降低自动化程度,提供建议由用户确认 - 优先保证准确率(宁可少报不要误报) ### 6.2 依赖关系 | 依赖项 | 类型 | 说明 | |--------|------|------| | **/audit 命令** | 命令模板 | 需要引用规则库 | | **真实案例** | 数据来源 | 需要收集 AI 生成文章 | | **AI 检测工具** | 外部工具 | 用于验证效果(如腾讯朱雀 API)| --- ## 7. 后续迭代 ### v1.1 - 规则库扩展 - 套话库扩展到 200+ - 句式库扩展到 20+ - 替换库扩展到 500+ ### v1.2 - 个性化规则 - 用户可自定义套话库 - 学习用户写作风格,自动生成替换规则 ### v2.0 - AI 检测 API 集成 - 集成腾讯朱雀等 AI 检测 API - 实时显示 AI 检测率 - 自动迭代优化直到 < 30% --- ## 附录 ### A. 套话库示例 完整套话库见:`spec/presets/anti-ai-detection/套话库.md` ### B. 替换库示例 完整替换库见:`spec/presets/anti-ai-detection/书面词汇替换库.md` ### C. 变更日志 | 日期 | 版本 | 变更内容 | 作者 | |------|------|----------|------| | 2025-10-26 | 0.1 | 初始创建 | Claude | --- **PRD 状态**: 📝 待评审 → 待开发