TL;DR
- 本文解決:用 Claude / ChatGPT 幫忙寫文章寫久了,自己的風格越寫越像 AI 腔。
- 推薦給:用 LLM 輔助寫文 / 寫作社群、想保留個人風格不被機器化的創作者。
- 讀完你會知道:voice profile 是什麼、怎麼從自己舊文章抽出指紋、寫完文章如何對照打分。
📌 目錄
🚫 禁用詞表為什麼擋不住 AI 腔
我的 /blog-create skill 一開始有禁用詞表:「實戰派」「賦能」「全方位」「神器」這類 AI 慣用詞,全文不准出現。
跑了幾個月,禁用詞檢查通過率 100%,但文章還是有股說不上來的「機器味」。
問題在禁用詞表只能擋負面(不要寫什麼),擋不了正面(要寫什麼語氣):
| 機制 | 擋的東西 | 擋不到的東西 |
|---|---|---|
| 禁用詞表 | 行銷腔詞彙 | 句式結構、語氣節奏 |
| Voice Profile | 句式結構、語氣節奏 | 詞彙細節(交給禁用詞) |
🎙️ Brand Voice Profile 是什麼
Voice profile 是你自己寫作習慣的指紋抽樣。不是要你寫什麼新規則,而是把你過去寫的文章拆解成可量化特徵:
| 維度 | 範例 |
|---|---|
| 開場句型 | 「我...」「先說結論...」「2026-XX-XX 那天...」 |
| 收尾句型 | 「就這樣」「不要再 OO 了」 |
| 慣用比喻 | 拿什麼當對照組(例:總是拿 Spring Boot 對照 React) |
| 過場詞 | 「順帶一提」「結論是」 |
| 段落長度 | 中位數幾行(你習慣短段還是長段) |
| 程式碼 vs 文字比 | 你 1000 字的文通常配多少 code |
核心邏輯:「像不像作者本人」是相似度問題,要有對照組才能比。 沒有對照組就只能憑感覺,憑感覺就會放水。
📐 從舊文章抽指紋的 6 個維度
最低 5 篇舊文才能抽指紋(樣本不夠抽出來沒統計意義)。我自己用 10 篇。
維度 1:開場句型 Top 5
掃所有文章第一段第一句,找出最常用的 5 種開頭結構。例:
1. 「我[做了什麼],結果[出乎意料的事]」 → 占 4/10 篇
「2026-XX-XX 那天[事件]」 → 占 3/10 篇
「先說結論:[結論]」 → 占 2/10 篇
維度 2:收尾句型 Top 5
掃文章最後一段,不算 motto。最常用的收尾結構。例:
1. 「[一句犀利的反問]」 → 「你還在用 OO 嗎?」
「[時間相對]再來看」 → 「半年後再回頭看這個決定」
「[簡短指引]」 → 「先這樣,下篇再聊」
維度 3:慣用比喻 / 對照組
你習慣拿什麼當參照?我抽出來自己的習慣是:
- 講 LLM 工具 → 拿傳統工具對照(「就像舊版 IDE 要手動 import」)
- 講前端 → 拿後端 OO 思維類比(「Component props 像 Java method param」)
- 講教學心法 → 拿企業內訓現場舉例
維度 4:過場詞 / 連接詞
「順帶一提」「結論是」「重點是」「這邊岔題一下」這類結構性連接詞。每個作者習慣用 3-5 個固定的,LLM 用的會比你雜亂。
維度 5:段落長度分布
數一下每段幾行。
| 段落長度 | 我(10 篇樣本) | ChatGPT 預設 |
|---|---|---|
| 中位數 | 3 行 | 5-6 行 |
| 最常見 | 2-4 行 | 4-7 行 |
| 一段最長 | 8 行 | 12+ 行 |
維度 6:程式碼 vs 文字比
每 1000 字配多少行 code。我自己平均 1000:60,新文章如果掉到 1000:20 就是「光講概念沒給範例」警訊——讀者抓不到該怎麼開始做。
📊 寫完文章怎麼跑 voice match
把 voice-profile.md 跟新文章一起丟給自己(或 Claude),跑這個 prompt:
拿 voice-profile.md 對照剛寫好的這篇文章:
開場 / 收尾是否落在常用句型範圍?落差太大就重寫
是否使用過 voice-profile 列出的慣用比喻?太多新比喻 = 像 AI 寫的
段落長度中位數是否接近?太長一段話通常是 AI 腔
給一個 voice match 分數(0-100)
< 70 → 必重寫對應段落
70-85 → 可發但要標註哪段最不像
> 85 → 達標
為什麼是 70 分不是 90 分: 90 分等於每篇都跟舊文長一樣,這也是另一種 AI 腔——只是不是 ChatGPT 腔,是「過去自己」腔。70 分是「明顯像本人但有新的東西」的甜蜜點。
⏱️ 更新節奏:每 5 篇重抽一次
寫作風格會慢慢飄。半年前的我跟現在的我寫法不一樣——voice profile 也要跟著進化。
節奏:
- 首次抽:最低 5 篇樣本
- 之後每寫滿 5 篇新文,重新抽一次
- 抽出來如果跟舊版差很多,保留新版(風格進化是好事)
- 抽出來幾乎一樣,確認你沒被 AI 腔同化
🐛 踩過的坑
坑 1:樣本不到 5 篇就抽
第一次抽 voice profile 我只用了 3 篇樣本,抽出來的「常用句型」其實只是這 3 篇剛好都用而已。後來文章一多就發現完全對不上。
解法: 5 篇是統計意義最低門檻,10 篇才穩。樣本不夠寧可不抽。
坑 2:voice profile 寫成另一份禁用詞表
第二版我把 voice profile 寫成「不要用 XX 句型」「禁止 XX 比喻」,結果跟禁用詞表重複了,沒新意義。
解法: Voice profile 是正向指紋,不是負向禁令。寫的是「你常這樣寫」,不是「你不能這樣寫」。負向給禁用詞表,正向給 voice profile。
坑 3:voice match 70 分硬要拉到 90
某次寫完新文 voice match 只有 65,為了拉到 90 我把整篇重寫成跟舊文超像——結果讀起來反而不自然,因為主題根本不一樣(新主題硬套舊文句型)。
解法: 65 → 75 是健康的(補上幾個常用句型),75 → 90 是不健康的(強迫複製過去)。Voice profile 是參考線不是強制線。
坑 4:忘記 voice profile 要跟主題綁
寫教學文跟寫感想文 voice 完全不同。第一版我抽 voice profile 沒分主題分類,結果教學文跟感想文混在一起平均,抽出來的「常用句型」其實兩種都不像。
解法: Voice profile 按文章類型分組抽。我自己分三類:教學文 / 評測文 / 感想文,三份 profile 分開維護。
📅 明天(2026-05-07)會發:blog-create skill P0-P3 完整總覽(系列導讀 + 路線圖)
系列最後一篇——把 P0-P3 串起來看完整 skill 升級邏輯,順便給「該照順序讀還是挑著看」這類 series-level 問題收尾。
❓ 常見問題
我才剛開始寫部落格沒舊文,怎麼抽 voice profile?
兩條路:(1) 用你寫過的非部落格文章——FB 長貼文、LinkedIn、聊天訊息都行,只要是你自己寫的;(2) 先寫 5 篇文章再抽,不要急著建 voice profile。沒樣本硬抽不如不抽。
用 LLM 輔助寫作會污染 voice profile 嗎?
會,所以 voice profile 的樣本要選你親手敲過、最後沒被 LLM 大改的文章。如果你的舊文 80% 都是 LLM 寫的,那抽出來的 voice profile 就是 LLM 腔——這時候要先回頭手寫幾篇純人工版重建樣本。
跟「文風分析」(stylometry)有什麼不一樣?
Stylometry 是學術領域的作者識別方法,特徵更細(字頻、標點密度、停用詞分布),目的是「鑑定作者身份」。Voice profile 簡化版本,目的只是「自我對照避免漂移」。Stylometry 是 1.0 學術版,voice profile 是 0.5 實用版。
Voice profile 要分享給其他作者嗎?
不要。 Voice profile 是個人指紋,分享出來別人可以模仿你的風格——這對 SEO 沒幫助但對「冒充身份」有幫助。如果你要分享,分享的是「voice profile 怎麼建立」這個方法論,不是 profile 本身。
一定要存成 markdown 嗎?JSON 不行嗎?
格式無所謂,重點是自己看得懂、能 diff 比對版本變化。Markdown 比 JSON 對人類友善,又能用 git 追蹤歷史變化,所以我選 markdown。JSON 也可以但要自己寫 viewer。