AI機能を本番へ出す直前、リリースの操作の手前で手を止めて考えている開発者

AI機能を本番に出すのが怖い|機能フラグと段階リリースの型

検証環境では、いい感じに動いていた。デモも通った。あとは本番に出すだけ——のはずなのに、当日になって手が止まる。

「これ、全員に出して大丈夫だろうか」

その迷いは、実力不足のサインではありません。AI機能は、バグがあるから怖いのではなく、正解が一本に決まっていないから怖いんです。テストが全部通っていても、明日おかしな返事を返さない保証は、誰にも出せません。ここで一拍置けているのは、むしろまっとうな感覚です。

とはいえ、怖いから出さない、を続けるわけにもいきません。上からは「AIを活用しろ」と言われている。

この記事では、出す判断そのものを軽くするやり方を整理します。「完璧になったら出す」ではなく、「いつでも戻せるから出せる」に切り替える段取りの話です。

結論:AI機能を本番へ出すときは、順番が3つです。①分ける——AI機能を既存の処理から切り離し、スイッチ1つで消せる形にする。そのとき、AIなしでも仕事が回る従来の道を必ず残す。②細く出す——全員ではなく、自分 → チーム → 一部の利用者、と誰に出すかを絞って進める。③すぐ戻す——出す前に「どうなったら戻すか」を数字で決め、戻す手順と、戻していい人を先に決めておく。

覚え方は 分ける → 細く出す → すぐ戻す。順番が大事で、①を飛ばすと、戻したくなった日に「戻す先がない」状態になります。

全部を今日やる必要はありません。①の「スイッチ1つで消せるか」を確かめるだけでも、リリース当日の重さはかなり変わります。

何が起きているのか——AI機能は「壊れたから」ではなく「ゆらいだから」戻すことになる

大きな箱から小さな箱を取り分ける場面、並んだ大勢のうち先頭のひとりにだけ配る場面、壁のレバーを倒して切る場面を並べた図
AI機能は「分ける・細く出す・すぐ戻す」の順で出す。①を飛ばすと、戻したい日に戻す先がなくなる

普通の機能とAI機能で、いちばん違うのは「戻す理由」です。ここが分かると、準備すべきものがはっきりします。

1つ目は、落ちないのに、じわじわ外れること。普通の不具合ならエラーが出て、監視が鳴って、気づけます。AI機能は違います。エラーは1件も出ていないのに、返している内容が少しずつ外している。数字の上では正常なので、誰かが「これ、なんか違うんですけど」と言ってくれるまで分かりません。

2つ目は、自分が何も変えていなくても挙動が変わること。モデルの提供側は改良を続けていて、こちらのコードを1行も触っていない日に、返り方の傾向が変わることがあります。「直近のデプロイを戻せば元に戻る」という前提が、AI機能では成り立たない場面があるわけです(AIの回答が日によって変わる|再現性のなさと付き合う型)。

3つ目は、コストが利用量に比例して伸びること。普通の機能なら、使われるほど嬉しい。AI機能は、使われるほどお金がかかります。想定の何倍か使われた月末に気づく、というのがいちばん痛い形です(AI APIの料金とレート制限を見積もる|本番前の型)。

4つ目は、「一部の人にとってだけ外れる」ことがあること。全体の精度は悪くないのに、特定の部署の書き方、特定の商材、特定の言い回しでだけうまくいかない。全員に一度に出すと、この偏りが見えないまま広がります。

5つ目は、印象が先に固まってしまうこと。ここがいちばん厄介かもしれません。最初に触った人がおかしな出力を1回引くと、「AIは使えない」という結論だけが社内に残ります。あとから精度を上げても、その評判はなかなか動きません。技術の問題というより、出し方の問題です(「AIならできる」の期待値を現実に着地させる説明術)。

裏を返すと、AI機能はいつでも消せる形にしておけば、それだけで怖さの大半が落ちます。「完璧にしてから出す」を目指すと永遠に出せませんが、「おかしかったら30秒で消せる」なら、今日出せます。機能フラグ——コードを変えずに機能のオン・オフを切り替える仕組み——は、そのための道具です。難しい製品を入れなくても、設定値ひとつから始められます。

具体例——つい、やってしまいがちな出し方

責める話ではありません。どれも「早く形にしたい」から出てくる自然な動きです。心当たりのある行があれば、そこだけ見直せば十分です。

影響——「戻せない」と、止めるか耐えるかの二択になる

段取りを飛ばして困るのは、作業量が増えるからではありません。選択肢がなくなるからです。

少しだけ希望のある話をすると、ここは高度な設計力ではなく段取りで防げる領域です。専用のサービスを導入しなくても、設定値ひとつでオン・オフできる分岐を1か所作るだけで、最悪の形はかなり避けられます。今日から変えられる部分です。

明日からやること(分ける・細く出す・すぐ戻す)

上から順に、小さく始められます。今日は①だけで構いません。

1. 分ける——スイッチ1つで消せる形にする

飛ばされやすいのに、いちばん効く工程です。ここができていれば、②と③はあとから足せます。

「大きく作り込む前に、切れる形かどうかを先に確かめる」。この順番だけでも、あとがずいぶん違います(業務フローにAIを差し込む|「小さく試す」試験導入の設計)。

2. 細く出す——誰に出すかを、段で区切る

一気に広げず、段を作ります。それぞれの段で「何を見るか」を1つだけ決めるのがコツです。

なお、段を上げる判断は日付では決めないほうがいいです。「来週には全体へ」ではなく、「②で1週間、直しが入った割合が○割を下回ったら③へ」。条件で決めると、迷いが減ります。

3. すぐ戻す——戻す条件と手順を、出す前に書く

事故は起きうる前提で、起きたときに小さく収める準備をします。10分でできて、効果が長く続く工程です。

戻す条件を洗い出すとき、AI自身に手伝ってもらうこともできます。答えを鵜呑みにせず、抜けを探すための叩き台として使うのがちょうどいい距離感です。

これから、既存システムにAI機能を追加して本番リリースしようとしています。段階的に出して、必要なら切り戻せるようにしたいので、手伝ってください。

①この機能をフラグで切ったとき、業務が止まってしまう箇所を挙げてください。
②切り戻しても元に戻らないもの(書き込み済みデータ、送信済みの通知、外部への連携など)を挙げてください。
誰に、どの順番で出すかの段階案を、各段で確認すべきことを1つずつ添えて出してください。
「こうなったら戻す」の条件案を、測れる形(割合・件数・金額・時間)で挙げてください。
⑤フラグをオンにする前に、仕込んでおくべき記録・計測を挙げてください。

なお、確実でない部分は「不明」と書いてください。埋めなくて構いません。

機能の内容:( ) 利用者:( ) 既存の業務フロー:( )

②を必ず聞くのがコツです。「戻せないもの」が先に見えると、どこを分けるべきかが具体的になります

AI機能の段階リリース チェックリスト(コピーして使えます)

上から順に見ていくためのリストです。全部に○が要るわけではありません。気になった行だけで十分です。

① 分ける(作り込む前)

② 細く出す(出すとき)

③ すぐ戻す(出す前に決めておく)

この記事のまとめ

AI機能を本番に出す話は、「精度が十分かどうか」の話ではありません。おかしかったときに、どれだけ小さく収められるかという、段取りの話です。

やることは3つ。①分ける——AIを呼ぶ場所をまとめ、再デプロイなしで切れる形にする。AIなしで回る道は消さない。書き込みは別に分ける。②細く出す——自分 → チーム → 一部 → 全体と段を区切り、各段で見るものを1つ決める。上限と記録を先に仕込む。③すぐ戻す——戻す条件を数字で決め、手順と、戻していい人を先に決めておく。

この3つがあると、リリース当日にやることは「フラグを1つオンにする」だけになります。そこまで用意できていれば、もっと気楽に、もっと早く試せるようになります

AI機能を無事に出し終えて、落ち着いた表情で画面から顔を上げている開発者

新しい機能を本番に出す日は、何度やっても少し緊張します。まして相手が、何を返すか完全には読めないAIなら、なおさらです。

でも、怖さの正体は「壊すかもしれない」ではなく「戻せないかもしれない」のほうだった、ということが結構あります。戻す道さえ用意しておけば、出す判断はぐっと軽くなります。

今日、リリースの手前で一度止まって、「これ、切れるかな」と考えられたなら、それはもう十分な仕事です。全部を今週やらなくて大丈夫です。まずは分岐を1か所にまとめて、設定ひとつで切れるようにする。その1回で十分です。

よければ、こちらも

関連用語