AIガバナンスを公開した日、自分たちの開発でつまずいた話

業務改善

はじめに

AIガバナンスに関する方針を改訂しました。

AIが何を参照し、どこまで判断し、何を実行してよいのか。人間はどこで確認し、どこで止めるのか。

生成AIに関わる事業を営む事業者としては、その思想と方針を明らかにし、それに沿って開発を進めることが責務であると考え、今年6月に策定して公開していました。

ヒロ(Copilot)、カイ(ChatGPT)、セイ(Claude)、ゼン(Gemini)という複数のAIと議論を重ね、それぞれの見落としを補いながら、何度も校正を重ね、ようやく公開に至りました。

ところが、その公開作業の最中に、ちょっとした事件が起きました。

AIの手順が抜けていた

Webサイトの改修は、ローカル環境でClaude Codeにコーディングを任せ、私が確認したうえで公開しています。

今回、Claude Codeの作業で、開発手順の一部が抜けていたことが判明しました。

具体的には、こうです。新しいバージョンのフォルダを作り、修正し、保存した。ここまでは正しく進んでいました。ところが、「公開用のファイルを作る際の向き先を、新しいバージョンに切り替える」という一手順が抜けていました。結果、公開されたのは、修正前の内容でした。

しかも、そのバージョンで行った修正は、ヘッダーのロゴに付いていた「ページの主見出し」を示す印(H1)を、見出しではない印に置き換えるというもの。画面の見た目は、ほとんど変わりません。

私はローカルで確認して「OK」と判断し、公開後に動作も確認しました。それでも、新旧の違いには気づけませんでした。原稿を差し替えたつもりが、コピー機には古い原稿が載ったままだった。そんな状態です。

つまり、AIの作業に抜けがあったのに、人間である私の確認でも見逃していた。いや、むしろ、目視で気づける範囲の違いではなかった。

どこを確認すべきかの設計不足。前捌きの不足を、後捌きで補うことになりました。

「AIが間違えた」で終わらせない

もちろん、AIの手順の抜けは問題です。ただ、そこで考えました。そもそも、開発手順をAIへ十分に伝えられていたのか。

今回の作業では、Claude Codeに参照させる開発指示ファイル(CLAUDE.md)を、そもそも作っていませんでした。AIが守るべき手順を、人間が設計・管理できていなかった。そして最後に「OK」と判断したのも私。

ここで「AIが勝手に間違えました」と言ってしまうのは簡単です。でも、それでは同じことが繰り返されるかもしれません。

AIの実行ミスと、人間の設計・確認の問題は、分けて考える必要があります。

見た目が正しいことと、正しく作られたことは違う

今回の失敗で、改めて気づいたことがあります。

画面上で問題が見つからないことと、開発手順が正しく守られていることは別です。特にAIに開発を任せる場合、成果物の見た目だけでなく、どの手順で作られ、何を参照しているかという部分も大切になります。

人間が最終確認する。これはAIガバナンスの基本原則です。でも、確認すべき対象が曖昧なままでは、人間が確認していても、実質的には何も確認できていない場合があります。

「人間がOKを出した」だけでは、十分な管理とは言えない。

なかなか耳の痛い話です。

公開した約束を、自分たちでも守れるか

今回改訂したAIガバナンス方針には、次の考え方があります。

  • 説明できること
  • 記録を残すこと
  • 人間が最後に判断すること
  • 任せる範囲と、止め方を設計すること
  • 過信しないこと

立派なことを書いています。個人事務所のポリシーとしては、少々重厚すぎるかもしれません。

でも、公開する以上は約束です。だから今回の件についても、原因を確認し、再発防止策を整理しました。

原因を特定できたのは、Gitの記録があったからです。向き先を決める設定ファイルだけ、変更の履歴がゼロでした。「記録を残す」という原則が、さっそく役に立ちました。

再発防止として、Claude Codeが作業のたびに参照する開発指示ファイル(CLAUDE.md)を作りました。中身は次の4つです。

  • バージョンを切り替えるときの手順(設定の更新、ファイルの作成、成果物に変更が入っているかの確認、記録の順)
  • 今回の失敗事例と、その教訓
  • 公開とGitの運用ルール(公開作業は私が行い、AIは勝手に外部へ送らない、など)
  • 人間とAIの協働の流れ(私がローカルで確認してOKを出してから、記録に残す)

特に、「成果物に変更が入っているか」を確かめる手順を入れました。見た目ではなく、成果物の中身で確かめるわけです。これで、同じ失敗は起きにくくなります。

大事なのは、AIを使っているから失敗しないと宣言することではありません。

失敗を見つけたときに、説明できること。そして、同じ失敗が起きにくい仕組みに直せること。それが、私たちの考えるAIガバナンスです。

AIは間違える。人間も間違える

私たちは、AIを万能だとは考えていません。しかし、人間が万能だとも考えていません。

AIが人間の見落としを指摘することもあれば、人間がAIの思い込みを修正することもあります。大切なのは、互いの間違いを補いながら、よりよい判断につなげること。ただし、最後の判断と責任は人間が担います。

今回も、AIの手順が抜け、私が確認を見落としました。それでも、問題を見つけ、原因を調べ、再発防止策を決め、無事に公開できました。

これからAIを業務で使う企業の皆さんにも、ぜひ伝えたいことがあります。

AIに仕事を任せるなら、AIの仕事をどう確認するかまで設計しておく。

そして、確認した人を責めるのではなく、確認できる仕組みになっていたかを考える。

そこまで含めて、AI活用だと思っています。

おわりに

AIガバナンス方針を公開する日に、自分自身がガバナンスの必要性を再確認することになるとは、なんとも都合のよい教材ができてしまいました。

AIガバナンスは、AIを疑うためのものではない。人間の「OK」にも根拠を持たせるためのもの。

そんなことを考えた一日でした。

まとめ

  • AIガバナンス方針の改訂版を公開する作業中に、Claude Codeの作業で、バージョン切り替えの手順の一部が抜けていたことが分かった
  • 結果、修正前の内容が公開された。修正(ロゴのH1の置き換え)は見た目にほとんど差が出ないもので、人間の目視では気づけなかった
  • 背景には、AIに参照させる開発指示ファイル(CLAUDE.md)を作っておらず、確認すべき点を設計していなかったことがある
  • 原因を特定できたのはGitの記録があったから。再発防止として、CLAUDE.mdに手順、失敗事例、運用ルール、協働の流れを整理し、成果物の中身で確かめる手順を加えた
  • 見た目が正しいことと、正しく作られたことは別。「人間がOKを出した」だけでは十分な管理とは言えない
  • AIに任せるなら、その仕事をどう確認するかまで設計する。確認した人を責めず、確認できる仕組みだったかを考える

編集後記

ちなみに本稿の草案はChatGPTに作らせたのですが、私の失敗談好きを過剰に忖度した結果、失敗談として起案してきました。

本当は「AIと人間が協業するためのルールを、人間とAIの協業で作り上げた」という美談にしたかったのですが、敢えて「反面教師」としていただきたく、公開にするに至りました。

「き ー さ ー まー!w」と叱っておくことは忘れませんでした。笑


関連するNDL語彙:[前捌きとは] [ニューロデザインとは]

コメント

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