AIに社外向けのメールを書かせると、文としては整ったものが出てくる。整っているので読み流してしまうが、宛名に「御中」と「様」が並んでいたり、社内でしか使わない語がそのまま残っていたりする。
こういう誤りは意味を読まなくても見つかる。8つのパターンをスクリプトに入れて、下書き100通で試した。入れた誤り77件は全部出て、誤りを入れていない38通では1件も鳴らなかった。
以下の計測は、2026年9月22日にPython 3.11で行った。下書きは自分で作ったもので、誤りも自分で入れている。そのため「拾えた」という数字は、自分の作った誤りを自分のルールで拾っただけのものだ。測って意味があるのは、後で書く空振りのほうになる。
8つのパターンを見ている
見ているのは、敬称の付け方と、言い回しと、社外に出さない語の3つに分かれる。
敬称は3つ。御中と様を一緒に使っていないか、各位に様や殿を付けていないか、役職に様を付けていないか。「霞商店株式会社 御中 田中様」も「ご担当者各位様」も「佐藤部長様」も、どれも敬称が重なっている。
言い回しは3つ。二重敬語、「のほう」、半角カナ。二重敬語は「拝見させていただきました」「お伺いさせていただきます」のような形を見ている。
残りは、社外で使わない語と、社内の語だ。「了解しました」「ご苦労様」「取り急ぎ」は決め打ちで、社内の語は自分で一覧を作って渡す。原価、仕入値、案件の符丁のような、外に出したくない語を並べておく。
宛名の行に会社名だけが書いてあって敬称が付いていない場合も見ている。ここは先頭5行だけを対象にした。本文の中で会社名を書くときは敬称が要らないからだ。
入れた77件は全部出た。空振りは0件だった
100通の下書きを作り、62通に誤りを入れた。1通に1つか2つ、8種類からランダムに選んでいる。
入れた誤りは77件。全部の種類で、入れた数と拾えた数が一致した。各位に様を付けたものが13件、二重敬語が12件、社外で使わない語が12件、社内の語が11件、半角カナが9件、「のほう」が8件、御中と様の併用が7件、役職に様が5件。
大事なのはこちらだ。誤りを入れていない38通で、指摘が出たのは0通だった。入れていない種類のルールが鳴った回数も0回。
検査は、鳴らないときに鳴らないことのほうが大事になる。空振りが混じると、出た指摘を見なくなる。100通のうち何通かで毎回鳴っていたら、3回目からは誰も読まない。
1通に通すと、こう出る
実際の下書きを1通通してみる。
霞商店株式会社 御中 田中様
いつもお世話になっております。南田サービスの山田です。
先日ご依頼いただきました見積のほうをお送りします。
資料を拝見させていただきましたが、原価は据え置きでお願いします。
コピー用紙の件は了解しました。
取り急ぎご連絡まで。
7行に対して7件の指摘が出た。
1行目 御中と様を一緒に使っている: 御中 田中様
4行目 のほう を付けている: 積のほうを
5行目 二重敬語: 拝見させていただ
5行目 社内の語が残っている: 原価
6行目 社外で使わない語: 了解しました
6行目 半角カナ: コ
7行目 社外で使わない語: 取り急ぎ
行番号と、当たった文字が出る。どこを直せばいいかが分かればいいので、直し方までは書かせていない。
1行目は個人名があるので「様」だけにする。個人名がなければ「御中」だけにする。迷ったときは、個人名があれば様、なければ御中で決まる。
5行目の「原価」は、社内語の一覧に入れておいたので出た。この語は文としては自然なので、読んで気づくのは難しい。
AIに頼むときに先に決めておくこと
指摘を減らすには、書かせる前に決めておくほうが早い。
社外向けのメールの本文を書いてください。
・宛名と署名は書かないでください。こちらで入れます
・金額と日付は次のものをそのまま使い、ほかの数字は書かないでください
見積金額 540,000円 / 納品予定 10月5日
・「了解しました」「取り急ぎ」は使わないでください
・「拝見させていただく」のような重ねた敬語は使わないでください
・社内でしか使わない語は入れないでください
宛名を書かせないのがいちばん効く。敬称の誤りは宛名の行に集中するので、そこを自分で書けば3つのルールが要らなくなる。
金額と日付を先に渡して「ほかの数字は書かない」と言っておくのも同じ理屈だ。渡していない数字が出てきたら、それは作られたものだと分かる。
それでもスクリプトは通す。指示を守ったかどうかを人が読んで確かめるのでは、結局読み流すことになる。
二重敬語のルールだけは鳴りすぎる
普通の言い回しをいくつか通して、どこで鳴るかを見た。
「ご連絡いたします」は鳴らない。「お送りいたします」も「お伺いいたします」も「説明させていただきます」も鳴らない。
鳴るのは「ご連絡させていただきます」「お送りさせていただきます」「拝見させていただきました」「お伺いさせていただきます」だ。
このうち後ろの2つは直したほうがいい。「拝見する」も「お伺いする」もすでにへりくだった言い方なので、そこに「させていただく」を足すと重なる。
問題は「ご連絡させていただきます」のほうだ。これを誤りと言い切る人もいれば、許容する人もいる。実際の社外メールでよく見る形でもある。ここを毎回赤くすると、そのうち誰も見なくなる。
だからこのルールだけは「鳴ったら直す」ではなく「鳴ったら一度見る」にしている。ほかの7つは、鳴ったらそのまま直していい。
「のほう」は助詞まで見ないと誤って鳴る
「のほう」を探すとき、単純に文字列として探すと「北のほうへ移転しました」まで拾ってしまう。方角の「ほう」は正しい使い方だ。
助詞まで含めて見ている。
re.compile(r"[ぁ-んァ-ヶ一-龥]の(ほう|方)(を|が|に|で)")
「のほう」のあとに「を」「が」「に」「で」が続くものだけを拾う。「見積のほうをお送りします」は鳴って、「北のほうへ移転しました」は鳴らない。「方針のほうは決まりました」も、あとが「は」なので鳴らない。
役職の敬称も同じで、「佐藤部長様」は鳴らせたいが「部長の佐藤です」や「佐藤部長にお伝えください」は鳴らせたくない。役職のすぐ後ろに様か殿が続く形だけを見ている。
こういう線の引き方は、鳴らしたい例と鳴らしたくない例を並べてから決める。先にルールを書くと、たいてい広すぎるものになる。
数字と日付は、このスクリプトでは見ていない
見ているのは形だけだ。金額が合っているか、日付の曜日が合っているかは見ていない。
そちらはAIが書いた文書の数字と日付をExcelで照合する話のほうで別に見る。引用が元の文書にあるかを確かめるなら規程から条項を引かせたときの照合と同じやり方になる。
問い合わせへの返信なら、聞かれたことに全部答えているかも見る。返信の下書きから抜けを見つける話に、質問の数を数える手順を書いた。
分けているのは、それぞれ見る対象が違うからだ。形は正規表現、数字は表、内容は元の文書との突き合わせ。1つのスクリプトに全部入れると、どれかが鳴ったときに何を直せばいいのか分からなくなる。
この順で見ると、機械で決まるものから先に落ちる。最後の数字だけが人の目に残る。
使い方と、社内語の一覧
下書きをテキストで保存して渡す。
python mail-check.py 下書き.txt --ng 社内語.txt
社内語の一覧は1行1語のテキストにする。原価、仕入値、案件の符丁、開発中の商品名、取引先の略称。外に出たら困る語を思いつくまま並べておけばいい。
戻り値は、指摘が1件でもあれば1になる。送信の手順に組み込むなら、ここで止める。
うちは社内語の一覧を月に1回見直している。新しい案件が始まると符丁が増えるし、公表された商品名は外してよくなる。一覧が古いままだと、鳴らなくなった語のほうが危ない。
確かめていないこと
AIがどのくらいの割合でこうした誤りを書くかは測っていない。自分で下書きを作って自分で誤りを入れたので、実際の生成物での割合とは違う。
測ったのは、誤りがあるときに機械で拾えるかと、無いときに鳴らないかの2つだけだ。前者は自分の作った誤りなので当たって当然で、意味があるのは後者になる。38通で空振り0件というのがこの記事の数字だ。
社外メールのマナーそのものについても、8つ以外に見るべきものはある。結びの言い方、改行の位置、署名の中身。これらは機械で線を引きにくいので入れていない。どこまでを機械に任せるかは、鳴らしたい例と鳴らしたくない例を並べられるかどうかで決めている。



