この記事は、AIエージェントによる業務自動化を考えている方に向けて書いています。私たち株式会社One Ismは、地方の会社の集客支援を仕事にしながら、自分たちの会社の業務も、多くをAIエージェントに任せています。ただ、この記事でお伝えしたいのは「何を任せているか」ではありません。「毎日決まった時刻に、どんな仕事が自動で走っているか」と、「その仕事が本当に動いたかを、どうやって見張っているか」です。正直に書くと、私たちは自動化した仕事が静かに止まる事故を、何度も経験しました。
結論を先に書きます。業務自動化でいちばん大事なのは、仕組みを組むことではありません。組んだ仕事が「本当に動いたか」を見張ることです。
プログラムには、「正常に終わりました」という合図があります。ただ、この合図は「エラーを出さずに終わった」という意味でしかありません。「実際に仕事をした」という意味では、ないのです。
この違いを見落とすと、中身が空っぽの仕事が、毎日「成功」と報告され続けます。私たちは、この落とし穴に何度も落ちました。だから今回は、成功例だけでなく、静かに止まっていた事故もあわせて書きます。
ここから先は、まず「いつ、何が自動で走っているか」という時刻表を公開します。そのうえで、その仕事をどう見張っているか、実際に起きた停止、そして人が最後に見る部分まで、順番にお伝えします。
まず、私たちの会社で毎日自動で走っている仕事を、時刻の早い順に並べます。「どんな作業をAIに任せているか」という一覧は、別の記事にまとめています。この記事では、作業の種類ではなく「いつ動くか」という時刻表として見てください。
AIエージェントとは、指示を受けてから動く道具ではなく、決まった条件になると自分から動き出す仕組みのことです。私たちの場合、その多くが「時刻」を合図にして動きます。
これらは、人が指示を出さなくても、決まった時刻になれば動きます。とても便利です。ただ、便利だからこそ、こわい面もあります。人が見ていないところで動くということは、人が見ていないところで止まる、ということでもあるからです。
作業そのものの一覧に興味がある方は、別記事の「AIに任せている作業の一覧(頻度・実例つき)」をあわせてご覧ください。この記事は、その作業を「いつ走らせ、どう見張っているか」に絞って書いています。
ここが、この記事でいちばんお伝えしたい部分です。
自動化した仕事を見張るとき、私たちは最初、「エラーのログが出ていないか」を見ていました。エラーが無ければ、正常。そう考えていました。多くの見張りが、この考え方で作られていると思います。
ところが、この見方には穴があります。仕事が中身のないまま終わっても、エラーは出ないからです。プログラムは「何もしなかった」ことを、わざわざ失敗として教えてはくれません。むしろ、何もしなければ、こけようがないぶん、きれいに「成功」で終わります。
「エラーが無いか」で見張るのは、じつは、とても楽な方法です。エラー通知型の見張りは、最初から「エラーが出たら教える」という形で作られています。だから、それをそのまま信じてしまいます。手間がかからず、たいていの日は緑のままなので、見張っている気持ちにもなれます。落とし穴は、この「気持ちになれる」ところにあります。
実際に、こういうことが起きました。AIが毎朝、最新の情報を集めてくる仕組みがあります。ある時、集める指示の文章を新しくしました。ところが、一部だけ古い指示のまま動き続けていました。その部分は、数週間、空っぽのまま「成功」を報告し続けていたのです。
そこで、見張り方を組み直しました。「失敗の証拠が無いか」ではなく、「成功の証拠があるか」で見るように変えたのです。
具体的には、プログラムが無事に終わったかではなく、出てきたデータの中身が、ちゃんと新しくなっているかを見ます。たとえば、朝の集計であれば「今日の日付の行が、ちゃんと入っているか」を見ます。動画の数字であれば「昨日より再生の数が増えているか」を見ます。プログラムの終了の合図は、いっさい信用しません。中身そのものを、直接のぞきに行くのです。
「失敗を探す」と「成功を確かめる」は、似ているようで、正反対です。失敗を探す見張りは、あらかじめ知っている失敗しか見つけられません。想定していない止まり方をされると、そのまま素通りしてしまいます。いっぽう、成功を確かめる見張りは、理由が何であれ「今日の分が無い」という一点で引っかけます。止まり方の種類を、いちいち想定しなくてよくなるのです。
見張り方を組み直したら、過去に空振りしていた仕事が、次々と赤に変わりました。今まで緑に見えていたのは、動いていたからではありません。見張り方が甘かっただけでした。
これは、業務自動化を考えるときの、いちばん大事な発想の転換だと思っています。「失敗していないこと」を確認するのではなく、「成功したこと」を確認する。この一手を入れるだけで、見える景色がまるで変わります。
いちばんこたえた事故を、正直に書きます。
ある案件の広告は、毎日きちんと配信されていました。数字も動いていました。ところが、その広告の数字を集める計測の仕事だけが、止まっていました。しかも、止まっていた期間は13日間です。
その間、計測の仕事は毎回、正常終了の扱いで終わっていました。処理をスキップして、そのまま「正常に終わりました」を返す作りになっていたのです。エラーは、一度も出ていません。だから、古い見張り方では、まったく気づけませんでした。
広告そのものは動いていたので、その間に配信され続けた広告費のうち、約24万円分が、成果を集計されないまま過ぎていました。これは損として消えたお金ではありません。効いているかどうかを確かめられないまま、使い続けていた金額です。金額そのものより、「動いていると思い込んでいた13日間」があったことのほうが、私たちにはこたえました。
この停止に気づけたのは、見張り方を「成功の証拠があるか」へ組み直した直後でした。組み直したとたん、その計測の仕事が赤に変わったのです。さかのぼって記録を追うと、止まりはじめは13日前でした。もし古い見張りのままだったら、この13日は、たぶん13日では終わっていません。誰かがたまたま数字の少なさに気づくまで、静かに延びていったはずです。
似た事故は、ほかにもありました。ある動画の分析は、動画プラットフォームの分析サービスとのつなぎ目で接続の許可が切れ、さらに日々の取り込みの仕組みが未設置だったために、数字が数週間、古いまま止まっていました。もしこの見張りを作っていなかったら、私はこの停止に、いつ気づいたのだろうと思います。たぶん、しばらく気づかないままでした。
この2つに共通しているのは、「止まっていること自体が、静かで、気づきにくい」という点です。私たちはこれを、社内で「沈黙の故障」と呼んでいます。派手に落ちる故障は、誰でも気づけます。こわいのは、静かに、正常な顔をして止まる故障のほうです。
もし、あなたの会社でも何かを自動で動かしているなら、一度だけ確かめてみてほしいことがあります。「広告や配信そのものは動いているのに、その数字を集める側だけが、いつのまにか古いままになっていないか」です。この形の止まり方は、エラーの通知には出てきません。数字の中身を、日付ごとに直接見ないと、見つからないのです。
見張りを組んで、少し安心していました。ところが、もっとこわいことが起きました。見張る側のプログラムに、バグがあったのです。
エラーの件数を数える処理がありました。本来なら、エラーが0件のときは「0」という1行が返るはずでした。ところが実際には、「0」が2行返っていました。数える側が、少しずれていたのです。
見張る側が壊れると、見張りそのものが意味を失います。異常があっても正常と言い、正常でも異常と言う。これがいちばん危ないパターンです。だから今は、見張りの結果そのものも、定期的に人の目で確かめるようにしています。
似たつまずきは、ほかにもありました。複数の自動処理が、同じ記録ファイルに書き込んでいた時期があります。すると、本当は止まっている処理が、別の処理の書き込みのおかげで「動いている」ように見えてしまいました。今は、処理ごとに記録を分けて、この誤魔化しが起きないようにしています。
もう一つ、地味ですが効いた事故があります。社内で動かしている定時実行の仕事のうち、3本が、実は死んでいました。原因は、日本語の変数名が処理の起動時にうまく解釈されず、動き出す前に落ちていたことです。手元で試すと動くので、誰も気づけないまま止まっていました。
この3本に気づけたのは、見張りを1つに頼らなかったからです。処理が動いた記録だけでなく、その処理が本来つくるはずのデータの側からも、別の角度で見ていました。片方の見張りがすり抜けても、もう片方が引っかける。見張りは1本の綱ではなく、目のあらい網を何枚か重ねる、というイメージで組んでいます。1枚で完璧を狙うより、あらい網を重ねるほうが、結局はよく捕まえます。
これらの経験から学んだのは、見張りは「作って終わり」ではない、ということです。見張りにもバグは入りますし、時間がたつと現実とずれます。見張りを見直す時間を、あらかじめ業務フローに組み込んでおくことが、遠回りのようでいちばん近道でした。
見張りの仕組みは、二段構えにしています。
一段目は、機械的なチェックです。決まった時刻に、数字が新しくなっているかだけを、淡々と見ます。ここではAIを使いません。判断が要らない見回りなので、安く、速く、確実に回せるほうがよいからです。
二段目は、何かおかしいと分かった瞬間だけ動きます。担当のAIエージェントが呼び出され、その信号が本物の異常かを確かめ、原因を調べ、直せる範囲は直すところまでを引き取ります。いつも動いているのではなく、赤が出たときだけ起きてくる、という形です。
AIがどこまで自分の判断で動いてよいかは、事前に渡してあるルールで決めています。長い規則ではありません。2行です。その2行は、「取り返しのつく操作は、AIに任せてよい」「取り返しのつかない操作は、必ず人に上げる」という中身です。この短いルールが、AIが勝手に踏み込みすぎない線引きになっています。
たとえば、止まった仕事をもう一度動かし直すのは、取り返しのつく操作です。ここはAIに任せます。いっぽう、外部への配信や、お金の動く操作、いちど消すと戻せないものは、たとえ直せそうに見えても、人に上げて止めます。ルールを2行に収めているのは、長くすると、かえって例外の穴が増えるからです。線引きは、短くて、いつでも思い出せることが大事だと考えています。
この形にしてから、業務効率化の面でも、はっきり効きました。人は、全部を見張るのをやめて、「赤が出たときだけ」確認すればよくなったからです。見張る対象が増えても、人の負担はほとんど増えません。増えるのは、機械が淡々と見て回る対象の数だけです。
同じ業務改善でも、実感として大きかったのは、「作業が速くなった」ことより「見落としが減った」ことのほうです。人は、たくさんのものを毎日見続けると、必ずどこかを見落とします。機械は、飽きずに、同じ精度で見続けます。人と機械の得意な部分を、素直に分けただけです。
ここまで、見張りの話を書きました。ただ、見張りきれない部分も、正直にお伝えします。
一つは、数字は合っているのに、中身がずれている場合です。データが新しくなっているかは、機械で見張れます。けれど、その文章の言葉づかいがふさわしいか、お客さまに失礼がないか、内容が事実と合っているかは、「正常終了」では測れません。ここは、人が読むしかありません。
一つは、金額や契約に関わる判断です。いくら使うか、この条件で進めてよいか。こうした判断は、間違えると取り返しがつきません。だから、AIには材料の整理までを任せ、決めるのは人が担当すると、最初から決めています。
そして、AIの「やりました」という報告そのものを、私たちは無条件には信じていません。完了の報告と、実際に仕事をしたことは、別だからです。この考え方については、別記事の「AIに「やりました」を確かめる手順」に詳しく書いています。
これから業務自動化を始める方に、最初の一手をひとつだけおすすめします。新しい仕組みを増やすより先に、いま動いている自動処理を1つ選び、「その仕事の結果が、今日ちゃんと新しくなっているか」を確かめる見張りを、1本だけ足すことです。特別な道具は要りません。まずは担当者が毎朝、その数字の日付を目で見るだけでも、りっぱな見張りになります。派手ではありませんが、これがいちばん効きます。動かすことより、動き続けているかを知ることのほうが、じつはずっと難しいからです。
だから、自動化した仕事ほど、人が最後に一度、目で見る工程を残しています。業務自動化は、人の仕事を無くすためではありません。人が見るべき場所を、いちばん大事なところに絞るために使っています。すべてを機械に預けて安心するのではなく、機械に見張らせたうえで、最後の一目だけは人が持っておく。この一年で、私たちがたどり着いた形です。
まず、毎日または毎週くり返している仕事を1つ選ぶことをおすすめします。数字の集計や、決まった形式の見回りのように、判断が要らず手順が決まっている仕事から始めると、うまくいかなくても人に戻しやすいです。私たちも、1つの仕事から少しずつ任せる範囲を広げてきました。
「エラーが出ていないか」ではなく、「データの中身が、ちゃんと新しくなっているか」で見ることをおすすめします。今日の分の数字がそろっているか、前回より更新されているか。プログラムの終了の合図ではなく、出てきた中身そのものを直接確認する方法です。私たちは全案件の数字を、毎朝この考え方で自動的に見張っています。
プログラムの「正常終了」は、「エラーを出さずに終わった」という意味でしかありません。「実際に仕事をした」という意味ではないのです。実際に、ある計測の仕事が、13日ものあいだ止まったまま「正常終了」を出し続けていた例があります。だからこそ、成功したという証拠を、直接見る必要があります。
見張りは二段構えにしています。決まった時刻の見回りは、AIを使わない機械的なチェックです。異常が見つかったときだけ、担当のAIエージェントが原因を調べ、直せる範囲を直します。AIがどこまで自分の判断で動いてよいかは、事前に決めた短いルールで線を引いています。
はい。私たち自身が少人数の会社です。大きな投資をしなくても、まずは1つの仕事について「本当に動いたか」を確かめる工程を足すだけで始められます。全部をそろえる必要はありません。うまくいった範囲だけを少しずつ広げています。