歴史は繰り返す(かも?) LLMエージェントの未来
Table of Contents
またもエッセイ。通勤の電車で、ふと舞い降りたアイディア。
歴史は繰り返す(かも?) LLMエージェントの未来
ある日、CPU のムーアの法則について調べていた時、ふと LLM のスケーリング則と似ているなと思った。こういう「歴史の繰り返し」というのは、技術の世界でもよくある。
今回はそれ系の話。「CPUと並列処理の流れって、実はLLMエージェントにも言えるんじゃね?」という気づき。
最初に注意点!
LLMの性能って、どこを見るかで評価が変わってくる。回答が出てくる速度なのか、心理に寄りそう能力なのか。はたまた、コーディング能力なのか。
ここで議論したいのは、 LLMのエージェントとしての能力 である。今後、エージェントとしての活用が広がると思うので。だから、ここでの性能は、「速度 × できることの幅・種別」としている。
エージェントがどれだけ早く・タスクの潰しが効くか。この観点で読んでほしい。
(まぁ、何も検証できてないから、定性的な話ですけどね)
1. LLM のスケール則とムーアの法則
ムーアの法則は「18ヶ月ごとに集積回路上のトランジスタ数が2倍になる」という経験則だ。これに似た形で、LLM の世界にも「スケール則」が存在する。簡単に言えば「モデルパラメータが巨大化するほど性能が向上する」という法則。
GPT-3 から GPT-4、Claude から Claude 3 へと、どんどん大きくなるモデルサイズ。パラメータ数が10倍になれば、性能も劇的に向上する。まるで昔のCPUのトランジスタ数の増加と同じようなカーブだ!
だが、ここで重要なのは、スケール則には必ず「計算量的な死」が存在するということ。ムーアの法則も2010年代に入って頭打ちとなり、シングルコアの性能向上は鈍化した。
ムーアの法則と違って、LLMのパラメータは理論上いくらでも大きくできる。物理学的な限界とかはないからね。が、計算量が膨大化するため現実的な利用は難しくなる。学習には膨大な電力と時間がかかり、推論でも大きなGPUメモリが必要になる。このままでは、いつか「計算量の壁」に当たることは避けられない。
2. マルチ AI エージェント構成の未来
ではCPU業界はどう対応したか? シングルコアの限界を迎えると、マルチコア化へとシフトした。メニーコアやヘテロジニアスなアーキテクチャが主流となり、「並列性」に活路を見出した。
今の AI エージェントの構成を見てみよう:
エージェント・アーキテクチャ
┣━ 司令塔エージェント(オーケストレーター)
┗━ 複数のタスク特化エージェント
基本的には「司令塔エージェント(オーケストレーター)」と「タスク特化エージェント」の組み合わせだ。でも処理の流れはほとんど逐次的。司令塔が指示を出し、タスク特化エージェントが実行し、また司令塔に戻り...という具合だ。
MCP Clientなどの現代的なAIエージェントツールは、まだ「ムーアの法則的な成長フェーズ」にいる。ハードウェアも LLM も数年はともにスケールし続けるだろう。しかし、その先には必ず「限界」が訪れる。
そして、最大の問題点は何だろう? それは「司令塔エージェントがシングルスレッド&逐次処理のまま」だということ。人間同士のチーム作業と同じで、全員が常に司令塔から指示を待っているようでは効率が悪い。
CPUの世界では、マルチコア化と共に「タスクスケジューラ」の重要性が増した。同様に、LLM エージェントの世界でも、効率的な「タスクスケジューリング」の仕組みが必要になるのではないか。
人間のチームで例えるなら、「同期コミュニケーション(会議など)」を減らし、「非同期コミュニケーション(チャットやドキュメント共有)」を活用するような仕組みだ。つまり、AI同士にもSlack的な仕組みが必要になるわけだ。
3. Arrow Diagram と Todo リスト
具体的に、どのように非同期処理を実現すればいいのか? タスク管理の視点で考えてみよう。
今のエージェントシステムは基本的に「Todoリスト方式」だ。一次元的なリスト構造で、必然的に逐次処理になってしまう。「タスクA→タスクB→タスクC」という具合に、一つずつこなしていくイメージだ。
対して「Arrow Diagram(矢印図)方式」では、各タスクの依存関係がグラフ構造で表現される。例えば:
┌→ タスクB ┐
タスクA → タスクD
└→ タスクC ┘
このように表現すれば、タスクBとタスクCは依存関係がないため並列に実行できる。この方式なら、複数のAIエージェントが同時に動くことができるわけだ。
ただ、これを実現するには一つ大きな課題がある。それは「AIエージェント同士のコミュニケーション」だ。エージェント間でどのように情報をやり取りすればよいのか?
人間同士のチームで言えば、ドキュメント共有やチャットツールがこの役割を果たしている。AIエージェントの世界でも、共有メモリ空間や非同期メッセージングの仕組みが必要になるだろう。やはりSlack的な非同期コミュニケーションの仕組みが要るわけだ。
おわりに
CPU業界がシングルコアからマルチコア、そしてヘテロジニアスなアーキテクチャへと進化したように、AIエージェントも同様の進化を遂げるだろう。
大規模言語モデルのスケール則もいつかは頭打ちになる。そのとき、AIエージェントの未来は「非同期・並列処理」にある。複数のAIが非同期に協調して動くような、新しいパラダイムが生まれるはずだ。
とはいえ、まぁただの妄想かもしれん。が、我ながらわりといい筋いってる気がする。全然関係ないけど、「計算量的な死」は、「宇宙の熱的死」が元ネタ。
拙者、いい年こいて中二心があふれる瞬間があり、こういうネーミング好き。
補足
スケール則の計算量的な死について話した。何もこれは、私だけが気づいてる問題じゃない。だから、現在進行で色々な工夫が考えられている(らしい)。
- MoE
- LoRA
- より効率的な量子化
などなど。モデルをスリムにしながら、性能を引き出す研究は盛ん。単位計算資源あたりのモデル性能が上がれば――つまり、性能の密度が上がれば、モデルは大きくできる。
今のフェーズとしては、まだまだ「ムーアの法則」段階のはず。だから、うーん。この議論が深まるのは、もっと先の話やも。