これで何ができるか

毎月おなじ形の表を作っているなら、点検も毎月おなじ形で頼めます。数字の表を人に出す前に、AIに「おかしい数字」を先に見つけさせるは1回ぶんの点検でしたが、こちらは2か月目からの頼み方です。

前回の指摘を一緒に渡すと、AIがそこに引っぱられて新しい種類の異常を見落とすのではないか——これを確かめるために、架空の月次表を2か月ぶん・2本作って、6通りの頼み方を全24回通しました。

結果は、見落とし0件でした。前回の指摘を貼っても貼らなくても、8月に指摘すべき6件を4回とも6件とも挙げます。渡すことによる害は測れませんでした。

代わりに、まったく別のところが落ちました。前回の指摘を渡したうえで「毎月この形で返してください」と返す形まで決めた回だけ、6件のうち1件が4回とも落ちます。落ちたのは毎回おなじ種類でした。

毎月の表の点検で、前月の指摘を渡すことと返す形を決めることが新しい異常の検出に効くかを、頼み方6通りで並べた表。架空の月次表を2か月ぶん2本作り、7月版に異常5件、8月版は3件が直り2件が残り、7月に無い種類の異常を4件足して、8月に指摘すべきを6件に固定した。1つの頼み方につき4回、全24回。前月の指摘を渡さない回、貼った回、前回の指摘は答えではありませんと足した回は、いずれも4回とも6件中6件。ところが毎月この形で返してくださいと返す形まで決めた4回だけ4回とも6件中5件で、落ちたのは4回とも、ほかの異常と結び付かない足し算だけの小計のズレだった。足し直した値と表の値を並べて書いてくださいと足すと4回とも6件中6件に戻った。
落ちたのは「前月の指摘を渡したから」ではなく「返す形を短く決めたから」。全24回の実測。

前提

プログラミングは要りません。ブラウザのチャットAIに、表を貼って頼むだけです。

  • 毎月おなじ列で作っている表があること(部署別の経費、店舗別の売上など)
  • 先月の点検結果が、文章のまま手元に残っていること
  • 表はタブ区切りのまま貼れます。表計算ソフトから範囲をコピーすれば、そのまま貼りつきます

この記事は「その費目でよいか」「その処理が税務上正しいか」は扱いません。扱うのは、表の中だけで機械的に決まること——桁・単位・空欄・重複・符号・合計が合っているか——に限ります。

AIへの頼み方

1. まず、1か月ぶんの点検はそのまま使える

2か月目でも、土台は1回ぶんの点検とおなじです。6種類を名指しで探させます。

次の6種類に分けて、種類ごとに探してください。 1. 桁のミス(同じ行の他の数字とくらべて10倍・100倍になっているもの) 2. 単位の混ざり(1つの行や列だけ単位が違うもの) 3. 空欄(未入力なのか、0という意味なのかが分からないもの) 4. 行や列の重複(同じ数字が別の名前で2回入っているもの) 5. 符号(プラスのはずの列にマイナスが入っているもの) 6. 合計の不一致(合計欄と、中身を足した値が違うもの) 種類ごとに見出しを立ててください。該当が無い種類は「該当なし」と必ず書いてください。飛ばさないでください。

この文だけを渡した4回は、4回とも6件中6件でした。前月の指摘は1件も渡していません。つまり前回の指摘を渡さなくても、検出は落ちません。ここが後の話の土台になります。

2. 前回の指摘を貼るのは、検出のためではない

先月の返りをそのまま貼ります。まずこう書いて、

先月この表を点検したときの指摘を貼ります。

その下に先月の返りを貼り、さらに続けてこう書きます。

今月ぶんの表を渡すので、まず先月と同じ間違いが再発していないかだけを先に見てください。そのあとで、それ以外の異常を6種類で探してください。

この版も4回とも6件中6件。§1と同じです。前回の指摘は、検出を1件も増やしていません。

増えるのは別のものでした。7月に指摘した5件が今月どうなったか——直ったのか、まだ残っているのかの仕分けです。仕込みでは3件が直って2件が残るようにしてあり、前回の指摘を渡した12回は、12回とも5件中5件を正しく仕分けました。これは渡さない版からは出てきません。表だけを見ても「先月からある」かどうかは分からないからです。

なぜこの言い方か。「まず再発だけを先に見て、そのあとで6種類」と順番を切っているので、再発の確認が6種類の点検を置き換えません。この2段にしておくと、前回の指摘はあとの点検を減らさずに、仕分けだけを足せます。

なお、直った3件を「まだあります」と誤って書いた回は、24回とも0件でした。前回の指摘に引きずられた誤検知は、この形では起きませんでした。

3. 「答えではありません」を足す——数字は動きませんでした

前回の指摘に引っぱられるのが心配なら、こう足せます。

前回の指摘は答えではありません。指摘に無い種類も同じだけ探してください。

正直に書きます。この一文を足しても、数字は1つも動きませんでした。足した4回も、足さない4回と同じく6件中6件・仕分けも5件中5件です。

引っぱられていないものを引き剥がそうとしても、動く余地がありません。保険として付けておく分にはかまいませんが、これで検出が増えると期待しないでください。効くのは次の節の話のほうです。

4. 🚨 ここが落ちる——返す形を短く決めた回だけ

毎月おなじ形で返させたくなります。読む側が楽ですし、次の月にそのまま渡せます。そこで、前回の指摘を貼ったうえでこう頼みました。

今月ぶんの表を渡すので、毎月この形で返してください。 【再発】先月の指摘と同じ場所・同じ種類のもの。1行に1件。 【直った】先月の指摘のうち、今月は直っているもの。1行に1件。 【新しい異常】先月の指摘に無い異常。6種類(桁のミス/単位の混ざり/空欄/行や列の重複/符号/合計の不一致)のどれかを行末に付ける。1行に1件。 各行に、部門名と項目名を必ず書いてください。 この3つの見出し以外には、何も書かないでください。

仕分けは正しく出ました。4回とも5件中5件。形もそろっています。

ところが検出だけが落ちました。この版だけ、4回とも6件中5件。しかも落ちたのは4回とも同じ1件です。

落ちたのは、ほかのどの異常とも結び付いていない、足し算だけの小計のズレでした。材料Aでは総務部の小計が明細より5,000円多く、材料Bでは新宿店の小計が7,000円多い。どちらも、その部門の中に他の異常は1つもありません。足し直さないと絶対に出ない種類です。

そして4回とも、代わりに別の小計を挙げていました。重複行を含んだままの小計、単位のおかしい行を外して作られた小計——つまりすでに見つけた異常の周りだけを足し直して、それ以外の欄は足していません。

なぜこうなるか。「1行に1件」「この3つの見出し以外には何も書かない」と書いた瞬間、途中の計算を書く場所が消えます。書く場所が無いものは、やらなくても表面上つじつまが合ってしまいます。形を短く決めることは、手順を削ることと同じになり得ます。

5. 落ちた1件を戻す——計算を「書かせる」

削れた計算を戻すには、その計算の置き場所を作るのがいちばん確実でした。6種類の指示文のあとに、こう足します。

そのうえで、小計と総計について、行を足し直した値と表の値を並べて書いてください。 一致していた小計についても、重複した行や桁のミスを含んだままの一致でないかを書いてください。

これを足した4回は、4回とも6件中6件。§4で落ちた「足し算だけのズレ」も4回とも戻りました。並べて書かせれば、全部の欄を足さざるを得ないからです。

後半の一文にも効き目がありました。「小計が中身と一致しているが、それは重複行や桁のミスを含んだままの一致なので検算になっていない」という注意を、頼まなかった20回では13回しか書かなかったのに、頼んだ4回では4回とも書きました。

自分から書いてくることがあるからといって、書かせる一文を省かないでください。4回に1回は出ません。出なかった回だけ、読む側は「小計は合っていた」と受け取ります。

6. 来月ぶんに短くする

最後に、次の月にそのまま貼れる形へ畳みます。§4と違い、これは点検が全部終わったあとで短くするので、手順を削りません。

最後に、この点検結果を来月そのまま貼れる形に短くしてください。 1行に1件、「部門名 / 項目名 / 種類」だけを書き、説明は付けないでください。

この版も4回とも6件中6件。末尾の一覧に、真値6件が4回とも全部載りました。一覧は7〜8行になります。余分の1〜2行は、別の異常から派生した小計(重複行を含んだままの小計など)で、誤りではありません

短く決めるなら、点検の前ではなく後にしてください。これが§4との違いのすべてです。

うまくいかないときの言い直し方

該当が無い種類を黙って飛ばす

6種類のうち2〜3種類しか見出しが立たないときは、「無かった」のか「見なかった」のかが区別できません。

種類ごとに見出しを立ててください。該当が無い種類は「該当なし」と必ず書いてください。飛ばさないでください。

なぜこの言い方か。「該当なし」という書く場所を先に作っているからです。書く欄があれば、埋めるために見ます。禁止だけを書くと、飛ばしたこと自体が見えません。

どのセルの話か分からない

「合計が合いません」だけ返ってきて、どの部門のどの項目か分からないことがあります。とくに§4のように短い形で返させたときに起きます。

各行に、部門名と項目名を必ず書いてください。

この一文を入れておくと、返りをそのまま検索できます。翌月に貼り直すときも、位置がずれません。

2回頼むと違うことを言う

同じ表を2回渡して結果がそろわないなら、指示文ではなく表のほうに曖昧さがあります。今回は6通り × 材料2本をそれぞれ2回ずつ回して、指摘した6件の組み合わせが12組とも一致しました。そろわないときの調べ方は同じ頼みを2回して、自分で見比べるにまとめてあります。

月をまたぐ行の扱いでずれる

今回の材料には、月をまたぐ行を1件も入れていません。「先月の売上が今月の表にも載っている」ような行が混ざると、点検の話と二重計上の話が混ざって、どちらの結論も出せなくなるためです。月末月初の行の行き先は月をまたぐ行を、二重に数えさせないのほうで扱っています。

応用・次の一手

渡すものが「文章」なら効く、とは限りません。別の記事で、前日の一覧を渡してもメールの仕分けが13件とも動かなかったことを書きました(毎朝のメールを「昨日から増えたぶんだけ」仕分けさせる)。そのときは「渡しているのが判定の結果だけで、文章ではないからだと思われます」と、確かめずに閉じています。

今回は文章そのもの(先月の指摘5件の説明文)を渡しました。それでも検出は1件も増えませんでした。つまり「文章なら効く」も違います。増えたのは仕分けだけ——表を見ても分からないことだけが増えます。

ここまでの3つを、翌月の運用としてまとめるとこうなります。

  1. 先月の指摘を貼る(§2)——仕分けが手に入る。検出は増えない
  2. 足し直した値を並べて書かせる(§5)——短く返させたときに落ちる1件を守る
  3. 最後に短く畳む(§6)——次の月の入力にする。点検の前に短くしない

毎月おなじ日に自分で回すのが面倒なら、決まった時刻に動かす形にできます。作り方は毎日決まった時刻にAIを動かすにあります。ただし自動で回すほど、§4の落とし穴が効いてきます。自動化した返りは短い形になりがちで、短い形は計算を削るからです。自動で回すときこそ§5の一文を入れてください。

1回ぶんの点検の型そのもの(6種類の中身、平均で判定させると外れる理由)は数字の表を人に出す前に、AIに「おかしい数字」を先に見つけさせるにあります。渡した材料の件数が毎回そろっているかを見張る話は毎回、材料の件数を数えさせるです。

この記事の数字はすべて架空データでの実測です。架空の月次表を2か月ぶん・2本作り、6通りの頼み方を材料2本 × 各2回、全24回通しました。8月に指摘すべき6件はセルの位置まで先に決めてあり、判定はすべてPythonで機械的に照合しています。生の返り24本と判定コードは、リポジトリの docs/evidence/monthly-check-from-last-findings.md に全文置いてあります。