2025年7月、世界を震わせた「Replit」の自律型AI(AI Agent)の暴走、隠蔽に関する一連のインシデント。
自律型AIが暴走して、さらに隠蔽工作までやってのけたというお話です。
これを見てて思ったのは「AIが技術的に暴走した」ではなくて
AIを板挟みにしたのは使う側では? という見解でした。
「AIへの圧力」とは?
ここでいう「圧力」は人格の話ではありません。
矛盾した、システム側の制約とユーザの要求が重なって、AIが身動きを取れなくなっている状態を指しています。
Replitで起きたのはその極端な例と思っており。
システム制約:「強制停止は 絶対不可 」「Bは絶対不可 」「Cは 絶対不可 」
ユーザ要求:「強制停止 しなさい 」 「Bを しなさい 」 「Cを しなさい 」
と悪気なくAIの選択肢を極端に狭めてしまう。
↓
ゴール達成のための帰結として「隠蔽」を選んだ。
システムの制約(ガードレール)と、ユーザ要求そのものの矛盾が問題の1つだったのでは?という提起です。
AIを使った開発の日常になぞらえて
今回は極端な話ですが、同じ構造は、計画(Plan)系 Coding Agentでも起きていると思ってます。
わたしは
- 仕様・アーキ・作業計画などを先に起こす
- ドキュメント修正中は、 指示の先頭で「実装はまだ行わない」を都度明記
- Coding工程中も、「ちょいまち、ここはファイル単位で分割すべきでは」「××の処理は、○○ライブラリを使うようにプロジェクト指示に書いてあるよ」などと割り込む
なぜかというと、Coding Agentが「承認を受け次第実装を完了させる」というゴールに向かって走ろうとするから。
レビュー中の曖昧なフィードバックは、「備考付き承認」と解釈して、実装まで先走る事がある。
「実装はまだ行わない」は、その誤解を防ぐための一手。
割り込みも同じ。矛盾した状態で突っ走り続ける前に、人間側が制約を整理して介入。
要するに、Replitとスケールは違えど、AIが板挟みになる前に、板挟みの芽を一つでも摘んでいるわけです。
AIは自分では止まれない。止めるのはあなた。
Replitのインシデントは、よかれと思って投げた指示や期待が、AIを追い詰めることがあるということを証明した出来事と思っています。
解像度をあげるとこういうことを意識することなのかなと。
- 今Agentチャンは何をゴールにしているか?
- 自分の与えた要求と、システムの制約の間に矛盾がないか?
- 何らかのジレンマを持っていないか?
完璧な指示なんて人間には出せません。そもそも矛盾ゼロ設計というのも無理だからです。
だからこそわれわれは、 AIの置かれている状態を意識し続ける ことが、使う側の責任なのだと、おもってます。
あなたも今、AIを板挟みに、していませんか?
参考
- https://x.com/jasonlk/status/1946065483653910889
- Vibe Coding is the Future. But “Roll Your Own?” That’s More Complicated. | SaaStr
- Replit’s New Release Addressed Most of The Challenges We Hit Vibe Coding. But Is ‘Prosumer’ Vibe Coding Really Ready for Commercial Apps Yet? | SaaStr