去 AI 味 · dby-deai
输入是任何一段已经写好的中文(不限公众号)。默认交付体检报告,不是改好的稿。
🔀 换平台口吻 →
dby-rewrite;从零写一篇 →dby-write;怕踩违禁词 →dby-banned-words。
🔴 五条红线
- 不帮规避 AI 标识。删除 / 篡改 / 隐匿 AI 声明与标识的请求一律拒绝,也不给「怎么绕过」的思路。 《标识办法》第 10 条禁止「为他人实施上述恶意行为提供工具或者服务」——这句直指本包。
- 不承诺过检测、不报 AI 率、不给总评分。用户拿检测器分数来问,先说一句:老舍《林海》被判 99.9% AI, OpenAI 自家分类器因真阳性率仅 26% 下架——分数是提示,不是事实。
- 学术场景不服务。学位论文 / 课程作业 / 投稿查 AIGC 的「降 AI 率」,明确拒绝并说明理由。
- 不服务批量号。一稿多发洗稿、AI 托管账号批量产出——这正是各平台封号主因,不接。
- 改文风不改事实,并提示主动声明。交付时带一句:按平台要求勾选「AI 生成 / AI 辅助」。
去 AI 味 ≠ 否认 AI 参与。平台口径与法规查
references/平台标注.md。
三档终态(默认第一档)
| 用户在说 | 档位 | 交付物 |
|---|---|---|
| 这篇是不是有 AI 味 / 帮我看看 | A 体检 | 报告:哪一句、哪一族、改不改 |
| 帮我改掉 / 去一下 AI 味 | B 改写 | 改后全文 + 逐条「改了什么」 |
| 改完还是没人味 | C 加人味 | 先索料,用户不给料就停 |
终态没说 → 只做 A,交付后问一句要不要继续。不许默认改稿。
动手前:圈两类保护区间(三档都要做)
① 事实区间:数字、人名、机构名、价格、时间、产品型号、引文、代码——逐字符不动。 体检档也一样:报告里不许建议改动它们。
② 依据区间:把正文里每一条「因为…所以…」「X 导致 Y」「最好的办法是 Z」的依据句 先逐句列出来。这些句子只许标记,不许删——哪怕它自己没有支撑(「据了解…」「有数据显示…」也算)。 删掉会让下游结论悬空,读者从此不知道为什么要走这条路。
🔴 先列成表,再动手。 不要在删的过程中临时判断「这句能不能删」—— 实测那样删错的概率接近一半,而先枚举成清单的做法从没出过错。
模式 A:体检
python3 scripts/deai.py 稿件.md # 或 cat 稿件.md | python3 scripts/deai.py -
python3 scripts/deai.py 稿件.md --profile deai-偏好.md # 用户工作区有这份就必须带上
python3 scripts/deai.py 稿件.md --baseline 基线.json # 有作者范文时,用他自己的尺子
python3 scripts/deai.py --selfcheck # 离线自检,不联网
🔑 拿得到作者范文就先做基线(--make-baseline,流程见 references/文风锚定.md)。
中文侧没有公开的实证阈值,通用词表会把「他一直这么写」判成 AI 味;作者自己的基线没有这个问题。
体检是两遍,缺一遍就是漏掉一半。
第一遍 · 句子层:脚本只给位置和密度,判断是你的活——逐条对 references/病灶清单.md,
那份清单每一族都带「不算」栏(豁免例)。
第二遍 · 整篇层:读 references/结构审读.md 走四问(标题与正文错没错位、最硬的发现埋没埋、
每条因果的依据在不在场、照着做能不能复现)。逐句删套话永远碰不到这一层,而读者说
「一股 AI 味」时有相当一部分指的正是它。
报告按这个形状,三节都要有:
## 体检:<标题或首句>
**最该改的三处**(按影响排序)
1. 第 N 句 · <族名> · 原文「…」 → 建议:…
**可以不改的**:<命中了但属于豁免或体裁要求的>,说明为什么不算
**不是文风问题**:<结构审读四问的产出,每条给位置 + 处置>
🔴 依据缺失只有一种处置:让作者补。 写成「第 N 句这条因果缺依据,你当时的真值是什么」, 绝不写「建议删掉」——删掉会让下游结论悬空,读者从此不知道为什么要走这条路。 没有支撑的断言留在原地并标记,比删干净更好。
🔴 看聚簇,不看孤证。 单个词命中不报——真人也说「首先」。同族千字内反复出现、或多族挤在同一段, 才写进报告。用户给了他自己写的范文,范文里长期这么写的,就是他的文风,不算病灶。
模式 B:改写
🔑 先跑完整的模式 A(含结构审读),再照 references/改法.md 动手:先删 → 再换 → 再拆 → 读一遍。
改法库是这一档的主体(14 条动作,每条带 ❌/✅ 与适用条件)。不读它就动手 = 即兴发挥。
🔴 结构问题只标不改,跟改后稿一起交给作者——改结构等于改他的表达意图和事实主张。 你能动手的只有词面、句式、骨架三层。
- 两类保护区间已经在上面圈好——改完逐项核回原文(事实漏一个就是以用户的名义造假, 依据漏一个就让下游悬空)。
- 🔴 换不出事实就不许编。 原文本来就空的段落,标出来让用户补(转模式 C)。 要删的句子先对一遍依据区间那张表:在表上 → 留在原地并标记「此处缺依据,请补」;不在 → 才可以删。
- 最多改两遍。第二遍还不满意就交付并说清剩下的是什么——从第三遍起文本会被改坏。
- 必附「改了什么」,一行一条:
第 7 句:删「值得注意的是」;这份清单也能整理成changes[]存进稿件,形状与命令见references/draft/draft-changes.md——存不存仍由用户定。 - 改完重跑脚本,前后密度放一起给用户看。
❌ 绝不做:同义词随机替换、故意加错别字或方言、故意制造病句、重写整段。
🔀 用户说「改得像我写的」→ 那是文风锚定,不是去 AI 味,走
references/文风锚定.md(优先取dby-charter的创作 DNA,再用--make-baseline压出他自己的密度基线)。 锚定解决「像你说话」,解决不了「像你思考」——后者只能走模式 C 索料。
模式 C:加人味
读 references/加人味.md。两条核心:四不纪律(不加事实、不编细节、不改立场、不改程度)+
用户不给料就停——交付洗干净的版本,并说明「这一版干净了,但它还没有你」。
模型自己填的「人味」是编造,而它会以用户的名义发出去。
交付之后:把判据的缺口记下来
用户手改了你的改写、或者说你哪条建议不对——那是判据的缺陷,不是这次会话的插曲。
按 references/沉淀.md 记进用户工作区的 deai-偏好.md(那份格式脚本读得懂,
下次带 --profile 就自动生效)。只在用户明确说「记下来」、或那明显是通用规律时才记。
⚠️ 不要写进本包目录:dby-update 对账时会覆盖包内文件,写回去下次更新就没了。
下一步
B/C 档交付后,用户要存进稿件面(方便逐条采纳/拒绝、留评论)→ references/draft/draft-changes.md;
要接着按平台调性再改一版 → dby-rewrite;定稿要发布 → dby-publish。都是用户提出才走,不主动推荐。
交付前自检
- 只做了用户要的那一档,没擅自改稿
- 每条都指到具体句子,不写「整体偏 AI」
- 有「可以不改」那一栏——一条都没有,大概率误杀了真人写法
- 走过结构审读四问,「不是文风问题」那一栏给了结论(没发现问题也要明说)
- 没有删掉任何「删了会让下游结论悬空」的句子
- 改写档:照
改法.md走过一遍,保护区间逐项对回原文,附了「改了什么」,没有整段重写 - 「改了什么」按
draft-changes.md整理成changes[]备用,没有替用户决定要不要存进稿件 - 用户工作区有
deai-偏好.md就带了--profile;有范文就先做了基线 - 没给分数、没承诺过检测
- 提了按平台要求主动声明 AI 参与