AIに書かせた技術記事の数字を、元データと機械で突き合わせた
当社は、Qiita に出す記事の本文を AI(Claude)に書かせています。Qiita のコミュニティガイドラインは、AIが生成した内容を、正しいか確かめてから投稿するよう求めています。
そこで、記事の数字を、出典にした自社サイトの元データと機械で突き合わせる見張りを作りました。見張りを置く前に出した3本にもかけ直し、元データに無かった数を1つずつ作業の記録まで辿りました。
結論から書きます。元データにも記録にも支えの無い数が25か所ありました。見張りの初版が止めたのは16か所で、9か所は素通りしました。
この記事の数字の出どころは、当社サイトに置いた元データです(25か所の全部・数え方・この数字で言えないことつき)。引用するときは、こちらを出典にしてください。
https://braincommunity.jp/jissoku/kiji-kazu.html
見張りがやっていること
やっていることは単純です。
- 記事の本文から、数と日付を取り出す(桁区切りは外し、日付は1つの値として扱う)
- 記事が出典にした元データの面の文に、同じ数が在るかを見る
- 無い数が1つでも在れば、投稿しない
元データの外の数を使うときは、記事の設定に「その数は何を数えたか」を1つずつ書き添えます。書いていなければ止まります。
取り出す部分は、こういう形です。
import re
DATE = re.compile(r"(20\d\d)-(\d{1,2})-(\d{1,2})")
TIME = re.compile(r"(?<![0-9])\d{1,2}:\d{2}(?::\d{2})?(?![0-9])")
NUM = re.compile(r"(?<![A-Za-z0-9_.\-])(\d{1,3}(?:,\d{3})+|\d+)(?:\.(\d+))?(?![A-Za-z0-9_])")
def numbers(text):
dates = {"%s-%02d-%02d" % (y, int(m), int(d)) for y, m, d in DATE.findall(text)}
rest = TIME.sub(" ", DATE.sub(" ", text))
nums = [n.replace(",", "") + ("." + f if f else "") for n, f in NUM.findall(rest)]
return dates, nums
TIME の行は、後で足したものです。理由は下に書きます。
見張りを置く前の3本
2026-09-24 に見張りを置き、それより前に出した3本にかけ直しました。
- 本文に出てくる数:273
- 元データに無かった数:36
- 記録を辿ると合っていた数:20
- 支えが見つからなかった数:16
16か所は、すべて1本の記事に集まっていました。
支えの無い数は、もっと多かった
支えが見つからなかった16か所の行を読み直すと、同じ行に、見張りが通した数がほかにも在りました。 元データの面に、同じ数が偶然在ったからです。別の記事で後から見つかった2か所も合わせると、支えの無い数は25か所でした。
| 種類 | 何が起きたか | 数 |
|---|---|---|
| その場の数を書き留めていなかった | 記事を書いた日に出した数を、記録に残していなかった | 12 |
| 元の記録と食い違った | 記録に在る件を、記録と違う数で書いた | 4 |
| 前の作業の数を写した | 前の作業の文章に在った数を写し、数え直しても合わなかった | 9 |
見張りの初版が止めたのは、このうち16か所(64%)です。
素通りした理由は3つあった
罠1:面に同じ数が偶然在る
素通りした9か所のうち8か所は、元データの面に同じ数が偶然在りました。表の「21」「30」「2」「7」のような小さい数ほど、面のどこかに在ります。
そのうち2か所は、面に書いた時刻と重なっていました。「03:30」の30と、「12:03」の12です。時刻を数として取り出していたので、記事の「30」や「12項目」が面に在る扱いになっていました。
罠2:コードの枠の中を見ていなかった
残る1か所は、コードの枠の中に描いた図の説明の行でした。
リンクを踏んで来た 9回 (90日・GA4/参照元を送る経路のみ)
元データでは75日です。見張りは、コードの中の数を拾わないように、コードの枠をまるごと外していました。図をコードの枠で描くと、図の説明の文まで見張りの外に出ます。
罠3:面に載せた記事の題を、面の数として数えていた
元データの面には、その数字を使った記事へのリンクを載せています。リンクの札には記事の題が出ます。見張りは、その題の数まで「面に在る数」として数えていました。記事を出すと、その記事の題の数が、次の突き合わせでは面の数になります。
見張りを広げた
2026-09-26 に、3つとも直しました。
- 時刻は数に数えない
- コードの枠の中でも、日本語を含む行は本文と同じに見る
- 面に載せた記事への札(記事の題)は、面の数に数えない
広げた見張りで、出した5本を突き合わせ直すと、本文の数は473、元データに無かった数は46、そのうち支えが無かったのは19でした。25か所のうち、止めるのは19か所(76%)です。残る6か所は、面に同じ数が在るので、いまも止められません。
その6か所は、記事を書き直したので、いまは本文にありません。
見張りを置いてから出した2本
見張りを置いてから出した2本は、元データに無い数が0と2でした。2の方は、2つとも出どころを書き添えて出しています。
当社はこう読んだ
ここからは数字そのものではなく、当社の読み方です。
- 「在るか」だけの照合は、面が大きくなるほど甘くなる。 元データの面に数が多いほど、小さい数は偶然どこかに在ります。どの言葉に付いた数かまで見ないと、止めきれません。
- 支えの無い数のいちばん大きい塊は、書いた日に記録に残していなかった数だった。 見張りを強くするより前に、数を出したその場で、記録に書き留める必要があります。
- 見張りの外は、形で決まる。 今回の3つの罠は、どれも「数の出し方」ではなく、「記事の形(表・図・リンク)」から来ていました。
この数字で言えないこと
- 見ているのは「同じ数が面のどこかに在るか」までです。偶然の一致は、いまも素通りします。
- 辿ったのは、元データに無かった数が出てくる行だけです。支えの無い数は、25か所より多い可能性があります。
- 支えの有無は、当社が記録を辿って決めました。第三者は確かめていません。
- 数のほかの主張(「〜だった」という文)が正しいかは、この見張りの外です。
- 5本だけの記録です。
この記事は抜粋です。25か所の全部(何の数で、どの種類で、見張りが止めたか)と、記事ごとの数は、元データの方にだけ載せています。支えの無かった数は、元の記事を直し、訂正の1行を入れました。
元データと引用のしかた
25か所の全部・数え方・この数字で言えないことは、当社サイトに置いています。数字を引用するときは、記事ではなく元データを出典にしてください。そのまま貼れる形はこうです。
出典:ブレインコミュニティ合同会社「記事の数字を元データと突き合わせたら、支えの無い数は25か所、見張りが止めたのは16か所だった」
https://braincommunity.jp/jissoku/kiji-kazu.html (2026-09-26 測定)
当社が自分で測ったほかの数字も、同じ置き場にまとめています。
→ https://braincommunity.jp/jissoku/
業務システムの内製化と、AI活用の受託開発をしています。
ブレインコミュニティ合同会社 — https://braincommunity.jp/