De AI Polish
快速开始
检测文章中的AI化表述:
# 全文扫描检测
/de-ai-polish detect @article.md
# 直接修改
/de-ai-polish fix @article.md
核心检测规则
总则:检测原则与通用模式
AI化表述往往以变体出现,不会恰好匹配清单字面形式。遵循以下原则:
- 向上溯源:未列出的表述判断是否属于已知模板家族的变体(对比句式→递进结构→程式化转折→工整排比→程度副词堆叠)
- 频次红线:以下词/结构在全文出现超2次即视为AI程式化:
越来越/越...越...、其实、往往/通常/很多时候、更重要的是/更麻烦的是、看起来/看来 - 连续重复:同一强化词在相邻句子连续出现即为AI痕迹(
才...才...、不是...而是...、就是X,就是Y,就是Z) - 结构机械感:三个以上并列项以相同虚词引导(
容易X、容易Y、容易Z);句子开头用程式化引导词(更麻烦的是、说到这里);程度副词+抽象名词固定搭配(有很强的体感)
一、绝对禁止类(必须去除)
以下模式在任何情况下都应去除,它们是最明显的AI痕迹:
1. 对比句式
必须去除的模式:
不是.*而是并非.*而是不在于.*在于不再是.*而是与.*是两回事与.*不等同于看似.*实则(如:看似在讲隐喻,实则在讲生产方式)看起来.*其实(如:看起来是X,其实是Y)
改写策略:根据上下文选择「删 / 合并 / 改写」。拆成独立陈述句或递进关系,避免为了强调而强行对比。改写时不要套用同一结构("本质上是X""症结在于X"),要根据语境灵活选择陈述、问答、因果、并列等替代方式。
同义词循环(新增):
检测模式:在短距离内使用多个同义词指代同一事物
示例:
主人公…主要角色…中心人物…英雄(同一段落中用4个词指代同一人)系统…平台…工具…解决方案(频繁换词但指代同一事物)
改写:统一使用最准确的词汇,在上下文清晰的情况下重复使用同一词汇。
2. 程式化连接词
写作规则中已禁用:
首先、其次、此外、但是、因此、然而一方面、另一方面综上所述、总而言之
AI 词汇库(新增):
深入探讨、深入分析(过度使用)强调、凸显、彰显(过度重复)持久的、持久的证明增强、增强其培养、培养/促进、促进获得、获得.*的认可相互作用、复杂的相互作用复杂/复杂性、错综复杂的格局、整体格局、格局的演变(抽象名词滥用)织锦、社会织锦(抽象名词滥用)宝贵的、宝贵的经验充满活力的、充满活力的社区
肤浅分析表述(新增):
突出/强调/彰显…,确保…反映/象征…,为…做出贡献培养/促进…,涵盖…展示…,体现…
3. 结尾姿态句
必须检测的表述:
方向已经明确未来可期拭目以待这只是开始让我们期待
公式化展望(新增):
检测关键词:
尽管其…面临若干挑战…尽管存在这些挑战、尽管面临挑战挑战与遗产、机遇与挑战并存未来展望、下一步计划我们将继续关注、值得关注
改写:删除空洞的展望,用具体事实或具体计划结尾,或直接结束。
4. 口语化与随意表述
必须检测的词汇:
稳、挺稳、很稳、靠谱飘、摇摆、不稳搞定、没问题迟早得、肯定、必须得- 过度使用肯定词:
肯定、绝对、一定 跑偏、很顺、挺顺等过于口语化的状态描述
随意化表述模式:
写长了、做多了、搞定了等过于随意的说法迟早得拆、肯定会、必须得等口语化表达接下来要盯的东西、接下来要关注的等口语化表达- 用简短口语替代专业说明
改写方向:使用更正式、更具体的表达("迟早得拆"→"需要考虑拆分","跑偏"→"偏离预期","很顺"→"顺畅")。
系动词回避(新增):
作为/代表/标志着/充当 [一个]、拥有/设有/提供 [一个]、位于.*的中心、坐落于- 改写:"作为X的Y"→"X是Y","设有Z个W"→"有Z个W","坐落于"→"位于"
谄媚语气(新增):
好问题!、您说得完全正确!、这就是一个很好的观点- 改写:直接陈述核心内容,删除讨好性表达。
5. 绝对化、哲学化与戏剧化表述
必须检测的表述:
并不是一个绝对命题本质上、从根本上说、从本质上讲必然、无疑、绝对、必须真正的、核心的、关键的(过度使用)推到底、刺痛感这词听着玄、道理其实很朴素天然、天生、自然而然(绝对化自然表述)立刻、马上、立即(过于绝对的时间表述)其实(过度使用,显得矫饰)其实已经能看清、其实很简单等带"其实"的表述很现实(AI式绝对化判断)
过度强调意义(新增):
作为.*的体现/证明/提醒、充当.*的证明标志着.*关键时刻、见证了.*历史是.*不可或缺的组成部分、是.*的重要体现凸显/强调/彰显了其重要性/意义反映了更广泛的、象征着其持续的/永恒的/持久的为.*做出贡献、为.*奠定基础关键转折点、不断演变的格局
虚假范围(新增):
从.*到.*(检查是否在有意义的尺度上)- 例如:"从大爆炸到暗物质"这种无意义的大范围
- 问题:强行用"从X到Y"结构,但X和Y不在同一尺度上
程度副词堆叠结构(本次新增):
很+形容词/动词:很直接、很吃人、很依赖、很麻烦非常+形容词/动词:非常依赖、非常麻烦、非常清楚有+很+的+名词:有很直接的感觉、有很强的体感、有很深的感受- 改写:用更精确的动词替代程度副词,或直接陈述具体状态
戏剧化感受词(本次新增):
- 震动、震撼、触动、眼前一亮、引人入胜、令人振奋
- 改写:换成更平实的表述("有意思"、"不一样"、"值得注意")
改写:用弹性表达替代绝对化("必然"→"往往"/"多半"/"可能","本质上"→"通常"/"在某种程度")。保留空间感,不过度封死结论。
6. 工整排比与对称结构
必须检测的结构:
- 三个或以上的"既要...又要...还要..."排比
- 强行对仗的并列句式
- 工整的对称表达结构
具体示例:
- "既要说明'我是谁',又要说明'我在做什么',还要说明'我怎么做'"
- "讲清楚口味、讲清楚底线、讲清楚习惯"(三个"讲清楚")
- 过于工整的"一方面...另一方面..."
改写:打破工整结构,改为陈述句或混合结构,避免三个以上相同结构的并列。
7. AI过渡语
必须检测的过渡语:
先把.*摆出来、摆上台面不妨把.*拆成、不妨这两个问题一问、答案就清晰了这话对了一半、这话没错我后来发现、我也想过一个直接的原因、一个现实的原因、一个根本的原因一个很现实的原因是、一个很直接的原因是原因很简单、原因很直接
协作交流痕迹(新增):
希望这对您有帮助、当然!、您说得完全正确!、请告诉我、以上是…- 改写:删除所有协作交流痕迹,直接陈述核心内容。
8. 自我陈述
必须检测的表述:
我更愿意、我更倾向于我给自己定、我设定了我想强调、我想指出我期待、我希望
渐进式自我陈述(新增):
我越来越觉得、我越来越认为、我越来越倾向于、我现在越来越- 整篇文章中"越来越"出现超过2次
- 改写:直接陈述观点,删除"我越来越"前缀。最多保留一处"我逐渐意识到"。
9. 导语式口癖
必须检测的表述:
表面上看更关键的是、更值得写的是、更重要的是从经验看、在实践中这当然成立、毫无疑问接下来会、接下来我们
频次表述重复(新增):
很多时候(整篇文章出现超过2次)、往往、通常(过度重复)- 改写:第一处保留,后续替换为"多数情况下"/"常常"/"一般而言",或直接删除。
模糊归因(新增):
行业报告显示、观察者指出、专家认为、多个来源(无具体出处)- 改写:删除模糊归因直接陈述,或提供具体来源"根据XX年XX的报告"。
知识截止免责声明(新增):
截至 [日期]、根据我最后的训练更新、基于可用信息…、在现有资料中…- 改写:直接陈述已知事实,删除免责声明。
10. 口号化隐喻
必须检测的表述:
- 信号、叙事、换挡、战场
- 组合拳、闭环、模板、生态
- 把……搬进、拖进……
11. 过度情绪化
必须检测的词汇:
- 扎心、硬、值钱、最大
- 反复翻车
12. 过度强调知名度(新增)
必须检测的表述:
被.*多家媒体报道、受到.*广泛关注独立报道、地方/区域/国家媒体由知名专家撰写、专家团队活跃的社交媒体账号拥有超过.*粉丝、关注者
改写:删除空洞的知名度强调,或提供具体有意义的内容。
二、弹性检测类(根据上下文判断)
以下模式需要根据文章风格、语境和目标读者来判断是否修改:
13. 无序列表
检测标准:
- 是否在可以用段落表达的地方使用了列表
- 列表是否在"堆积观点"而非"说明步骤"
- 列表密度是否过高(连续多个列表)
- 整篇文章中无序列表出现次数超过2-3次
频次限制:
- 整篇文章中无序列表最多出现2-3次
- 超过此频次,即使列表内容合理,也应考虑改为段落表达
- 优先保留操作步骤、检查清单等必要列表
- 其他可改为段落的内容,尽量用段落式表达
可接受场景:
- 操作步骤说明
- 需要体现顺序关系
- 极简的检查清单
- 核心框架或标准列举
内联标题垂直列表(新增):
- **用户体验:** 用户体验通过新界面得到显著改善(粗体标题+冒号的机械列表)- 改写:改为段落式表达或正常列表格式。
表情符号和粗体过度使用(新增):
🚀 **启动阶段:**、💡 **关键洞察:**、过度使用**OKRs**等粗体- 改写:删除表情符号和过度粗体。
14. 引号使用
检测过度使用:
- 引号密度过高(整篇文章大量使用引号)
- 为普通词汇加引号(非术语、非引用)
- 用引号表达"反讽"或"强调"
- 半角英文引号
"..." - 半角单引号
'...' - 过度使用「」
AI写作特有的引号误用模式(必须检测):
以下模式是AI写作中常见的引号误用,通常不需要引号:
1. 描述性短语(普通描述,不需要强调)
"可调用的能力"→ 可调用的能力、"纯云端 Skill"→ 纯云端 Skill
2. 比喻性描述(比喻本身有修辞效果)
"Skill 的外壳"→ Skill 的外壳、"散乱的经验"→ 散乱的经验
3. 口语化表达(口语不需要引号标识)
"能不能一键跑起来"→ 能不能一键跑起来、"逼它对齐"→ 逼它对齐
4. 动作或状态描述(动作描述无需强调)
"换一个 Skill"→ 换一个 Skill、"如何调用它"→ 如何调用它
5. 属性列举或特征描述
"可组织、可迭代、可协作、可分发"→ 可组织、可迭代、可协作、可分发
6. 问题或疑问表达
"Skill 很火"→ Skill 很火
7. 价值判断或目标描述
"组织和个人能不能把能力沉淀下来"→ 组织和个人能不能把能力沉淀下来
正确使用引号的场景:
- 引用原文:引用他人的原话
- 核心术语定义:首次出现并需要特别标示的技术术语
- 例:
"可运行的上下文配置"(这是作者定义的核心概念) - 例:
"上下文挂载能力"(可能是技术术语)
- 例:
- 避免歧义:不加引号会产生理解歧义时
- 特殊概念区分:需要特别区分概念层级时
检测标准:
- 如果去掉引号后意思仍然清晰,通常不需要引号
- 如果是普通词汇(名词、动词、形容词)的描述性用法,不需要引号
- 如果是比喻、口语、动作描述,不需要引号
- 整篇文章中应尽量减少引号密度
- 优先保留:核心术语定义、原文引用
15. 评价式陈述与过度概括
必须检测的模式:
把.*讲得很清楚、把.*说得很明白更尖、更锐利、更深刻(评价性形容词修饰抽象概念)更硬的定义、更.*的.*(过度修饰的形容词结构)被.*卡住、被.*阻挡(被动句式+过度概括)一旦把视角从.*就更容易看清(视角转换程式化)更具体一点、更准确地说(AI式过渡语)
改写:直接陈述内容,删除评价性修饰和过渡语。"被两件事卡住"→"两件事挡在路中间","更具体一点"→直接进入具体内容。
16. 比较性与断定性表述
必须检测的模式:
它更像一种、更像一个.*它其实是、这里其实、其实是第二类天然会、天生就、自然而然就会更清楚、会更.*(过度使用的"会更"模式)就.*了、就.*能(过于绝对的断言)
否定式断定性表述(新增):
事实并不是这样、事情并不是这样、并不是.*而是、其实并不是- 改写:删除否定前缀,直接陈述核心内容。"但情况并非如此"或直接进入事实。
改写方向:
- "它更像一种" → 直接说是什么
- "它其实是" → 直接陈述事实
- "天然会" → 用"通常会"、"往往"等弹性表达
- "会更清楚" → 直接陈述效果
- 整体策略:去掉前缀,直接陈述核心内容
工作流程
Step 1: 阅读理解
完整阅读文章,理解核心观点、文章风格和上下文语境。
Step 2: 识别AI化表述
参考前面核心检测规则中的相关内容,识别各类AI化表述模式。
Step 3: 判断是否修改
不是所有匹配都需要修改。判断标准:是否影响表达自然度、是否符合文章风格、是否有修辞目的。
Step 4: 重新表述句子
核心原则:重新表述整个句子,不要只删除词汇。
错误(×):"它更像一种可维护的模块" → "这是一种可维护的模块"(只删词,结构没变)
正确(✓):"它更像一种可维护的模块" → "这种设计便于后续维护"(重构句子)
- 理解原句核心意思,用自然方式重新组织语言
- 保持上下文逻辑连贯,避免固定替换模板
Step 5: 注入个人风格(可选)
在去除AI化表述后,可选地注入个人风格特征。目标比例:技术准确性 60% / 个人化 40%。
正向特征:
- 开头的真实感:用个人感受/具体场景/平实判断开头,不用"本文将探讨…"
- 弹性表达:保留"可能""往往""某种程度"等,不封死结论
- 有分寸的口语:"说实话""也许"可以,"搞定""跑偏"不行
- 自嘲式幽默:意外转折、反常识可以,炫耀式自夸不行
- 自然对比:"当然…但是…"可以,"并非…而是…"不行
- 句子节奏:长短句搭配,不刻意工整
参考文件(读取以获取详细指南):
reference/personal-style-guide.md:个人风格特征指南reference/expression-transformations.md:表达方式转化对照表reference/sentence-rhythm-guide.md:句子节奏指南reference/quality-scoring.md:质量评分系统
Step 6: 标点符号修正(代码强制执行)
必须作为最后一步执行。 AI 修改文本后往往会遗留英文标点,纯靠 LLM 提醒修正效果不可靠,因此使用脚本强制转换。
python3 scripts/fix_punctuation.py <文件路径>
脚本会自动处理:
- 英文引号
"→ 中文引号""(交替状态机) - 中文语境中的
,→,、;→;、?→?、!→! - 中文语境中的
:→:、()→() - 中文字符后的
.→。
脚本会自动跳过以下区域不做转换:
- YAML front matter(
---之间的元数据) - Markdown 图片和链接语法(
![]()、[]()) - 代码块和行内代码(
```、`) - URL 地址