AIエージェント並列化の落とし穴
ようこそ。今回の深掘りでは、あるITエンジニアが現場でアクセントをして書いた、AIエージェントの仕事の並列化についてのノートを読み解いていきますよ。
私たちのミッションは、ここからAIをチームとして機能させる本当の仕組みを抽出することです。 はい、よろしくお願いします。
あの、複数のAIに仕事を丸投げして、自分はコーヒー飲んでる間に全部終わるっていう、あれ、みんな夢見るじゃないですか。
ええ、まあ、理想ですよね。でも実はそれ、とてつもなく大きな罠なんですよ。 罠ですか?
はい。境界を決めずに、複数のAIを一斉に走らせると、お互いのファイルを上書きしあって大混乱を招くんです。
うわあ、それは悲惨ですね。
速度を上げるための並列化が、逆に手戻りを増やして、結局は人間が徹夜でぐちゃぐちゃな差分を修正する羽目になるっていう、現場で非常に多く見られる失敗ですね。
これってつまり、一つの鍋を複数のシェフで同時にかき混ぜようとするから失敗するってことですよね?
まさにその通りです。
読み取り専用タスクから始める
一人が塩を入れた直後に、別のシェフがまた塩を入れるみたいな。でもあの、図書館で別々の本を読んで要約させるような調査の仕事なら、ぶつからずに機能するんじゃないですか?
ええ、その図書館での調査から始めるのが並列化の鉄則ですね。
オープンAIのコーデックスとか、アンソロピックのクロードコードの公式ドキュメントでも警告されてるんですが。
同じファイルの同時編集は、とにかく競合リスクが高いんです。
だからこそ、不具合の原因調査とか、テスト網羅性の確認みたいな既存データに影響を与えない、読み取り専用のタスクから切り分けるべきなんですよ。
なるほど。互いに独立して証拠を集めるだけなら、足を踏み合うことはないわけですね?
そういうことです。
隔離環境とタスク進捗の管理
読み取り専用なら安全なのはわかります。でも、どうしても複数のAIにコードを書かせたい、つまり料理を作らせたいときはどうするんですか?
えっと、そういう場合ですね。
なんか、お互いに干渉しないように、完全に隔離された専用の作業部屋を個別に与えちゃうアプローチはどうでしょう?
それはすごく有効な手段です。開発現場ではGitWorks3などの仕組みが使われますが、Googleのアンティグラビティとかヘルメスエージェントもこの手法ですね。
物理的にブランチを分けることで競合を防ぐわけですね?
AIごとにパラレルワールドを用意してあげるようなものです。自分のスナバでどれだけコードを書き換えても、大元の設計図には影響が出ませんから。
それぞれに自分だけのスナバを与えるんですね。ただ、部屋を完全に隔離しちゃうと、今度は全体の進行が見えなくなりませんか?
そう、そこが次の壁なんです。隔離するだけじゃ不十分でして。
誰が何を終わらせたかわからないと、プロジェクトとして破綻しそうですし。
ですから、ジェンスパークのジェンティームのように、人間がタスクの担当協会を厳密に定義しないといけないんです。
さらに、マヌスみたいにタスクIDを振って、状態を正確に追跡する仕組みも必要になります。
状態の追跡ですか?
はい。特に厄介なのが、ウェイティング、つまり人間の入力や承認を待っている状態の管理なんですよ。
ああ、AIが隔離された部屋の中で、次どうしますかって延々としじまちになっちゃう状態ですね。
そうなんですよ。タスクIDで進捗を監視するシステムがないと、AIがフリーズしていることに人間が気づけなくて、結果的にプロジェクト全体が止まってしまいます。
成果物の統合と人間の責任
なるほど。でも、部屋を分けてタスクIDで進捗を管理しても、結局最後に別々の部屋から持ち寄ったパズルのピースを合わせる工程は必要になりますよね。
おっしゃる通りです。
全部が自動化されて、人間が完全に休めるわけではないと。
オープンクローの事例が示しているように、独立したセッションでどれほど効率よく作業させても、複数のAIから帰ってくるのはあくまで一時報告にすぎません。
あくまで素材なんですね。
はい。複数AIの成果物を精査して、矛盾がないかテストして統合する責任は、最終的に親エージェントや人間、つまりあなたに残るんです。
じゃあ着手する前に、誰が何をどう納品するかを、作業カードみたいな形でしっかり定義しておくことが不可欠なんですね。
その通りです。事前の緻密な設計と最後の統合、この2つこそが並列化を成功させる要になります。
小さな実験と人間の役割変化
今日の深掘りを踏まえて、聞いているあなたも今の業務の中で小さな実験から始めてみてください。
例えば、使用書の根拠調査みたいな読み取り専用の作業を2つのAIに分けて実行させてみるとか。
いいですね。そしてその結果をあなたが実際に統合してみる。
これだけでも、AI同士の衝突を防ぐ境界線の引き方の感覚がつかめるはずです。
ええ、実践こそが最大の学びになりますから。
しかし、AIが自律的に連携するようになればなるほど、私たち人間の仕事って、作業をすることそのものから、
AI間の境界線の設計師とか、成果物の最終裁判官へと完全に変質しちゃうんじゃないでしょうか。
間違いなくその方向に向かっていますね。
この劇的な役割の変化にあなたはどうやって適応していきますか。ぜひ考えてみてください。