从真实样本、盲测、Context 和原意校验出发,记录我训练个人写作 Skill 的方法、问题和边界。
Scanned 9/2/2026
Install to Claude Code
npx -y skills add 4sapi/4sapi-docs --skill docs --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Docs?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/4sapi-docs-a2efd506)More formats (shields.io, HTML) on the badges page.
---
title: "如何训练一个符合你风格、没有太多 AI 味道的 Skill"
tags:
- AI 写作
- Skills
- 个人工作流
description: "从真实样本、盲测、Context 和原意校验出发,记录我训练个人写作 Skill 的方法、问题和边界。"
---
# 如何训练一个符合你风格、没有太多 AI 味道的 Skill
首先,我想先表明一下我对 AI 生成内容的立场:我认为 AI 生成的内容跟语言本身一样,都是传达信息的一种方式和工具。
这里的关键问题并不是内容是否是 AI 生成的,或者是不是手写的,而是内容本身有没有思路、想法和额外知识。仅仅关注“是不是 AI 写的”来判断质量,实际上是把注意力放在了工具层面,并且默认 AI 生成等价于低质量内容。这个逻辑本身就不完整。
更准确的判断应该是:
```text
AI 生成的内容不看,人工编写的内容就是高质量。❌
低质量的信息都是垃圾,高质量的信息才值得看。✅
```
老实说,很多低认知、逻辑错乱的内容,虽然是人写的,也没必要看。我自己看到的大量 AI 生成内容确实很差,但问题不在于它用了 AI,而在于作者没有提供足够的判断、事实和经验。
所以现在真正值得做的事情,是让 AI 完善和协助人的创作,而不是把“人工写作”当成质量保证。本文记录我的一次尝试:怎样让一个写作 Skill 更接近作者本人,怎样识别它越来越像我之后带来的新风险,以及我最后为什么重新把 Context 放了回来。
目前这套方法大约只能让我直接使用 70% 的生成内容,剩下的仍然需要本人校验和完善。它不是一套训练模型的方案,也不是把一条提示词拉得无限长,而是给模型建立一套可以持续更新的个人写作工作流。
## 一、从 50 条真实内容开始,每轮训练用新的 50 条
第一步,我把自己过去在 X 上互动比较高的 50 条原创内容找出来。里面有技术排障、产品推荐、Ethereum、AI、生活判断,也有一些当时想到就发的短内容。
分析以后,确实能看到一些稳定的特点。我经常从刚发生的一件事开始,技术名词不会专门翻译成很正式的中文,段落有长有短。有时候一个东西真的很好用,开头会直接说“牛逼”,讲到最后可能还会再说一次。
普通 AI 编辑很容易把这些东西当成噪声。重复会被删掉,突然插进来的吐槽会被删掉,然后再补一个完整的总结。文章看起来更专业了,但作者的感觉也差不多被一起删掉了。
根据这 50 条内容,我做了第一版写作 Skill。除了语言习惯,还记录了不同内容应该保留什么:技术排障要留下真实报错和验证,产品推荐要写具体怎么用,个人判断不能凭空补经历。后来又加入 Source Map、状态、主语、权限和 Humanizer 等规则,文件越写越长。
最开始我还挺期待,觉得这样应该差不多了。后来才发现,50 条样本只能让我看见一些表面的习惯,还不足以让模型理解“我为什么这样判断”。它知道我会用什么词,却不一定知道哪些事情值得展开,哪些地方我宁愿承认不知道。
所以我没有把第一版 Skill 当成最终答案,而是把它当成一个可更新的观察记录。每一轮训练都换一批新的 50 条内容,避免模型只记住固定句子,也避免我把某一篇文章里的偶然选择误认为永久风格。
## 二、写得更像我以后,反而出现了新问题
为了做效果对比,我设计了一个 benchmark。简单地说,就是提供一组统一的写作主题,让它先写一段约 300 词的 Baseline,然后随着 Skill 升级产出新版。同时我也会写一份真人版本,方便它做对比。Humanizer 只用来评估文章里的 AI 特征,不负责替我直接改文章。
后来我做了一轮 8 条全新样本的盲测。同一个题目分别生成 Skill 版本和 baseline,再隐藏来源比较哪个更像我。结果是 Skill 赢了 5 条,baseline 赢了 3 条。只看这个数字,确实进步了。
但是再看细节打分,就有点尴尬。Skill 出现了 3 条 hard failure,baseline 是 2 条。它学会了我的语气和节奏,也开始更熟练地用这种语气说一些我没有说过的话。
有时候它改掉了主语。我写的是“我选择不做”,它会整理成“系统做不到”。有时候我写的是一个暂时判断,它会写成普遍结论。还有的时候,原文已经结束了,它觉得必须再补一句总结,于是顺手增加一个完整的判断。
这比普通的 AI 味更危险。普通 AI 味很容易发现,读一句就知道不是我。真的越来越像我以后,反而可能直接看过去。读者会因为语气熟悉而降低警惕,作者也可能因为内容顺口而忘记核对事实和主语。
所以我把 benchmark 拆成了两部分:第一部分测“像不像我”,第二部分测“有没有改变原意”。两者不能合并成一个总分。Humanizer 只负责检查 AI 痕迹,不能再让它直接改文章,因为它一改,事实、主语和语气可能又一起变了。
这一步让我意识到,个人写作 Skill 不能只有风格指标。它至少还需要事实边界、主语一致性、时间状态、证据来源和结论强度这些硬约束。像不像我只能算一个维度,不能盖住内容有没有越界。
## 三、我开始自己写 Benchmark
只看过去的文章还不够,因为那些内容里混合了选题、时间和传播带来的影响,也有一些可能本来就经过 AI 修改。后来我开始自己写 benchmark,直接告诉 Hermes:同一个题目,我会怎么写。
有一次题目是介绍 Hermes。AI 生成的版本很像产品说明,里面有任务拆解、工具调用、结果验证,还有一段关于 Agent 价值的总结。逻辑没什么大问题,但不是我会说的话。
我自己的版本就很直接:之前长期使用 Codex,现在主要转向 Hermes,原因有三个。第一,Telegram 和手机可以远程控制,像跟同事聊天一样;第二,集成很多,也很灵活;第三,我的数据、Memory、Skills 和各种信息都属于自己,可以交叉连接,最后形成复利。
这里确实也是三点,但它不是 AI 为了结构完整凑出来的,本来就是我想到的三个原因。后来我也意识到,不能简单禁止“三点”“对比”或者“总结”。关键还是这个结构到底来自我,还是模型自己补出来的。
还有一次是写未来 Agent 的一天。AI 先写睡眠、健康、采购、工作和家庭,每一项都解释得很清楚。我写的是早上 8 点的闹铃为什么被调到 9:30,冰箱里的鸡胸肉还能吃两天,所以 Agent 先去淘宝下单,付款等我确认。接着不同项目的 Agent 发简报,其中一个收到客户 Agent 的建议,我补充判断,批准以后继续创建 PR、测试和部署。
主要逻辑其实差不多,但读起来完全不一样。人经常就是顺着一件事往下讲,不会每出现一个细节,都顺便解释一次能力、边界、风险和未来价值。很多细节之所以有效,恰恰是因为它没有被解释完,读者可以从动作里感受到作者的生活和判断。
这个过程其实也挺有意思。你能感受到 AI 的逻辑是什么样的,而这个过程又很像人类学习语言:我们会读范文、拆结构、仿写,然后根据老师和自己的反馈继续修改。人和 AI 的差别不在于能不能学习表达,而在于谁负责提供事实、经验和最终判断。
## 四、忘了加 Context
之前做了几轮之后,我让 Hermes 继续针对一些问题结合我的 Skill 生成内容,但是始终感觉很没有感觉,也没有我的思路和灵魂。
有一次复盘我才发现,问题是忘了加 Context。之前我提供了范本,也就是我的版本。为了防止它直接抄袭或者机械模仿,我让它不要参考上下文。这件事看起来是在保护原创,实际却切断了模型理解我的判断逻辑、立场和写作背景的入口。
如果它不参考上下文,只剩下一个通用模型和一组抽象规则,它当然只能生成大众版。它知道“口语化”是什么意思,却不知道我在什么问题上会保守,在什么问题上会直接下判断;它知道“保留细节”,却不知道哪个细节是事实,哪个细节只是为了这篇文章临时安排的例子。
所以我启用了 Context,让它可以针对某个议题或某个想法,基于我过去的内容、决策依据和上下文来生成。同时,在真正创作时,我也会先说清楚自己的大概写作思路、想解决的问题、希望读者看完以后得到什么,而不是只给它一个标题。
这让生成结果明显更接近我。Context 不是让模型抄过去的句子,而是让它理解这些句子为什么会出现。它需要知道我当时面对的限制、我已经验证过什么、哪些判断只是阶段性结论,以及现在的情况有没有发生变化。
Hermes 在这里的价值也比较明显:它拥有我的 Context、记忆、决策依据、现状和 Skills,可以直接提取和更新。写作不再是每次新开一个对话,重新介绍我是谁,而是从一份持续变化的个人资料开始。
当然,Context 也会带来新的风险。旧观点可能已经过时,过去的经验不一定适用于现在,私人信息也不应该无条件进入公开文章。所以 Context 需要有时间、来源、状态和权限。模型可以参考,不代表可以自动公开;记忆可以保留,也不代表每次都应该写进文章。
## 五、现在这套 Skill 具体怎么工作
我现在更倾向于把写作 Skill 看成一个小型的编辑流程,而不是一段很长的提示词。它大致分成五层:
```text
1. Context:作者的经历、判断、近期关注和事实边界
2. Style:语言习惯、节奏、段落和不同文体的写法
3. Source Map:这篇文章的事实、来源、状态和可引用范围
4. Draft:根据题目、读者和写作思路生成初稿
5. Review:检查原意、主语、事实、AI 腔和禁忌表达
```
第一层回答“作者是谁”,第二层回答“怎么写”,第三层回答“哪些内容能写”,第四层才负责把想法变成文章,最后一层负责找问题。这样做的好处是,任何一轮失败都能定位:是 Context 不足,还是风格规则误判;是 Source Map 没有证据,还是初稿擅自补了结论。
我的审稿顺序也有变化。先查事实和主语,再查文章有没有完成任务,最后才看 AI 味。因为一篇内容错误但很像人的文章,远比一篇有 AI 腔但事实正确的文章危险。
## 六、几个目前仍然没有解决的坑
第一个坑是样本污染。过去的文章可能已经被 AI 修改过,也可能只是某个时期的特殊表达。如果把它们全部当成标准,Skill 会把偶然风格固化下来。解决方法不是盲目增加样本,而是给样本标注来源、时间、是否人工修改,以及它适合证明什么。
第二个坑是规则越写越长。每发现一个问题就加一条禁止项,最后模型反而不知道优先级。我的做法是把规则分成硬约束、类型规则和偏好规则。事实、主语、权限属于硬约束;教程和观点文的结构属于类型规则;某些口头禅和节奏属于偏好。三类规则冲突时,硬约束优先。
第三个坑是把 Humanizer 当成裁判。它可以提示句式过于工整、总结过于完整、表达像模板,但它不知道我的事实和立场。它的结果只能作为审稿意见,不能直接替作者改稿。
第四个坑是过度追求“像”。如果 benchmark 只问哪一版更像我,模型就会不断靠近我的语气,却可能越过我的经历和权限边界。因此我现在会把“像不像”“有没有改意”“有没有编造”分开记录,不用一个分数把它们压成结论。
第五个坑是上下文太多。Context 不是越多越好。过时观点、无关对话和私人信息混在一起,会让模型更难找到当前任务真正需要的内容。每次写作前,最好明确本次可用的主题、时间范围和资料范围。
## 七、最后这篇文章到底是谁写的
那么最后一个问题:这篇文章其实是 AI 加上我人工编辑完成的。
它不是我先写完、让 AI 查错字,也不是我给一个标题、让 AI 从头编一篇。我的做法更接近共同编辑:我提供立场、经历、样本、写作思路和不能越过的边界,AI 负责整理材料、提出结构、补充我可能遗漏的角度;然后我再逐段检查,把不属于我的判断删掉,把过于完整的总结拆掉,把需要证据的地方补上来源。
所以我不会把最终效果归功于某个神奇提示词。真正起作用的是长期积累的 Context、可复用的 Skill、独立的 benchmark,以及每次人工修改留下来的原因。没有这些,AI 只是在模仿一个“像作者”的表面;有了这些,它才有机会参与作者自己的思考过程。
简单地说,训练方法其实跟人学习语文没什么区别:找到优质的人工分享,让它学习;不断提供新的反馈,让它知道哪里不对;给足够的上下文,让它理解判断从哪里来;再用自己的写作思路和表达逻辑,决定最后文章往哪里走。
在我的标准下,目前也只有大概 70% 的内容可以直接使用,仍然需要校对和调整。这不是失败,反而是一个比较诚实的结果。写作 Skill 的目标不是替作者签字,而是让作者把时间从机械整理,转移到事实核对、观点判断和真正值得展开的地方。
未来我可能会用更平台化的方式训练,加载不同的模型,再用同一套 benchmark 做比较。比如不同模型在中文表达、技术解释、长文结构和事实边界上的差异,应该分别测,而不是只看哪一个更像人。
这也不会是最后一篇关于 AI 写作训练的文章。Skill 会继续改,Context 会继续清理,benchmark 也会继续增加。至少现在我已经确认了一件事:去掉几个“首先、其次、最后”,并不能让文章变成你的文章;真正决定风格的,是你长期坚持什么、拒绝什么,以及每一次修改为什么这样改。
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!