
AIの「確認しました」を信じたら、異動済みの人が混ざっていた。AIにAIを検証させる収束ループ
- 返金可
Claude Codeに納品物を作らせたあと、こう聞いたことはないでしょうか。
「この内容、間違いがないか確認して」
返ってくるのはだいたいこれです。
「確認しました。全項目について出典と照合し、問題ありませんでした」
私の場合、この「確認しました」を通過した成果物に、すでにその部署にいない人が混ざっていました。出典に使ったページが古く、そのあいだに異動していた。確認したと言われた直後に、別の角度から見て気づいたものです。
この記事は、その「確認しました」を信用しない検証の組み方の記録です。いま私の受託では、成果物の検証をまずAIにやらせ、人が見るのは最後に残った判断待ちだけにしています。後半に、検証役への指示文、レビューの回し方、終わらせ方の判定、コストの抑え方を全部書きます。
同じ文脈で聞くと、AIは自分の仕事を肯定する
最初にやりがちなのが、作らせたのと同じ会話の中で「確認して」と頼むことです。これはほぼ機能しません。
そのAIは、さっきその値を書いた本人です。会話の履歴には、その値を採用した理由が並んでいます。人間が自分の書いた文章を読み返して誤字を見逃すのと同じことが起きます。しかも相手は、こちらの期待に沿う答えを返す傾向を持っています。「間違いがないか確認して」という問いは、「問題ありません」という答えを引き出す問いです。
対策の1つ目はこれです。
検証は、必ず別のコンテキストに出す。
Claude Codeなら、サブエージェント(Taskツール)を使って別プロセスに投げます。渡すのは成果物と検証ルールだけで、作ったときの経緯は渡しません。誰が作ったのか、なぜその値にしたのかを知らないまま、出典を開いて値と突き合わせてもらいます。
これだけで見逃しはかなり減ります。ただし、次の問題が出ます。
・検証役は毎回そこそこの数の指摘を出してくる。全部直すべきなのか分からない
・直すと、次のラウンドで別の指摘が出る。いつ終わるのか分からない
・一度「これは問題ない」と判断して却下した指摘が、次のラウンドでまた出てくる
・ラウンドを回すほどトークンを使う。ある案件では、この検証ループだけで週の利用上限の4割を溶かしました
つまり、検証役を置くだけでは足りません。回し方と、終わらせ方を設計する必要があります。ここから先が本題です。
この先に書いてあること
① 検証役に渡している指示文の全文(「間違いを探して」をやめた書き方)
② 出てきた指摘をそのまま直さない、2段構えの検証
③ 終わりを人が決めないための、機械的な終了条件
④ 一度却下した指摘が次のラウンドで戻ってくる問題の止め方
⑤ コストの設計(AIに見せる前に機械で落とすもの、モデルの配分)
⑥ 全体の流れ8工程と、それでも残るもの