【AI活用】一括で直したはずが、直っていなかったんだよ。まとめて処理するときの落とし穴

AI活用

おはよう、後輩A君。

先週、私はブログの記事にリンクを一括で追加する作業をしたんだ。47記事に、新しく書いた8本へのリンクをまとめて足す。プログラムを走らせて、47件すべて成功。実際のページも見て、ちゃんと表示されている。完璧だと思ったんだよね。

でもね、昨日それを数え直したら、28本のリンクが抜けていたんだよ。しかも1週間まったく気づかなかった。今日はこの失敗の話をするよ。これはブログの話に見えて、実は後輩A君が仕事で必ず一度は踏む落とし穴の話なんだ。

1. 「47件すべて成功」は、嘘じゃなかったんだよ

まず、何をしたかを説明するね。

私のブログには「シリーズ記事の一覧」というリンク集が、各記事の下に付いているんだ。新しい記事を書いたら、過去の全記事のリンク集に、その新記事を足す必要がある。手作業だと何十回も同じことを繰り返すことになるから、プログラムにやらせているんだよ。

先週やったのは、こういう作業だったんだ。

既存の47記事のリンク集に、新しく書いた8記事へのリンクを足す

結果は47件すべて成功。実際のページを開いて、新しいリンクが並んでいるのも確認した。ここに嘘は一つもなかったんだよ。指示した通りのことが、指示した通りに実行されていたんだ。

でもね、指示そのものに穴が空いていたんだよね。

2. 1週間後、きれいな階段が出てきたんだよ

昨日、別の作業のついでに全56記事のリンクを数え直したんだ。そうしたら、こんな結果が出てきたんだよ。

1本目の新記事 …… 7本足りない
2本目の新記事 …… 6本足りない
3本目の新記事 …… 5本足りない
4本目の新記事 …… 4本足りない
5本目の新記事 …… 3本足りない
6本目の新記事 …… 2本足りない
7本目の新記事 …… 1本足りない
8本目の新記事 …… 過不足なし

これを見た瞬間、背筋がすっとしたんだよ。1本ずつきれいに減っている。合計すると28本。

後輩A君、ここが今日いちばん伝えたいところなんだ。ミスがきれいな形をしているとき、それは単純な打ち間違いじゃないんだよ。うっかりミスなら、抜けはバラバラに散らばるはずだよね。7本、6本、5本……と階段になるのは、仕組みそのものが同じ間違いを繰り返した証拠なんだ。

だからね、原因を探すときは「どこを間違えたか」より先に「この形になるには、何が起きていればいいか」を考えるといいよ。形から逆算する方が、ずっと早く犯人にたどり着けるんだよね。

3. 犯人は「対象」の線引きだったんだよ

形から逆算してみると、答えはすぐ出たんだ。

私は作業をこう分けていたんだよね。

更新する側=既存の47記事
追加されるもの=新しい8記事

この線を引いた瞬間に、新しい8記事自身が「更新する側」から抜け落ちたんだよ。8記事は「足される側」であって「足す先」ではない、とプログラムが判断したわけだね。

でも実際には、新記事どうしもお互いにリンクし合う必要があったんだ。1本目の記事から見れば、あとの7本は「まだ知らない新記事」なんだからね。

しかも各記事は、自分が書かれた時点のリンク集を持っている。だから1本目は7本知らない、2本目は6本知らない……という階段ができあがったんだよ。犯人は打ち間違いでもプログラムのバグでもなく、私が最初に引いた線だったんだ。

これ、ブログだけの話じゃないんだよ。

・既存ユーザーに新機能の通知を送る → 新機能で増えたユーザーが漏れる
・旧テーブルのデータを新テーブルに移す → 移行中に増えたデータが漏れる
・既存メンバーに新しい権限を付ける → 同時に入った新メンバーが漏れる

全部同じ構造なんだよね。「既存」と「新規」で線を引いた瞬間、新規どうしの関係が視界から消える。後輩A君も、一括処理を書くときはこの線を疑ってみてほしいんだ。

4. 1週間も気づかなかったのには、理由があるんだよ

ここも大事なところだよ。私が1週間気づかなかった理由は、はっきりしているんだ。

私は「成功したか」しか確認していなかったんだよね。47件成功、エラーゼロ、ページにも表示されている。全部○だった。

でも私が確認すべきだったのは、そこじゃなかったんだ。

❌ 確認していたこと:やった作業は成功したか
⭕ 確認すべきだったこと:あるべき状態になっているか

この2つは、似ているようで全然違うんだよ。前者は自分の指示の範囲内しか見ていない。指示そのものが間違っていたら、何度確認しても○が並ぶだけなんだよね。

後者は、指示のことをいったん忘れて「完成形はどうあるべきか」から確認する。今回で言えば「56記事すべてが、56本のリンクを持っているはずだ」と先に決めて、そこから数える。そうすれば1週間前に気づけたんだよ。

作業の成功を確認するな。結果の正しさを確認しよう――これが今日いちばんの教訓だね。

5. 「数えて確かめる」は、思っているより簡単なんだよ

じゃあどうやって確認するか。難しいことはいらないんだ。私がやったのはこれだけだよ。

あるべき数を先に決める(56記事 × それぞれ56本のリンク)
全部を機械的に数える(1件ずつ目で見ない)
差がゼロであることを確認する

ポイントは①を先にやることなんだよ。作業のあとに数えると、出てきた数字を見て「まあこんなものかな」と思ってしまうんだよね。人間はどうしても、目の前の結果に引きずられる。だから作業する前に「正解の数」を書いておくんだ。

②の「機械的に」も大事だよ。56記事を目で確認するのは無理だし、やったとしても見落とす。数えるのは道具にやらせて、人は「いくつであるべきか」を決めることに集中する。この分担が効くんだよ。

そして③。「ゼロ件でした」を見て、はじめて終わりなんだ。「28件見つかりました」で終わるんじゃなくて、直したあともう一度数えて、ゼロを見る。この最後のひと手間をやるかどうかで、安心の質がまるで違うんだよね。

6. AIに任せるほど、確認の仕組みが要るんだよ

最後に、これからの話をさせてほしい。

今回の作業は、私がAIに頼んでやってもらったものなんだ。47件を数分で処理してくれた。手作業なら半日かかるからね。AIは指示した通りのことを、正確に、猛烈な速さでやってくれるんだよ。

でもね、だからこそ指示の穴も、猛烈な速さで47箇所に広がるんだよね。手作業なら、20件目あたりで「あれ、この記事は対象じゃなくていいんだっけ?」と気づいたかもしれない。速いということは、迷う時間がないということでもあるんだ。

だから私は、こう考えるようにしたんだよ。

AIに任せる量が増えるほど、人がやるべきなのは「作業」ではなく「正解の定義」と「数え直し」になる。

以前「ぜんぶ自動化」をやめて分担を設計した話を書いたけれど、あれと同じ結論にたどり着いたね。速く動く部分をAIに渡したなら、人は止まって確かめる側に回る。両方をAIに渡してしまうと、間違いに気づく人が誰もいなくなってしまうんだよ。

ちなみに今回、抜けに気づけたのは「あの作業、やらなくて大丈夫だったっけ?」と聞かれたからなんだ。あの一言がなければ、たぶん今も気づいていない。確認する習慣を持った人が一人いるだけで、仕組みは救われるんだよ。後輩A君も、遠慮せずに聞いてくれる人でいてほしいな。

結論:作業の成功ではなく、結果の正しさを数えようか

今日の話をまとめるとこうだよ。

① 一括処理は「既存」と「新規」の線引きで漏れる
きれいな階段状のミスは、仕組みが原因のサイン
③ 「作業が成功したか」ではなく「あるべき状態か」を確認する
正解の数を先に決めてから、機械的に数える
⑤ 直したあともう一度数えてゼロを見るまで終わりじゃない

一括処理って、うまくいくと本当に気持ちがいいんだよね。47件成功、という文字を見た瞬間に、仕事が終わった気になる。でもあれは「指示した分が終わった」だけであって、「正しくなった」とは違うんだよ。

後輩A君も、次にまとめて何かを処理するときは、走らせる前にメモに一行書いてみようか。「終わったとき、この数字がいくつになっていれば正解か」――たったそれだけで、1週間気づかない失敗を防げるんだよ。

よくある質問

Q1. 一括処理の前に、必ず確認すべきことは何?

「対象リスト」に自分自身が入っているかだよ。今回の私の失敗はまさにこれだった。特に「既存のものに、新しいものを追加する」形の作業は要注意なんだ。追加される側も、同時に更新される側になっていないか――ここを一度立ち止まって考えるだけで、かなり防げるんだよね。

Q2. 毎回そんなに丁寧に数えていたら、時間がかかるんじゃない?

数えるのは道具にやらせるから、実は数分で終わるんだ。今回も全56記事のスキャンは1分もかかっていないよ。時間がかかるのは「正解の数を決める」ところだけで、こっちは頭を使う作業だから人間がやる価値がある。むしろ、1週間後に28箇所直す方がずっと時間を食うんだよね。

Q3. ミスを見つけたとき、まず何をすればいい?

直す前に、全体像を数えることだよ。1件見つかると、つい目の前のそれを直したくなるよね。でも「他にも同じ理由で壊れているものがあるはずだ」と考えて、先に全部を数える。今回も、最初の1件を直して満足していたら、残り27本は放置されていたんだ。1件は氷山の一角だと疑うのが正解だね。

Q4. AIに一括作業を任せるのは、やっぱり危ないってこと?

そうじゃないよ。今回だって、47件を数分で処理してくれたのはAIのおかげだし、28箇所の修正も一瞬で終わった。危ないのはAIではなく、「確認まで含めて全部AIに渡してしまうこと」なんだ。作ってもらった人と確かめる人が同じだと、見落としは見落としのままになる。AIの答えを鵜呑みにしない話とも通じるけれど、役割を分けることが安全につながるんだよ。

【本日のミッション:正解の数を、先に書いてみようか】

  • ☐ 次に一括処理をするとき、走らせる前に「終わったらこの数字がいくつになるか」をメモしてみようか
  • ☐ 「既存」と「新規」で線を引いたら、新規どうしの関係が漏れていないか確かめてみようか
  • ☐ (後輩A君へ)誰かの作業に「あれ、やらなくて大丈夫でした?」と聞いてみようか。その一言が、仕組みを救うことがあるんだよ

📚 AI活用シリーズ(おすすめ)

▼ シリーズの全記事一覧を見る

コメント

タイトルとURLをコピーしました