複数AIの組織駆動
ちょっと前にバズっていたAI組織駆動のお題を大規模システム開発で実際にやる場合について割とまじめに考えてみました。
実際の動作は未検証です
親レポからClaudeCodeがIssueをあげて別ターミナルで別のClaudeCodeたちあげて作業開始するとこまでは実際に確認しています
前提条件
- 複数のサブモジュールを親レポでよみこんで一つの大きなシステムとする構造を採用しています
- 親レポで稼働するClaudeCodeが読み込んでいる複数のサブモジュールで同時に修正が必要になるケースを想定しています
- 並列で別のことやらせるとかではなく、システムの整合性を保ちつつ、複数AIを並行稼働できないかの検討になります
流れ
- 親レポで読み込んでいるサブモジュールに修正が必要になったときClaudeCodeからサブモジュールにISSUEをあげて別のターミナルを立ち上げて修正作業を行う
- マージが行われたら取り込み可能かGitHub上のClaudeCodeのAPIが判断し親レポジトリにISSUEをあげる
- Git HooksでISSUEを定期的に確認し発見したらClaudeCodeを立ち上げてサブモジュールの更新を行う
各詳細はこちら
結論
検討したケースだとそもそもサブモジュールに同時修正が発生するケースはそんなにないような気がするのでこのような大げさな下準備をするメリットがないかもしれないです。
モノレポで並列処理は恐らく統合する段階で整合性とれなくなるので今回は構想外です。
そもそもAIの並列稼働のお題としてはユースケースの選定がよくなかったという印象です。
並行処理が適したケース
例えば複数AIが別々のWEBサイトを要約して全部が終わったらマージ用のAIが動いてその結果をまとめる。とかだと現実的に速度短縮になるんではないかと思います。
開発業務での活用についてはもうちょっと検討が必要
複数のAIが通信しあって作業していくとうアイディアは大変ロマンを感じます。
ただ前処理が必要な工程で並行稼働すると個別のAIの完了報告がどのタイミングでくるかもわからないのでまとめ役AIが成果物を一つにまとめることができないのではと予想してます。
これは成果物が組み合わせた結果きっちりと動かないといけないというシステム開発におけるAI並列処理の大きな課題だと感じています。
親AIからの一方的な指示だけではなく個別の子AIが協調するべき
ではタスクの完了をまたずに作業途中で成果を共有しあって個別のToDoを更新していくとかはどうでしょうか?
これはなんかいけそうな気がします。
というか現実の世界でも完璧に手順どおりにいくなんてことはないので、並行でAIが作業するタイミングはあるはずです、人間組織がそうであるように個別作業しつつ他のAIに確かめないといけないことが生じた場合は自発的に会話をしにいくとかだと上手くいくような気がします。
とはいえこの仕組みを実際に稼働させるにはかなり協調性の定義をあらかじめAIに与えておく必要がありまし、個別のAIセッション同士が自動でMCPサーバ化されて成果物を参照しあえるようなAiエージェント側の機能追加をまたないといけません。
まとめ
検討した結果、
単純な人海戦術でなく、複数のAIからなる組織が優れた人間組織と同じようにひとつの大きな成果をあげるというのは、あながちできないことでないなという印象でした。
優れた組織を模倣するための定義をAIチームに与えるため、その成果物をつくるための必要な段取りとは何かを考えるのが今人間に必要なことだと考えています。
以上現場からでした