ローカルの軽いモデルに下書きを長めに書かせると、途中から敬語が崩れることがあります。内容が合っているかどうかより先に、そこで読む気が切れます。手元のミニPCで何度か試したときもそうでした。文の途中までは普通なのに、急に「残る」「止まらない」「変わる」で終わる。あの瞬間、私は内容より先に信用を落とします。
完璧な校正器が欲しいわけではありません。公開前に赤ペンを入れてくれる雑な道具が一本あれば、だいぶ助かります。人間が最後に読む前提なら、それで十分です。
まず見たいのは意味より文末
AIの下書きは、意味が破綻していなくても口調だけ先に壊れることがあります。特に技術記事は、説明に集中しているうちに「〜できます」で走っていた本文が、急に「〜なる」「〜かかる」に戻りやすいです。これが一文だけ混ざるだけでも、読者はたぶん無意識に引っかかります。
私は最近、公開前に文末だけをざっと拾う簡単なチェッカーを通しています。コードブロックの中は無視して、本文だけ見るやつです。理由は単純で、コードやシェルの中にまで敬語を求めると、道具のほうがうるさくなるからです。公開前に欲しいのは精密検査ではなく、変なところにだけ赤線を引く雑さです。
Dockerで試した最小のやつ
こんな程度で動きます。
import re
import sys
from pathlib import Path
text = Path(sys.argv[1]).read_text()
fence = chr(96) * 3
text = re.sub(fence + r"[\\s\\S]*?" + fence, "", text)
lines = [line.strip() for line in text.splitlines() if line.strip()]
pat = re.compile(r"(です|ます|でした|ました|ません|ましょう|でしょう|ください|くださいました|ではありません)[。!?]?$")
for i, line in enumerate(lines, 1):
if line.startswith("#"):
continue
if not pat.search(line):
print(f"{i}: {line}")
これだけでも、本文の口調崩れはかなり拾えます。もちろん雑です。段落の途中にぶら下がる引用や、わざと砕いた一文まで引っかけることがあります。でも、そこは最後に自分で見れば済みます。毎回見逃して公開するより、誤検知が少し出るほうがましです。
実際、私はコードブロックの外だけを見るようにしてから、チェック結果を読む気がだいぶ残るようになりました。全部を賢く見ようとする道具は、だいたい途中で信用できなくなります。
雑な道具がちょうどいい場面
最近のAIまわりでは、何でも大きな仕組みにしたがる空気があります。文章の校正も、意味解析をして、文脈を読んで、提案まで返す方向へ行きがちです。でも公開前の自分に必要なのは、そこまで大げさなものではありません。本文の中にタメ口が一つ混ざっていませんか、とだけ言ってくれれば足ります。
この手の道具は、たぶんGoで小さく書いても気持ちいいです。単体バイナリで置けて、朝に叩いて、気に入らなければすぐ消せる。私はそのくらいの距離感のソフトを信用します。自分のPCなのだから、自分で触って、自分で削って、自分で外せるほうがいいです。
AIに下書きを任せること自体はもう止まらないでしょう。ただ、最後の赤ペンまで丸投げすると、読んだときの違和感まで自分で引き受けることになります。そこは面倒でも、自分で見たほうが早いです。雑な正規表現でも、公開前に一度こちらへ視線を戻してくれるなら、十分仕事をしています。