Files
goodbuddy/resources/skills/deai-writing/ai_smell_dict.py
T
mesalogo 2fca39ddb2
GoodBuddy Agents / Validate Agent source (push) Canceled after 0s
GoodBuddy Agents / Build Linux arm64 Agent (push) Canceled after 0s
GoodBuddy Agents / Build Linux x64 Agent (push) Canceled after 0s
Cross-platform packages / Validate source (push) Canceled after 0s
Cross-platform packages / Authorize desktop packaging (push) Canceled after 0s
Cross-platform packages / linux arm64 (push) Canceled after 0s
Cross-platform packages / macos arm64 (push) Canceled after 0s
Cross-platform packages / windows arm64 (push) Canceled after 0s
Cross-platform packages / linux x64 (push) Canceled after 0s
Cross-platform packages / macos x64 (push) Canceled after 0s
Cross-platform packages / windows x64 (push) Canceled after 0s
Cross-platform packages / Publish GitHub and OSS release (push) Canceled after 0s
feat: expand deai writing checks
The bundled deai-writing skill now detects additional template patterns,
unsupported attribution, role-slot prose, engineering metaphors, and absolute
claims. Its JSON report also summarizes findings by level and category while
preserving GoodBuddy's cross-platform Python guidance.

Release note: 中文“去 AI 味”审校新增分析套话、模糊归因、角色槽位、工程黑话和绝对化承诺等检查,并提供按分类汇总的扫描结果。
2026-09-01 20:48:58 +08:00

151 lines
6.0 KiB
Python

"""通用「AI 味」病症词典。
两级:
AI_SMELL 阻断项 —— 命中即应改写,目标压到接近 0。
REVIEW_ONLY 复核项 —— 只作人工判断候选,不能作为自动删除或发布失败条件。
词条可以是普通字符串(按子串匹配)或正则(`re` 语法)。扫描器统一用
`re.search` 处理,普通字符串里的正则元字符需要自行转义。
扩充规则:每次评审被挑出的新 AI 味用词,回填到这里;只与单个项目/站点
相关的规则不要放这里,放 project_rules/ 下的项目词典。
"""
# ---------------------------------------------------------------------------
# 阻断项
# ---------------------------------------------------------------------------
AI_SMELL = {
"套路连接词": [
# "不仅/而且" 单列误报率过高,收敛成句式匹配(原清单的精确化)
r"不仅.{0,40}(而且|并且|还|也)",
"更是", "无疑", "毫无疑问", "值得注意的是", "需要指出的是",
"总而言之", "综上所述", "总的来说", "换言之", "众所周知",
"一言以蔽之",
],
"对照模板": [
r"不是.{0,40}而是", r"并非.{0,40}而是", "而不是",
r"不只是.{0,40}(而是|还|也|更)", r"不止是.{0,40}(而是|还|也|更)",
r"不只是[^,。;!?\n]{1,30}(?:[。;!?\n]|$)",
r"不先.{0,30}先", r"下一步是.{0,40}而不是",
],
"问答式标题": [
r"回答了?[一二三四五六七八九十0-9]+个.{0,20}问题",
r"以下[一二三四五六七八九十0-9]+[点项个]",
r"[一二三四五六七八九十0-9]+个具体问题",
r"结果说明了什么", r"需要关注的几个问题",
],
"实施口号": [
r"先把.{0,30}接入", "从单一场景切入", "从一个场景开始",
],
"英文对照模板": [
r"\bnot\b.{0,60}\bbut\b", r"\brather than\b", r"\binstead of\b",
],
"英文元话语": [
r"answers? (three|four|[0-9]+)",
"three specific questions", "three findings from",
],
"空心形容词": [
"强大的", "卓越的", "高效的", "全方位", "一站式", "赋能", "助力",
"打造", "深耕", "护航", "保驾护航", "量身定制", "极致", "无缝",
],
"宏大开头": [
r"随着.{0,30}(的)?(快速)?发展", "在当今", "在数字化", "近年来",
"大背景下",
],
"空洞升华": [
"携手", "美好未来", "贡献力量", "必将", "奠定坚实基础", "开创",
],
"客服尾巴": [
"希望能对您有所帮助", "如有需要", "欢迎随时", "感谢您的",
],
"绕弯结构": [
r"进行了.{0,15}的?(操作|处理|优化|改造|分析)",
r"做出了.{0,15}的?决定",
r"起到了.{0,15}的?作用",
r"具有.{0,20}的特点",
r"实现了.{0,20}的功能",
],
"过度对冲": [
"在某种程度上", "总体而言", "一般来说",
],
"万能收束": [
"从本质上看", "从某种意义上说", "归根结底", "可以看出",
"由此可见",
],
"来源模糊": [
"业内普遍认为", "专家指出", "有观点认为",
],
"格式痕迹": [
"——", "✅", "❌", "🚀", "💡", "🎯", "✨", "🔥", "📌", "⚡",
],
}
# ---------------------------------------------------------------------------
# 复核项:结合页面类型与专业语境判断,不机械清零
# ---------------------------------------------------------------------------
REVIEW_ONLY = {
"内部审校话语": [
"当前基线", "当前证据", "已知缺口", "成熟度等级", "页面所述",
],
"抽象术语": [
"闭环", "底座", "形成衔接", "共同约束",
],
"教程式CTA": [
"说明当前流程", "从第一步开始", "按清单准备材料",
],
"标题口令": [
r"^\s*#{1,6}\s*(把|让|先|再)",
r"^\s*#{1,6}\s*(Bring|Start|Let|First)\b",
],
"否定句堆叠": [
"不代表", "不包含", "尚未", "不能",
],
"分析框架": [
"从多个维度", "核心在于", "关键在于", "具体而言",
r"从.{0,20}角度来看",
],
"无来源归因": [
"研究表明", "数据显示", "实践证明",
],
"角色槽位": [
r"(系统|平台).{0,20}(做什么|负责什么).{0,40}"
r"(学生|教师|用户|客户).{0,20}(做什么|看到什么|获得什么)",
r"(学生|教师|用户|客户).{0,20}(做什么|负责什么).{0,40}"
r"(系统|平台|教师|用户|客户).{0,20}(做什么|看到什么|获得什么)",
r"输入是什么.{0,30}(处理什么|怎么处理).{0,30}输出什么",
r"用户需要什么.{0,30}平台提供什么.{0,30}(最终)?获得什么",
],
"工程黑话": [
"闸门", "门禁", "硬约束", "卡点", "护栏",
],
"拟人化技术表达": [
r"[一两二三四五六七八九十百千万亿0-9]+颗(权重|参数)",
"数据喂不够快", r"(存储|内存|显存).{0,20}(道路|路).{0,20}(繁忙|拥堵)",
r"(模型|系统).{0,10}(思考|理解|读懂|看懂)",
],
"绝对化承诺": [
r"每一(次|个|项|条).{0,30}(都|均)", r"所有.{0,30}均",
"任何情况下", "始终确保", "完全避免",
],
"标签化三联": [
r"(看得见|可见).{0,20}(查得到|可查).{0,20}(可追溯|能追溯)",
r"事前.{0,20}事中.{0,20}事后",
r"业务侧.{0,20}技术侧.{0,20}管理侧",
],
}
# ---------------------------------------------------------------------------
# 结构类近似检测:正则给候选,最终要人读
# ---------------------------------------------------------------------------
STRUCTURE_CHECKS = {
# 短句里塞了 4 个以上顿号/逗号,多半是三段式排比或名词堆叠
"疑似排比堆叠": {
"pattern": r"[,、]",
"min_count": 4,
"max_line_len": 60,
},
}