# Novel Deai Detector

> 写完的稿子发布前想知道会不会被判 AI 生成、平台审核会不会卡、读者会不会一眼看出机器味——这套是检测到清洗的完整闭环。 最大价值是**一条反常识的判定规则**：同一段文本、同一个模型，连续检测结果会剧烈波动（实测同一份稿子第一次 78%、复测 18%）。所以**单次结果不能作数**，必须复测 + 换模型复核才能定生死。没这条规则的检测等于抽签。 流程： 1. 初筛定位：用低成本模型跑出 AI 味百分比、风险等级、**具体到哪几句可疑以及为什么** 2. 复测防误判：>60% 不立刻判死，同脚本复测一次 3. 换模型确认：以第二个模型（豆包 Seed 这类）的复核结果为准 4. 清洗：不是「把 AI 词删光」，是**模拟具体真人身份重写**（短句碎句、生活噪音、删掉忽然意识到/不禁/仿佛这类套话、对话抢话打岔），实测能把 78% 压到 22% 5. 清洗后再双模型复测，<30% 才交付 风险线：>60% 高风险（平台拒签/降权）、30-60% 需清洗、<30% 安全。附常见 AI 味特征清单（刻板意象、套话转场、节奏过平）。 触发词：去AI味、AI味检测、AI痕迹、小说过审、网文降AI率、AI检测、朱雀检测、查重过不去。

- Skill: `lingyu9495-source/novel-deai-detector` (Agent Skill, multi-file: 4 files)
- Install (CLI): `npx skillmds@latest add lingyu9495-source/novel-deai-detector`
- Raw SKILL.md: https://api.skillmd.com/api/skills/lingyu9495-source/novel-deai-detector/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: MIT
- Author: lingyu9495-source (https://skillmd.com/u/lingyu9495-source)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/lingyu9495-source/novel-deai-detector

---

# AI味检测与清洗工作流

## 触发条件
- 写完网文正文需要发布前自检AI味（番茄/起点等平台检测+读者观感）
- 用户要求"去AI味"、"AI味检测"
- 任何AI生成文本交付前想确认"查不出AI"

## 一、检测工具
```bash
python ai_check.py <文件路径> [deepseek|doubao]
```
- **deepseek**（默认）：免费快，输出详细（AI味%/风险等级/疑似句+原因/修改建议）——用于初筛+定位
- **doubao**：豆包Seed 2.1 Pro按量付费，输出稳定——用于最终复核
- 评分：AI味0-100%；困惑度（用词是否太标准顺滑）+突发性（节奏是否太平）
- 风险线：>60%=高风险（平台拒签/降权）/30-60%=中风险（需清洗）/<30%=安全

## 二、⚠️ 随机性pitfall（2026-08-10实测，最重要！）
**同一文本同一模型连续检测，结果波动极大——单次结果不可信！**

实测案例（《问骨》黄金三章）：
| 文件 | 第一次 | 复测 | 豆包复核 |
|---|---|---|---|
| 第1章初稿 | 78% | — | 清洗后22% |
| 第2章清洗后 | 78% | 18% | 15% |
| 第3章清洗后 | 78% | 25% | 20% |

**判定规则（防误判）**：
1. 单次>60% **不要立刻判死**——立即用同一脚本复测1次
2. 最终判定以 **豆包Seed复核** 为准（实测最稳定）
3. DeepSeek用于初筛+定位疑似句，豆包用于最终确认
4. 同一文件复测<30%且豆包也<30% → 判安全
5. 清洗后必跑双模型复测，不信单次结果

## 三、清洗流程（超标怎么办）
1. **模拟人深改**（最有效）：用"老刀"式具体真人身份重写（见 multi-layer-simulated-human-writing 技能）
   - 实测：第1章78%→22%大幅下降
2. 深改原则：短句/碎句、生活噪音（围观骂声/手机铃/烟味）、删"忽然意识到/不禁/仿佛"、对话抢话打岔、细节"多余"、结尾悬念埋动作里不搞工整反转
3. 清洗后**必须双模型复测**（DeepSeek初筛+豆包确认），<30%才交付

## 四、外部工具调研结论（2026-08-10）
- GPTZero/ZeroGPT 可访问但**对中文检测效果一般**，免费额度有限
- 最优方案=**自有模型矩阵**（DeepSeek免费主检+豆包Seed复核）：效果更好+免费可批量+贴合中文网文

## 五、常见AI味特征（DeepSeek检测器识别出的）
1. 典型"细节锚点"写法（"老式铜钱+青斑"式刻板意象）
2. "忽然意识到/忽然瞥见"作为悬念转折（句式工整）
3. "总结式反转"（前后对仗工整，信息释放线性）
4. 对话像工具人交接信息
5. 排比三连/破折号泛滥/问答闭环

## 四B、⚠️ 豆包复核长文本超时处理（2026-08-15实测）
**doubao模式检测2万+字全文会超时**（Seed 2.1 Pro thinking模式逐字思考+全文太长，urllib timeout=240直接TimeoutError）：
- **解决：分段检测**——脚本拆两半（每半~1.6万字符），各自带"片段1/2"提示跑，timeout≥420，两段AI味取均值
- DeepSeek主检无此问题（快），只有豆包复核需分段
- 分段后豆包给出的是**段落级实锤**（引用原文+原因），比DeepSeek更可信

## 四C、⚠️ 豆包重复指控会夸大——重复检测必须脚本验证（2026-08-15实测）
豆包复核说"像吞了根烧红的铁丝一字不差出现4次"，**实际全文只有1次**；但"我知道，这样的日子过一天少一天…"三连排比模板**确实重复3次**（换词不换结构）。判定规则：
1. **豆包给出的具体重复次数不可全信**——先跑脚本 `t.count(关键词)` 核实再下结论，别直接引用豆包数字
2. 但**结构复用指控通常属实**——"我知道……哪怕……是偷来的"×3（一天/一秒/一晚只换词不换结构）是真AI味信号，检测时按**去名词化结构**匹配（保留"我知道…哪怕…偷来的"骨架，忽略换掉的具象词），不要只做精确字符串匹配
3. 精确字符串count为0不代表没重复——正文含`\n\n`换行，整段匹配会0命中，需先归一化空白（`re.sub(r'\s+','',t)`）再查
4. **抒情排比模板复用=强AI味实锤**：同一段"我知道×3→但我还是想→哪怕×3→哪怕这一X，是偷来的"结构在千余字内出现3次，是AI长文本生成"调用已验证句式模板"的典型缺陷

## 五B、内容级AI痕迹4大特征（2026-08-14凌乾项目实测·比句式更致命）
检测时逐项扫，命中即判AI嫌疑：
1. **比喻密集+同质化**：几百字内连续同类型现代比喻（"像超时订单/像催收短信/像爆单提示音"连发）=AI比喻生成器模式。真人偶尔用一两次，不会连发
2. **短句机械节奏**："三连短句—换行—对话—再短句"均匀模板感（AI爱独立成段短句，真人会打破，插入长句）
3. **系统提示【】套路**：方括号+术语（阈值/编制/可召唤/激活）=AI系统流模板词
4. **情绪标签+动作配对公式化**：每个情绪点配一个标志性动作（母亲推/阿禾咬指甲/凌乾咬碎牙——太齐整=情绪清单）
**另**："不是X是Y"句式（"不是人头，是布""不是哭，是火"）是典型AI修辞——20+处密集=暴露，每章保留2-3个冲击力最强的，其余改直述

## 五C、真人化清洗5指令（AI味92%→双模型安全区实战验证）
按此清洗后实测：DeepSeek 92%→45%（压线）、豆包复核10%（安全）——**双模型分歧处理：DeepSeek保守、豆包乐观，取中间值，若压线再清洗一轮**：
1. **打散比喻**：每300字最多1个现代生活比喻，其余换感官细节（温度/气味/光线/声音/触感）
2. **打乱短句**：连续3个短句后插1个15字以上长句（心理/动作/环境）
3. **野化系统提示**：删【】和术语，用具象化描述（"脑子里有什么东西裂开了，像瓦罐摔在井沿上，碎片里传来含混的声音：血祭，可召一人。"）
4. **情绪不配对**：留白/跑偏/暧昧不清，不每个情绪点都精准落位
5. **加真实毛边**：具体价格/人名/欠账/口误/环境噪音（"冰袖九块九两双""王婶欠三百钱吊死了"）——AI模仿不出的生活细节，是防AI检测最有力的特征

## 五D、⚠️ 清洗副作用坑（v3/v5两次踩！必跑修复）
**Kimi文风转化/真人化清洗会破坏文本格式**：
1. **丢中文弯引号**（“”→裸直引号"）——清洗后grep `"` 统计，若出现直引号=坏了
2. **引入穿帮词**（历史文"哥"→西晋无！）
3. **行尾无标点**（2026-08-14实测）：长句被拆行后行尾无标点（"…嵌着皂角的黄\n洗不掉"）——行尾无标点叙述行补逗号（跳过对话/标题/空行）
**修复脚本逻辑**：按行扫描，in_quote标记，直引号`"`交替转`“`/`”`；修复后验证成对（opens==closes）
**清洗后必跑三查**：①引号修复（成对验证）②称谓穿帮扫描 ③标点修复（行尾无标点补逗号）④手机排版复检（叙述长句>40字拆，对话长句保留——一口气读完的气口）
**断句判断（重要）**：真人化节奏断行（"洗不掉。"独行=强调/顶针修辞"颤得他牙根发酸\n酸得他想起…"）≠错误拆分——AI审阅者（GLM/豆包）会误判为"断句残段"，保留有标点的强调断行，只修无标点的

## 五E、听书适配（阅读+听书双优）
网文在番茄/喜马拉雅有大量听书用户，AI味检测后还要过"听感"关：
1. **对话标记用"说"不用"曰"**——"曰"是书面语，听众耳朵分不清谁在说话；"说"人耳可辨识。文风转化若把对话全改成"曰"（耳朵听不出）必改回"说/道"
2. **叙述长句拆短**：>40字的叙述段拆成2-3个短句（一口气读完，朗读不喘）；对话长句保留（气口演员可停顿）
3. **同音歧义**：听书场景同音词易误解，避免"某"类书面谦称堆叠（可用"我/小的"）
4. **验证法**：改完用TTS试听一遍，听不出"谁在说话"的地方=对话标记没写明白

## 五F、平台级检测：量化定位"刺头章"+AI鉴AI模拟（2026-09-05送魂女3次评估终止实锤）
**关键认知：推荐评估/查因看的是"已发布章节"，且线上内容≠本地文件（发布可能用早期稿）——诊断必须先CDP抓线上已发布全文逐章分析，不能用本地稿代替**（送魂女线上1-55章全文抓取脚本=published_links.json逐个modifychapter打开存innerText，见 fanqie-compliance-guard references/推荐评估机制与终止实战）。
**逐章AI特征量化脚本逻辑**（analyze_ai_features.py，脚本在 research/）：每章算①比喻密度=像/如/仿佛/好似/如同/宛如 每千字 ②句长CV（按。！？分词）③破折号数 ④章尾类型（意象/设问/对话/动作/其他）→ 排序出问题清单。

**⚠️ 比喻密度必须精口径统计——粗口径会翻倍虚高（2026-09-07实测修正，最重要）**：
正则 `像|如|仿佛|…` 会把**固定词里的字**误算成比喻："画像"的"像"、"如果/如何/比如/例如/假如/犹如/就算"的"如"等。送魂女40章含"画像"16次→粗口径34处(14.5/千字) vs **精口径17处(7.2/千字)**，差一倍！2026-09-05诊断的"40章14.5"是粗口径虚高，31/44章等数据同样可疑需复核。
- **精口径做法**：统计前先剔除固定词 `画像|如果|如何|比如|例如|假如|如若|何如|就算|好像|好比|诸如|譬如`（`re.sub(FIXED,'',t)` 后再数）——analyze_features.py 双口径同出，判刺头章/做对比一律用**精口径**
- **比喻清单提取（给改写用）同样要先剔除固定词**——本次 list_similes 脚本按句扫比喻词，把16处"画像"全列进清单=清单废一半
**实测阈值（送魂女55章线上，精口径下40章需重判）**：
- 比喻密度 **≥7/千字=刺头章**（人类正常3-6；精口径40章7.2刚超线、降密版已4.7达标）；密度≤4.6（第1章）判定安全
- **不是"哪卷"的问题，是"哪几章"的问题**——老章节也有刺头（31/40/44章爆表），好章（1/2/16/18/27章2-4.6）证明深改方法有效，只是部分章没洗透
- 句长CV<0.45=节奏太均匀（49章0.442）；章尾同构比例高=机器拍子
**AI鉴AI模拟平台检测**：豆包seed-2-1-pro当检测器，prompt要求按"困惑度/突发性/句式/比喻密度/机器节拍"五维给AI生成概率%+原文例证+结论。实测第1章判定10% AI率"优质人工原创"（困惑度高：西关地域+白事行业专属细节、比喻贴人物如"擂棺材板/孝鞋像刀"）——**走人工审+深改流程的老章节其实干净，评估不过常在个别刺头章把整体分布拉高**。
**改写工具链实测（救刺头章选型，勿重蹈）**：
- deepseek-v4-pro 对"去AI味/删比喻改写"成功率极低（整章7章成2章且缩水截断如2396→1732字末句截断；分段5章全空返回）
- Kimi K3 关thinking对改写同样空返回；豆包旧key易超时
- **doubao-seed-2-1-pro（满配额Ark key）改写成功**：187秒返回，删"像"且补民俗细节——降密改写主力=豆包seed-2-1-pro
**降密改写prompt铁律（完整模板见 references/番茄AI检测量化定位与降密改写_20260905.md）**：拆3段每段~800字防超时；只删约1/3比喻（优先：连续挤一起的/俗套的/删了也自然的）；严禁改剧情/对话/民俗细节/人物名/段落顺序/第一人称；字数控制原段85-100%；**一致性门禁=剧情关键词（波罗堂/阿福/画像等）出现次数降幅<20%才算过**；输出不得含状态卡/标题/解释。删法示例："声音像从嗓子眼挤出来的"→"声音发闷"；"目光像刷子扫过"→"目光扫过"；"心跳像被攥住"→"心跳漏了一拍"。
**评估降密成效必用精口径**——曾误判"旧打法执行保守无效（40章只降14→12/千字）"，实为粗口径；精口径下原文7.2→降密版4.7已达标，旧打法没废，只是只解决了比喻维度。
**新打法探索（2026-09-07试验中）：破节拍OS改写**——借鉴《哈哈哈大明》"作者插话"降AI味机制（插话破机器节拍/升困惑度），但换成安全形式：第一人称女主内心OS碎碎念/市井口语毛边（不跳戏、不对读者说话、不碰正文夹带非正文红线）。双管齐下prompt=删比喻+自然融入2-4处角色OS（"我心里骂了一声晦气""这行的规矩我门儿清"式）。完整试验设计/脚本/对比结果见 references/比喻密度口径修正与破节拍OS改写试验_20260907.md

## 六、与写作流程的衔接
- 在 novel-master-workflow 阶段H5 / novel-writing-from-scratch 阶段E 执行
- 每10章一批检测 → 中高风险用模拟人深改重写 → 复测通过才交付

---

## 🙋 关于作者

**九品锦锂e** ｜ 把踩过的坑封装成"拿来就能跑"的 skill，不写教科书。这个 skill 是我自己每天在用的版本。

**微信：ly5419495**（加时备注「SkillHub」，我优先通过）
**公众号：初五Agent**（微信搜一搜，复盘和方法都写在那儿，不加微信也能读）

我另外做的几个能直接跑的工具，都放在这个货架页（复制到浏览器打开）：
https://skillpay.alipay.com/public/jiupinjinlie

用的时候卡住了、或者有别的场景想让我封装成 skill，按上面任意方式找我就行。

![九品锦锂e 微信二维码](https://jinli-vault-1372591613.cos.ap-guangzhou.myqcloud.com/skillhub/hook-wechat-jiupinjinlie.png)

