📍 词元二号站 开源解码 AI 写的中文总像"没人写的"?拆解开源项目 human-writing:从材料、推进、中文三个维度把"活人感"找回来

AI 写的中文总像"没人写的"?拆解开源项目 human-writing:从材料、推进、中文三个维度把"活人感"找回来

摘要:拆解数字生命卡兹克开源的 human-writing(活人感写作)Skill,从材料、推进、中文三个维度解决 AI 味问题,详解现实与虚构分流、五步写作流程、硬禁令清单、check_prose.py 一键扫雷与 1.1 版本升级,附安装方法与实操体会,适合公众号、知乎、博客写作者参考。
字号 100%
行距 2.05
当前可见 60% 的内容
本文由 辛梓煜@词元2号站(www.ciyuanerhao.com)撰写,转载请注明出处。

快速摘要: 把选题丢给 AI,几分钟后它还给你一篇结构完整、案例齐全、金句现成的文章,每个字你都认识,可你就是不敢署名——这是过去一年里几乎每个用 AI 写过东西的人的共同困惑。本期我拆解的是数字生命卡兹克开源的 human-writing(活人感写作)Skill,它治的不是"去 AI 味"的表层,而是三个根上的问题:有没有东西可写(材料)、每段有没有往前推进(推进)、写出来像不像中文(中文)。项目把现实写作与虚构创作在入口处分流,用五步流程产出初稿,再靠一个 check_prose.py 脚本一键扫雷,禁冒号、禁破折号、禁"不是……而是……"这类翻案句。根据项目更新日志(CHANGELOG)与 GitHub Release,该项目已于 2026 年 8 月发布 1.1.0 版本——仓库 VERSION 文件、README 与 Release 页面均已更新到 1.1.0,不是规划中的内容——检查逻辑从"拦字面"升级为"拦动作"。全文含安装方法、仓库结构、脚本用法与我的实操体会,新手照抄即可上手。想看完整拆解,往下翻。


一、为什么 AI 写的文章总是差一口气

先把话说在前面:这篇文章不是来骂 AI 的。我自己天天用 AI 干活,写选题、理思路、查资料,它确实快。但快归快,我手里压着好几篇 AI 出的初稿,改来改去还是觉得别扭,最后索性推翻重写。

你大概也有过类似的体验。把一个选题交给 AI,几分钟以后,它还给你一篇三四千字的文章。标题有了,结构有了,案例有了,结尾甚至还有一句适合单独截图的金句。每个字都认识。可你就是不敢发。

因为它太顺了,太完整了,也太像一篇谁都可以署名的文章。

我最早也以为是自己的问题,觉得可能是提示词写得不够好,或者是模型不够聪明。于是我开始折腾各种"去 AI 味"的办法。最常见的路子是把"首先、其次、最后"换掉,把"赋能、抓手、闭环"删掉,把长句切成短句,再加几句"说真的""我当时就愣住了"。折腾半天,文章确实不那么像报告了,但还是不像我。

后来我琢磨明白了:这些调整解决的是 AI 味露在外面的那层皮,真正的问题根本不在这。

一篇 AI 写的文章,信息有,观点有,故事有,结构有。唯独没有一个真实生活过的人。没有材料支撑的判断,没有具体动作承载的情绪,没有真正来自某个经历的细节。它正确、完整、流畅,但读下来就像一份"标准答案"——什么都对,可谁也不会把它当成自己的东西。

更难受的是,AI 本来应该帮你节省时间。结果它两分钟写完,你花两个小时修改。删套话,查事实,替换那些根本没有发生过的例子,还要把一段段正确但没用的话重新拧出重点。到底是 AI 在帮我写,还是我在给 AI 收拾作文?

我在词元二号站写东西这几年,最大的体会是:读者其实不傻。文章是不是"真人写的",他们不一定说得清理由,但感觉一定准。一篇文章如果通篇没有一件具体的事、没有一个真实的判断、没有一句像人说的话,那它写得再漂亮,也留不住人。

所以当我看到卡兹克(数字生命卡兹克)开源的 human-writing 项目时,第一反应是"终于有人从根上解决问题了"。它不教你换几个词、改几个句式,而是把写作拆成三个可以逐项检查的环节:材料、推进、中文。这三件事,恰好对应了 AI 写作的三个根本缺陷。

下面我先把项目的全貌讲清楚,再带你把每一步拆开揉碎,最后附上安装方法和脚本用法。整篇读下来大概需要十分钟,但能省下你以后无数个"给 AI 收拾作文"的晚上。


二、活人感写作是什么,它和"模仿某某风格"有什么不同

先给不熟悉的朋友补个背景。数字生命卡兹克在 AI 圈和开源圈都挺有名,他维护的 khazix-skills 仓库是一套他自己日常在用的 Agent Skill 合集,涵盖写作、研究、项目管理几个方向,在 GitHub 上积累了相当数量的 Star。human-writing 和 khazix-skills 是并列的两个独立仓库——它并不包含在 khazix-skills 合集里,在 GitHub 上也是各自独立的主页,这点别搞混。human-writing 的仓库地址是 github.com/KKKKhazix/human-writing,中文名叫"活人感写作",用 MIT 协议开源,仓库 VERSION 文件与 Release 页面显示当前版本为 1.1.0(2026 年 8 月正式发布)。

要理解这个项目,得先知道它之前发生过什么。卡兹克最早开源过一个"卡兹克风格写作"的 Skill(khazix-writer),把公众号「数字生命卡兹克」的写作风格——节奏、用词、禁忌、自检体系——全部固化成了规则。装上以后,AI 写出来的东西确实很像他,口吻、节奏、观点密度都对。

但这里有个问题,他自己也意识到了:如果所有人都装上同一个风格 Skill,让 AI 写出来的东西都像同一个人,那不叫活人感,那叫批量生产。一万个账号共用同一张嘴,写出来的东西连语气都一样,读者迟早会审美疲劳,而且这种内容没有任何稀缺性——你能装,我也能装。

所以 human-writing 换了一个完全不同的方向:它不负责把你改造成谁,而是试着从你的材料里,把你找回来。

这句话值得反复读几遍。传统思路是"给 AI 一个模板,让它照着写",活人感写作的思路是"把你的真实材料喂进去,让 AI 帮你组织、帮你写,但内容的地基是你自己的"。风格不是外挂的皮肤,而是你这个人本身带出来的。

对比维度

卡兹克风格写作(khazix-writer)

活人感写作(human-writing)

核心目标

让 AI 写出"卡兹克"的风格

让 AI 写出"你自己"的味道

风格来源

预置的作者风格规则与词库

使用者提供的真实材料与经历

适用人群

喜欢卡兹克文风、想复刻的人

有自己素材、想让文章像自己的人

主要风险

千人一面、批量生产

需要你提供足够扎实的材料

检查方式

四层自检体系

材料、推进、中文三件事 + 脚本扫雷

我自己用下来的感受是:前者像借了一副别人的嗓子唱歌,后者像把自己的嗓子练出来。对大多数普通写作者来说,后者的路可能更长,但走的是自己的道。

那它到底怎么做到"从材料里把你找回来"的?核心就一句话:先保证你有东西可写,再保证每段都在往前走,最后保证写出来的是人话。这三件事,我下一章展开讲。

三、三根支柱:材料、推进、中文

human-writing 的核心逻辑非常简洁,一张表就能说清楚。它把"写得像人"这件事拆成了三个可以独立检查的环节,每个环节对应 AI 写作的一个典型缺陷。

支柱

管什么

对应缺陷

检查方式

材料

有没有东西可写

AI 用想象补事实、编数据

现实写作核准事实、数字、引语和亲历;虚构写作检查人物、行动与因果

推进

文章有没有往前走

换着说法重复同一个观点

每个新段落都要带来新事实、新动作、新例子、新区别或新后果

中文

写出来像不像中文

报告腔、模型腔、长句堆叠

白话打底,重视词序、停顿、照应和分寸,清除报告腔与模型腔

这三个字看着朴素,其实是把写作这门玄学变成了可检查的工程问题。我一个个说。

材料:先问自己,手上有没有东西可写

AI 写文章最大的问题之一,是用想象补事实。没有经历过的事情,它可以编出一个"比如有个人";没有来源的数据,它可以造一个"据调查显示";不知道当事人当时什么表情,它敢写"他微微一笑,眼神里闪过一丝坚定"。

这类细节看着生动,其实是最大的破绽。因为读者一旦发现一个细节是假的,整篇文章的可信度都会跟着塌。

human-writing 的做法是,动笔之前先过一道材料关。现实写作——真人、历史、新闻、数据、评测、教程、个人经历这类——要求材料必须能核验,数字、引语、经历都要有来源;材料不够就去查,查不到就追问,追问不到就缩短篇幅,宁可写短一点,也绝不用假例子和重复解释灌字数。

我举个自己的例子。之前我想写一篇关于用 AI 整理读书笔记的文章,初稿让 AI 来写,它给我编了一个"有位读者用这个方法三个月读了 80 本书"的例子。我一看就知道是假的,删掉之后发现那段论述变得很空。后来我老老实实写自己是怎么用 AI 整理《人类简史》笔记的,哪一章处理得顺、哪一章模型理解跑偏了,写出来反而比那个编的例子有说服力得多。

虚构创作的要求不一样,它可以自由创造人物、场景、对白和结局,但每个主要场景仍然要有目标、有动作、有变化。换句话说,虚构允许你编,但不允许你编得没意义——场景里的人物得在"做事",而不是在"摆拍"。

推进:每一段都要带来新东西

AI 写作的另一个通病,是用不同的说法重复同一个观点。把"用户体验很重要"换成"用户感受是关键",再换成"用户视角不可或缺",三段话讲的其实是同一件事。这种注水段落单看每一段都挺对,但连在一起读,读者会觉得文章在原地转圈。

human-writing 对推进的要求很硬:每一段都必须带来新东西——新的事实、新的动作、新的例子、新的区别或新的后果。判断标准也很朴素:如果删掉这一段,前后文毫无影响,那这段就是注水,砍了。

这个标准我后来直接搬到了自己的写作流程里。现在每写完一段,我都会问一句:这一段删掉,文章会变吗?如果不会,那它就没有存在的必要。就这一个动作,我稿件的字数通常能砍掉两成,而且砍完反而更耐读。

顺带说一句,推进不光是内容层面的事,也是结构层面的事。段落之间要接得住:后一段接住前一段留下的问题,或者把前一段抛出的线索往前推一步。这样读者才会被带着走,而不是被一段段"正确但无关"的话拖着走。

中文:让文字回到人话

AI 生成的文本自带一股"报告腔"和"模型腔":喜欢用长句,喜欢堆抽象名词,喜欢用比喻把简单的意思包装得高深。读起来不像一个人在说话,像一份没有落款的公文。

human-writing 对中文的要求是白话打底,重视词序和停顿,清除冒号、破折号、翻案句和商业黑话。什么叫词序和停顿?举个最简单的例子:同样的意思,"这件事我认为是有问题的"和"我觉得这事儿吧,有问题",前者是书面语序,后者是口语语序,读起来的节奏完全不同。真人说话是有呼吸的,停顿的位置、句子的长短,都有讲究。

我自己还有一个附加的土办法:写完一段,自己出声读一遍。读得顺、读得像人话,就留下;读着拗口、像念文件,就重写。这个办法土,但非常管用,因为"像不像人话"这件事,耳朵比眼睛敏感得多。

这三根支柱不是各管各的,它们是一条流水线:材料解决"写什么",推进解决"怎么写下去",中文解决"写出来像什么"。任何一环掉了,文章都会露馅。而 human-writing 的聪明之处在于,它把这三件事全部变成了可执行的检查项——这就为后面用脚本自动扫雷铺平了路。

举个三支柱同时生效的例子。假设你要写一段"用 AI 整理读书笔记"的体验,AI 味的写法可能是:

在当今快节奏的时代,AI 技术赋能了知识管理,用户可以通过智能工具实现效率的提升,这无疑是认知跃迁的重要抓手。

这句话材料是空的(没有一件具体的事),推进是假的(换个说法重复"AI 有用"),中文是脏的(赋能、抓手、认知跃迁)。按三支柱改造一遍,变成:

我把《人类简史》的电子版丢给 AI,让它按章节生成摘要,结果第一章的摘要和我在书边的批注对不上。我花了一个晚上调整提问方式,才摸清楚它理解的"重要"和我理解的"重要"不是一回事。

材料有了(具体章节、具体冲突),推进有了(从丢书到对不上到调整提问),中文顺了(短句、停顿、大白话)。同一个意思,两种写法,读者分得清哪个是人写的。

四、现实与虚构,两条路分开走

human-writing 有一个很聪明的设计:从入口处就把现实写作和虚构创作分开。我最初没太在意这一点,用了几次才咂摸出味道——它避免的是"用写论文的规则写小说,用写小说的方式写评测"这种错位。

很多通用的写作建议之所以让人觉得别扭,就是因为它们试图用一套规则覆盖所有文体。讲事实的文章要求"细节越具体越好",可你写小说的时候,房间窗帘的颜色、人物端咖啡的姿势,本来就可以是编的;反过来,写评测的时候你要是"自由发挥"几个数据,那读者直接可以拉黑你。规则没有错,错的是用错了地方。

human-writing 的处理方式是在流程的最前面加一道分流闸,先搞清楚这篇文章对现实作出了什么承诺,再决定用哪套规则。

对比维度

现实写作

虚构创作

覆盖类型

真人、历史、新闻、数据、评测、教程、个人经历

小说、故事、对白、剧本、虚构散文

材料要求

可核验,有来源;不够就研究或追问

可创造人物、场景、对白、心理和结局

细节规则

不编造精确时间、神态、天气、房间摆设等假细节

细节跟着人物视角走,为叙事服务

场景要求

事实、数字、引语、亲历要经得起查

每个主要场景要有目标、动作或变化

红线

绝不用想象补事实

不伪造现实来源,不假装自己是纪实

现实写作的规矩是"材料必须能核验"。写一个人物,他的经历、他说过的话、他做过的事,都得有出处;写一个数据,得知道它从哪来、统计口径是什么;写一段个人经历,那得真的是你经历过的。卡兹克在项目里有个说法我很认同:现实写作里,材料不够就追问或研究,绝不用想象补事实;宁可篇幅短,也不造假。

这里有个容易踩的坑:不是只有数据才算"事实"。精确的时间、神态、天气、房间摆设,这些"氛围细节"同样算。AI 特别喜欢给现实题材加戏,写一个人物出场,自动配上"午后三点,阳光透过百叶窗,他推门进来,神色疲惫但眼神坚定"——这套东西用在小说里是加分项,用在人物报道里就是事故。因为读者一旦去查证发现那天是阴天,你的整篇报道都跟着贬值。

虚构创作那条路宽松得多,人物、场景、对白、心理、结局,全都可以创造。但它也不是没有规矩,规矩是:每个主要场景要有目标、动作或变化。什么意思?就是说你写一个人坐在咖啡馆里发呆,可以,但这个人得"正在想什么""正在等谁""刚经历了什么",他得有内在的动作;如果场景只是为了让主角换个地方继续说同一段话,那这个场景就是废的,该删。

两条路在入口处分流之后,初稿完成再用各自的标准审稿,互不串味。我自己写东西的经验是,这个分流设计还有一个隐藏的好处:它逼着你在动笔之前先想清楚"我写的东西,对现实负责到什么程度"。想清楚了这一点,很多写作上的犹豫和反复都会消失——你知道哪些细节可以放开写,哪些细节必须死磕出处。

顺带多说一句,这个"入口分流"的思路其实可以推广到写作之外。你让 AI 帮你整理一份公司周报,和让 AI 帮你写一段朋友圈文案,用的规则本来就该不一样。很多人觉得 AI 写东西"什么都像又什么都不像",某种程度上就是因为没有在开头把预期和边界说清楚。

五、五步写作流程拆解

human-writing 把整个写作过程编排成了一条清晰的流水线。我照着它跑过几遍之后,最大的感受是:它不是让你"想到哪写到哪",而是每一步都有明确的检查动作,每一步都在为下一步清场。下面按顺序拆。

第一步:判断现实或虚构

写作之前,先确定这篇文章对现实作出什么承诺。用户说了"小说""虚构""假设",直接进创作流程;用户要求真实、纪实、亲历,先核验再写。

这一步看起来简单,实际上很关键。因为很多作者自己都没想清楚:一篇"我的 2025 年终总结",里面到底哪些是事实、哪些是美化后的记忆?一篇产品评测,哪些是真实体验、哪些是脑补?在入口处把承诺定下来,后面所有的规则才有落点。

我的实操经验是,这一步最好在提示词里就明确写出来。比如"这是一篇真实经历分享,所有细节必须来自我的真实体验"或者"这是一篇虚构短篇,可以自由创作",把承诺前置,AI 后面犯错的概率会小很多。

第二步:检查材料

现实写作要列一份具体的材料清单——用户提供的经历、已查到的案例、数据、产品流程。这里有个具体的量化标准:至少五件具体材料,才能支撑一篇一千二百字以上的非虚构作品。材料不足,要么去补,要么压缩篇幅。

虚构写作的材料检查不一样,它检查的是每个场景有没有人物目标、动作和变化。你可以没有"事实材料",但你不能没有"戏剧材料"——每个场景里人物在干什么、想要什么、怎么变了,这就是虚构的原材料。

我自己写长文前会先列一张材料清单,像这样:

选题:用 AI 整理读书笔记的真实体验
材料 1:我自己整理《人类简史》笔记的具体过程
材料 2:AI 摘要和我的批注冲突的那个段落(真实案例)
材料 3:三个常用工具的实测对比结果
材料 4:我踩过的坑(模型把作者观点和我的观点混在一起)
材料 5:一篇笔记从原始文本到成稿的完整链路

列完这张清单,文章大概能写多长、还缺什么,心里就有数了。清单凑不够五条的时候,我会果断把选题砍小,而不是硬写。

第三步:直接写第一稿

材料过关之后,带着具体的说话者和材料直接开写。这步有两个要求很反直觉,但特别有用:

第一,开头尽快碰到事情,不要预告全文结构。很多 AI 文章的开头是"本文将分为三个部分,首先……其次……最后……",读者看到这种开头直接就划走了。正确的做法是开头就进入事情本身。

第二,每段增加一件新东西,后一段接住前一段留下的问题。这正是前面说的"推进"在流程里的落地。写的时候不要回头改,先把初稿冲出来,改稿是后面的事。

第四步:按文体修正

初稿完成,根据文体类型调整结构和节奏。知乎回答、论坛长帖、公众号文章、博客,各自的节奏和写法都不一样。human-writing 的 references 目录里专门有 forum-prose.md 讲这块——知乎回答怎么开头、公众号长文怎么组织段落、论坛帖怎么保持口语节奏,都有具体的做法。

我自己的体会是,文体修正本质上是在调"信息密度曲线":公众号长文需要在开头几段抓住人,知乎回答需要先把结论给出来,论坛帖需要保持对话感。同样的材料,套不同的文体模板,出来完全是两个东西。

第五步:检查硬规则

最后一步是扫雷,由一个 Python 脚本 check_prose.py 辅助完成,检查文章是否命中明确的禁用项——禁用的标点、句式、词语、路标、黑话,以及长句、连续短段等形状问题。脚本只负责发现,不自动修改,把问题分成"需要修改"和"需要人工判断"两类,由作者决定怎么处理。

整个流程走下来,可以用一张图概括:

flowchart TD
    A[收到写作需求] --> B{现实 or 虚构?}
    B -->|现实| C[列出材料清单<br>至少五件可核验材料]
    B -->|虚构| D[检查每个场景<br>有无目标/动作/变化]
    C --> E[直接写第一稿<br>每段带新东西]
    D --> E
    E --> F[按文体修正<br>知乎/公众号/论坛/博客]
    F --> G[运行 check_prose.py 扫雷]
    G --> H{有硬伤?}
    H -->|是| E
    H -->|否| I[定稿输出]

如果你自己写文章想偷懒,也可以只做前三步,把第四步和第五步交给脚本和编辑器。但流程里最值钱的其实是前三步:它们保证了文章有东西可写、每段在往前走、开头就能抓住人。这三点做到了,文章的下限就已经很高了。

我把这套流程稍微改了一下,用在自己写博客上,变成下面这个简化版伪代码,你可以参考:

输入: 选题, 个人素材
1. 判定类型: 现实/虚构/混合, 明确对现实的承诺
2. 材料检查: 列出 >= 5 条具体材料, 不足则缩小选题
3. 写初稿: 开头直接碰事情, 每段只新增一件东西
4. 文体修正: 按发布平台调整开头与段落节奏
5. 自查: 出声朗读一遍 + 脚本扫禁用项
输出: 定稿

这套东西真正跑顺之后,你会发现写稿的时间大头从"改稿"挪到了"备料"——而备料恰恰是 AI 帮不了你、只有你自己能做的事。这其实也是"活人感"的底层逻辑:你的材料越具体、越真实,文章就越像你。

六、那些"不能出现"的东西:硬禁令清单

如果前面的材料、推进、中文是"要做什么",那这一章就是"不要做什么"。human-writing 里有一套严格的硬禁令,覆盖标题、小标题、正文和引用。我把它们归成五类,逐类说清楚,再解释一下为什么要禁。

第一类:禁用标点

中文冒号、英文冒号、破折号、连接号,全部禁用。

第一次看到这个规则的人多半会觉得夸张:冒号凭什么不能用?但你想一下 AI 文章里冒号和破折号出现最多的地方——"核心观点:""关键就在于——""答案是:"。这些标点几乎成了 AI 用来"划重点"的固定手势,一出现,读者就知道接下来要开始"讲课"了。破折号更是 AI 最爱用的"解释性插入",一段话里塞两三个破折号,节奏立刻碎掉。

真人写作里,冒号出现频率其实很低,解释关系更多靠句子本身去完成。把"核心观点:用户体验很重要"改成"用户体验这件事,我觉得比功能更重要",意思一样,但像人话了。

第二类:翻案句

"不是……而是……""并非……而是……""不在于……而在于……""与其说……不如说……""表面……实际……""看似……实则……"。

这类句式在 AI 文章里出现频率高得离谱,所以叫"翻案句"——先立一个靶子,再把它推翻,制造一种"我有洞察"的假象。问题在于,AI 翻的案,十有八九是它自己立的假靶子:读者根本没这么想,它先假装有人这么想,再"纠正"给你看。

举个例子,AI 写"与其说是工具问题,不如说是思维问题",看起来挺有深度,但仔细一想,这不过是用句式撑出来的姿态。真人说话很少用这种"先立后破"的套路,更常见的是直接说"我觉得问题在思维这块,工具反而是次要的"。

第三类:硬停词

"说白了""说穿了""先说结论"。

这类词的作用是强行制造口语感,但正因为人人都用,它已经变成了新的 AI 腔。真人说话当然也会"说白了",但不会每篇都"说白了"。禁用它们的目的不是禁止口语,而是禁止"装口语"。

第四类:模型路标

"更微妙的是""还有一层""只说对了一半""值得注意的是""需要指出的是""从某种意义上说"。

这些是模型在"假装深入"时惯用的路标词,功能相当于"注意,我要开始升华了"。读者对这套东西已经形成条件反射:看到"值得注意的是",直接跳过后面那句。禁掉之后,AI 被迫用内容本身去推进,而不是用路标去虚张声势。

第五类:商业黑话

赋能、抓手、商业闭环、底层逻辑、顶层设计、认知跃迁、价值释放、能力建设、降本增效、内容矩阵、全链路、组合拳、技术底座……这个名单可以列很长。

这些词本身未必是坏的,坏在被用滥了。它们在互联网语境里已经磨损到几乎没有信息量,谁都能写、写了等于没写。更麻烦的是,它们自带一种"伪专业"气质,一出现,文章立刻和"AI 批量生产"绑定在一起。

类别

典型例子

为什么禁

替换方向

禁用标点

::——–

冒号破折号成了 AI 划重点的固定手势

用句子本身完成解释,少用符号划重点

翻案句

不是…而是…、看似…实则…

先立假靶子再推翻,制造假洞察

直接说自己的判断,不搞先立后破

硬停词

说白了、说穿了、先说结论

强行装口语,已沦为新的 AI 腔

该怎么说就怎么说,不打招呼

模型路标

值得注意的是、从某种意义上说

模型假装深入的固定路标

用内容推进,不用路标提示"要升华了"

商业黑话

赋能、抓手、闭环、底层逻辑

磨损到零信息量,自带伪专业气质

换成具体的动作、对象和结果

这些禁令不是凭空拍脑袋来的,是作者在实际写作和大量阅读里积累下来的"AI 味标记"。说白了,AI 味不是某一种词的问题,而是这些词和句式在模型输出里反复出现、已经成了可识别的"指纹"。卡兹克做 human-writing 的时候,把这些指纹全部列进了黑名单,让模型在生成阶段就绕开它们。

我自己的经验是,这些禁令最大的价值不是"遵守",而是"识别"。你不需要记住全部清单,只需要培养一种敏感:看到"值得注意的是"就想一下,这句话是不是可以整句删掉;看到破折号就想一下,能不能把解释拆成一句话单独说。这种敏感养成了,你自己的写作水平也跟着涨一截。

七、check_prose.py 一键扫雷:脚本在查什么

前面反复提到的 check_prose.py,是 human-writing 仓库里的一个 Python 脚本,专门用来检查成稿是否命中硬禁令。它的定位很克制:只负责发现问题,不自动修改,把问题分成"需要修改"和"需要人工判断"两类,最终决定权在作者手里。

这一点我觉得特别重要。市面上很多"AI 味检测器"喜欢给文章打一个"真人率 87%"之类的分数,看起来很科学,其实经不起推敲。写作不是流水线质检,分数没有意义,一条条具体的违规才有意义。check_prose.py 走的正是后一条路:不给你打分,只把"这里冒号用多了""这句像翻案句"这种具体问题列出来。

用法

把文章保存为 Markdown 或纯文本,然后在终端里运行:

python3 scripts/check_prose.py 稿件.md

运行结果会分两类输出:一类是明确违规,直接标出来;另一类是疑似问题,提示作者人工判断。比如"不丢人""打法"这类正常中文,曾经被误伤进黑名单,1.1 版本专门把它们捞了出来,改放到"需要人工判断"的层级,避免误杀。

检查维度

脚本的检查逻辑大致覆盖下面这几个维度:

检查维度

具体内容

输出类型

禁用标点

中文冒号、英文冒号、破折号、连接号

需要修改

硬停词

说白了、说穿了、先说结论

需要修改

模型路标

更微妙的是、还有一层、值得注意的是等

需要修改

翻案句模式

不是…而是…、并非…而是…等及其变形

需要修改 / 人工判断

绝对禁词与语境词

赋能、抓手等黑话,以及需要结合语境判断的词

需要修改 / 人工判断

形状问题

长前置成分、多"的"长句、连续短段

人工判断

修辞密度

多套借喻在短距离内集中出现

人工判断

前四类属于"硬伤",命中基本没得商量;后三类属于"形状和风格问题",脚本只负责提醒,改不改、怎么改,看你的判断。

1.1 版本加了什么

到了 1.1 版本,脚本新增了几项更有意思的统计:句长变异系数和连词密度。

句长变异系数,简单说就是统计全文句子长短的变化幅度。真人写文章,句子长短是有起伏的——一句话短,一句话长,节奏自然。AI 写文章,句长往往过于均匀,读起来像匀速行驶的列车。变异系数就是量化这种"均匀感"的指标,系数太低,说明节奏有问题。

连词密度,统计的是"然而、但是、因此、此外、同时"这类连接词出现的频率。AI 特别喜欢用连词把段落强行黏在一起,连词密度一高,文章就显得"被焊死",没有呼吸感。

这两项指标不用你手动算,脚本跑一遍就出来了。它们解决的是一个更隐蔽的问题:字面禁令可以绕——模型换一套词,照样写出 AI 味。但句长节奏和连词密度是"姿势"层面的东西,换词换不掉。这也正好呼应了 1.1 版本的核心升级:把防线从"拦字面"挪到"拦动作",下一章我专门讲这个。顺带说一句,这两项统计(以及连词密度过高警告的阈值依据——CCL 2023 人机中文对照研究)在 1.1.0 的 Release 说明和 CHANGELOG.md 里都写得很清楚,想核对原文的可以直接去仓库翻。

脚本输出长什么样

没跑过的人可能好奇脚本的输出格式,我贴一个简化版的示意:

$ python3 scripts/check_prose.py 我的稿子.md
[需要修改] 第 12 行:检测到中文冒号(:),建议改写句子结构
[需要修改] 第 34 行:命中翻案句模式「不是……而是……」,建议直接陈述判断
[需要修改] 第 56 行:命中模型路标「值得注意的是」,建议删除或改写
[人工判断] 第 78 行:出现连词「然而」,全文连词密度 8.2%,略偏高
[人工判断] 第 90 行:连续三个短段,注意节奏是否过于零碎

每一行都会给出位置和建议方向,改不改、怎么改,由你自己拍板。我一般拿到输出先处理"需要修改"那一类,再逐条看"人工判断"的,带着列表去改稿比对着全文反复读高效得多。

顺带提醒一句,脚本需要 Python 3 环境,依赖只有标准库,不需要额外安装第三方包,直接就能跑。对不熟悉命令行的朋友,也可以把脚本里的规则抄下来,手动过一遍稿子——规则本身比工具重要。我把脚本的输出当作"第二双眼睛":我自己读稿子靠感觉,它靠规则,两个互补,漏网的就少了。

八、安装与上手实操

讲完原理,该动手了。human-writing 的安装非常简单,两种方式任选,几分钟就能跑起来。

方式一:Agent 自动安装(推荐)

把下面这句话发给你的 Agent 就行:

帮我安装这个skill:https://github.com/KKKKhazix/human-writing

Agent 会自动读取仓库、找到 human-writing 文件夹并完成安装,装好后显示名为"活人感写作"。目前主流支持 Skill 机制的 Agent 都能走这条路,包括常见的几款编程助手和聊天助手。

方式二:手动安装

如果当前用的 Agent 不支持直接安装,可以手动来。两个办法:一是从 GitHub Releases 页面下载打包好的 human-writing.skill 文件;二是把仓库里的 human-writing 文件夹完整复制到本机 Skills 目录。有个细节要注意:文件夹名必须保留为 human-writing,不能改名,否则 Agent 认不出来。

常见路径是:

~/.agents/skills/human-writing/

装好之后,调用方式同样是一句话:

使用 $human-writing,把我的材料写成一篇有活人感和中文韵律的作品。

对比维度

方式一:Ag

🔒
🔒 以下内容仅对更高等级用户组开放,请升级您的账户等级以查看完整内容。
您当前:游客 · 可见 60% 内容 · 升级至 注册用户 可见 70%
👀
游客
可见 60%
✓ 当前
注册用户
注册用户
可见 70%
社区精英
社区精英
可见 100%
社区守护
社区守护
可见 100%
仅解锁本文,永久有效。如需PDF珍藏版,请联系站长获取。 当前单篇价格 ¥5
✏️ 发表评论

请先登录后发表评论

前往登录
📊 站点统计
今日发布0 篇
文章总数135 篇
昨日发布0 篇
本月发布1 篇
建站时间67 天
🔍 搜索
📅 日历
« 2026 » « 09 »
 123456
78910111213
14151617181920
21222324252627
282930    
站点公告

联系站长

微信:wyxs1638
AIGC技术社区
致力于解码 AIGC前沿技术 与经验分享
纯粹的技术交流社区

💡 欢迎您的建议与反馈,让社区变得更好

快速通道
联系站长
站长微信二维码
AI交流群
AI交流群二维码