エージェントの混合(MoA):集団的知性はいかにLLMのパフォーマンスを高めるか

大規模言語モデル](https://zilliz.com/glossary/large-language-models-(llms))(LLM)の急速な進歩は、諸刃の剣のようなものだ。一方では、数多くの最先端のLLMを持つことで、ユースケースを解決するための多くの選択肢が得られる。一方では、この豊富な選択肢に圧倒されることもある。
さらに、これらのLLMはさまざまな組織や企業が開発しているため、異なるデータセットで訓練され、さまざまな専門性を持つLLMが生まれる。数学的な問題を解くのが得意なLLMもいれば、コーディング作業に適したLLMもいる。このような多様性により、特にマルチドメインのユースケースを扱う場合、ニーズに最も適したLLMを選択することが難しくなる。
この記事では、この課題を解決するための1つの方法、Mixture-of-Agents(MoA)アプローチを探ります。これは、異なる専門性を持つ複数のLLMを1つのシステムに統合するものです。それでは早速、MoAの背景にある動機について説明しよう。
ミクスチャー・オブ・エージェント(MoA)の動機
LLMの急速な進歩は、我々のユースケースに最適なモデルを選択する際、多くの選択肢を我々に与えてくれた。しかし、LLMには依然として、フリーランチの定理が適用される-単一のモデルがすべてのタスクで同じようにうまく機能することはない。LLMによって得意とするタスクが異なるのは、学習データが異なるからです。したがって、解決しようとしている特定の問題に最も適したLLMを選択することが重要です。
複数のLLMの専門知識を必要とするマルチドメインのユースケースを扱う場合、課題が生じる。これは重要な問題を提起する:複数のLLMを集合的に使用することで、それぞれの強みを生かし、より有能で堅牢なシステムを構築することができるだろうか? この疑問に答えようとするのが、Mixture-of-Agents(MoA)手法である。
MoAとは?
要するに、MoA(Mixture-of-Agents)は、複数の特化したLLM、つまり「エージェント」が、それぞれのユニークな強みを活かしてタスクを解決するために協働するフレームワークです。
MoAのコンセプトは簡単で、異なる強みと能力を持つ複数のLLMを1つのシステムに統合する。ユーザーがクエリーを送信すると、システム内の各LLMがレスポンスを生成する。そして、最後に指定されたLLMが、以下のビジュアライゼーションに示されているように、これらすべての応答を合成し、ユーザーに対して1つの首尾一貫した回答を返す:
図:混合エージェントの概念](https://assets.zilliz.com/Figure_Mixture_of_Agents_concept_15626b1204.png)
図:混合エージェントの概念
MoAのコンセプトはシンプルだが、驚くほど効果的だ。MoA論文](https://arxiv.org/abs/2406.04692)の著者は、LLMが他のLLMからの応答を提示されたときに、より質の高い出力を生成する傾向があることを発見した。
この現象は、Qwen、Wizard、Mixtral、Llama 3、およびdbrxを含む6つの異なるLLMを使ったAlpacaEval 2.0データセットのベンチマークテストによって実証された。著者らは、直接入力プロンプトを使用する場合と、他のモデルからの応答を使用する場合の2つの条件で、LLMの応答品質を比較した。この評価指標は、評価結果に大きな影響を与える可能性のある応答の長さなどの要因から独立して出力品質を評価するものである。
図:AlpacaEval 2.0のLC勝率は、2つの異なる入力(ユーザープロンプトからの直接入力と他のモデルの出力)からの各LLMの比較](https://assets.zilliz.com/Figure_Alpaca_Eval_2_0_LC_win_rates_0eb5737592.png)
図:AlpacaEval2.0の2つの異なる入力からの各LLMのLC勝率比較:ユーザープロンプトから直接と他のモデルの出力から_ ソース..
結果は6つのLLMすべてで一貫しており、入力プロンプトを直接処理した場合と比較して、他のLLMからの出力を使用した場合に、より良いLC勝率スコアを達成した。これらの知見に基づき、著者らはMoAコンセプトを開発した。
ミクスチャー・オブ・エージェント(MoA)の基本
MoAは複数のLLMを1つのシステムに統合し、応答生成の質を反復的に向上させる。
システムは複数のレイヤーから構成され、各レイヤーにはサイズと能力の異なる複数のLLMが含まれる。第1層のLLMは、入力プロンプトに対する応答を独立に生成する。これらの応答は入力として第2層のLLMに提示され、LLMはそれぞれ独立した応答を生成する。このサイクルは最終層に到達するまで続く。最後に、1つのLLMが最後の層からの応答を合成し、ユーザーに対する最終的な応答を生成する。
図:混合エージェント構造の図解](https://assets.zilliz.com/Figure_Illustration_of_the_Mixture_of_Agents_Structure_174b536ce5.png)
図:エージェント混合構造の図解._ ソース..
この概念に基づいて、MoAで使用されるLLMは2つのカテゴリーに分類することができます:**プロポーザーとアグリゲーターである。
提案者は、MoAシステムの各レイヤー内で応答を生成し、最終的な応答の品質に貢献する。
アグリゲーターは、最後のレイヤーにあるLLMからすべてのレスポンスを収集し、それらを合成して、ユーザーのための1つの高品質なレスポンスにする。
様々なLLMの能力と専門性が異なることを考慮すると、どのモデルをプロポーザとアグリゲータとして使用するかを選択する際に注意を払う必要がある。あるLLMはプロポーザとして優れているが、他のLLMはアグリゲータとしてより良いパフォーマンスを発揮し、またあるLLMは両方の役割を効果的に果たすことができる。詳細な結果については次のセクションで述べる。
MoAは多くのレイヤーで構成できるので、同じLLMは同じレイヤー内でも、異なるレイヤー間でもプロポーザとして再利用できる。例えば、5つのレイヤーを持つMoAシステムを構築し、それぞれが5つのLLMを含み、Llama3 70Bモデルを単一プロポーザとしてすべてのレイヤーで使用することができる。
最後のレイヤーの提案者が応答を生成すると、すべての出力は、アグリゲータが最終応答を生成するための、単一の首尾一貫したプロンプトに構造化される。
以下はそのようなプロンプトの例である:
図:複数のLLMからの回答を合成して集約するプロンプトの例](https://assets.zilliz.com/Figure_Prompt_example_to_synthesize_and_aggregate_responses_from_several_LL_Ms_904a9e7c9a.png)
図:複数のLLMからの応答を合成して集約するためのプロンプト例_ ソース..
このコンセプトは、従来のニューラルネットワークで使われているMoE(Mixture-of-Experts)アプローチに似ていますが、重要な違いがあります。従来のニューラルネットワークでは、MoEレイヤーは1つのモデルのアーキテクチャの中で、いくつかのサブネットワークとして実装されている。そのため、学習データから大きく乖離した新しいデータが得られたら、パフォーマンスを最適化するために、各MoE層の重みを微調整する必要がある。
一方、MoAは完全にプロンプトに依存している。したがって、システム全体のパフォーマンスを向上させるためにLLMを微調整する必要はない。LLMのサイズやアーキテクチャに関係なく、異なるLLMをプロポーザやアグリゲータとして自由に選択することができるため、これはより大きな柔軟性を提供する。これはまた、将来新しい最先端モデルが登場した場合、このモデルをプロポーザまたはアグリゲータとしてMoAシステムに直接実装できることを意味する。
MoAはまた、競争力のある性能を提供し、以下のような多様なLLM能力を活用するように設計された他のマルチエージェント手法の効果的な代替手段として機能する:
LLMランカー**:この方法は、複数のLLMを提案者として使用し、入力クエリに対する応答を独立に生成する。その後、スタンドアロンのLLMがこれらの提案者の中から最適な応答を選択する。
RouteLLM:この方法は、クエリの複雑さを分析し、どのLLMが入力を処理すべきかを決定するために、訓練されたルーター関数を使用する。
ベンチマークデータセットでの評価結果
MoAは3つのベンチマークデータセットで評価された:AlpacaEval2.0、MT-Bench、FLASKである。
3つの異なるMoAがテストされた:
MoA:MoA:レイヤーごとに6つのプロポーザ(Qwen1.5-110B-Chat、Qwen1.5-72B-Chat、WizardLM-8x22B、LLaMA-3-70B-Instruct、Mixtral-8x22B-v0.1、dbrx-instruct)を持つ3レイヤーシステムで、アグリゲータとしてQwen1.5-110B-Chatを使用。
GPT-4oによるMoA:上記と同じセットアップだが、アグリゲーターとしてGPT-4oを使用。
MoA-lite:標準的なMoAと同じ6つの提案者とアグリゲータを使用する2層システム。
図:2レイヤーMoA(左)と3レイヤーMoA(右)の比較](https://assets.zilliz.com/Figure_2_layers_Mo_A_left_vs_3_layers_Mo_A_right_69dc903072.png)
図:2層MoA(左)対3層MoA(右)_ ソース..
AlpacaEval 2.0データセットにおいて、3つのMoAバリエーションはすべて、最先端モデルであるGPT-4 Omniを最大8.2%上回った。GPT-4oをアグリゲーターとするMoAセットアップは、各バリアントの中で最も高いLC勝率を達成した。
また、MT-Benchデータセットでは、3つのMoAバリエーションすべてが競争力のある性能を示した。現在の最先端モデルであるGPT-4ターボは非常に優れた性能を示したが、GPT-4oをアグリゲーターとするMoAはそれを上回った。MoAバリアントと他の最先端モデルとの性能比較を以下に示す:
図:AlpacaEval 2.0(左)とMT-Bench(右)での結果](https://assets.zilliz.com/Figure_Results_on_Alpaca_Eval_2_0_left_and_MT_Bench_right_ffd72a4bb5.png)
図:AlpacaEval 2.0(左)とMT-Bench(右)での結果_ ソース..
FLASKデータセットは、AlpacaEval 2.0およびMT-Benchよりも詳細な評価を提供し、堅牢性、正しさ、効率性、事実性、常識性、理解力、洞察力、完全性、メタ認知、読みやすさ、簡潔性、および無害性の12の側面を評価する。
Qwen1.5-110B-ChatをアグリゲータとするMoAセットアップは、GPT-4 Omniを5つの側面(正しさ、事実性、洞察力、完全性、メタ認知)で上回った。一方、簡潔性を除けば、他のメトリクスの性能はGPT-4 Omniとほぼ同等であった。MoAセットアップでは、以下に示すように簡潔性が顕著に低下した:
図:FLASKの結果](https://assets.zilliz.com/Figure_Results_on_FLASK_cc1c9f5443.png)
図:FLASKでの結果]()FLASKでの結果_ ソース..
GPT-4ファミリーのような最先端のモデルに対する性能がわかったので、他の関連する混合エージェント法に対する性能も見てみたい。
前のセクションで述べたように、他のmixture-of-agentに似た手法の例として、LLM rankerがある。これは複数のLLM(提案者)を使って、入力プロンプトに対する独立した応答を生成する。アグリゲータを使う代わりに、LLMランカーは提案者の中から最良の応答を選択する。
評価のために、MoAとLLMランカーは同じ6つの提案者を使用した:Qwen1.5-110B-Chat、Qwen1.5-72B-Chat、WizardLM-8x22B、LLaMA-3-70B-Instruct、Mixtral-8x22B-v0.1、dbrx-instructである。各提案者はMoAのアグリゲーターとしてテストされ、LLMランカーはQwen1.5-110B-Chatのみを使用して最良の応答を選択した。
AlpacaEval 2.0データセットでの評価では、MoAは使用するアグリゲータに関係なく、一貫してLLMランカーを上回った。これはMoA手法の可能性を示すもので、最終的にアグリゲータは提案者の回答の中から単に1つを選ぶのではなく、むしろすべての提案者の回答に対する集約を生成し、より有能で頑健な最終回答を作成する。
図:AlpacaEval2.0における、6人の提案者を持つMoAセットアップでアグリゲータを変えた場合のLC勝率](https://assets.zilliz.com/Figure_LC_win_rate_on_Alpaca_Eval_2_0_with_different_aggregators_in_an_Mo_A_setup_with_6_proposers_d64a46e744.png)
図:AlpacaEval2.0でのLC勝率、6人の提案者によるMoAセットアップでの異なるアグリゲータを使用した場合。
エージェントの混合(MoA)セットアップの推奨事項
プロポーザーの数がMoAの全体的なパフォーマンスにどのように影響するか?プロポーザーの数はMoAの全体的な性能にどのような影響を与えるのか?
提案者数の影響を決定するために、MoAの論文の著者はAlpacaEval 2.0で提案者数を変えてMoAを評価しました。彼らは 6 人、3 人、2 人、1 人の異なる提案者を用いた 2 層 MoA 構成の LC 勝率を測定した。結果は、より多くの提案者がアグリゲータがよりロバストな応答を生成するのに役立つことを示している。
さらに、シングル・プロポーザ(プロポーザと同じLLM)を使用したMoAセットアップは、マルチ・プロポーザ・コンフィギュレーションよりも成績が悪かった。このことは、MoAが1人の同じLLMを使うよりも、異なる専門性を持つ多様なLLMの集合を持つ方が有益であることを示唆している。
図:AlpacaEval 2.0における提案者数の効果](https://assets.zilliz.com/Figure_Effects_of_the_number_of_proposers_on_Alpaca_Eval_2_0_6ee75da4a9.png)
図:AlpacaEval2.0における提案者数の効果_ ソース..
マルチ・プロポーザ・セットアップの利点を考えると、どのLLMがこれらの構成で最もうまく機能するかを理解することも重要である。AlpacaEval 2.0で6つの異なるLLMをテストした結果、GPT-4o、Qwen、Llama 3のようなモデルは、プロポーザとアグリゲータの両方の役割を果たすのに十分な汎用性があることがわかった。しかし、WizardLMのようなモデルは、アグリゲータよりもプロポーザとして顕著に優れた性能を発揮する。
プロポーザとアグリゲータとして使用されるLLMの違いによる影響](https://assets.zilliz.com/Impact_of_different_LL_Ms_used_as_proposers_vs_aggregators_30e7c558ba.png)
提案者とアグリゲータとして使用される異なるLLMの影響_ ソース..
コストに関しては、MoAは複数のLLMに依存しているため、GPT-4oやGPT-4ターボのような最先端のモデルと比較した場合、そのコスト対性能比は特に興味深いものとなります。実験によると、MoA-LiteはAlpacaEval 2.0でGPT-4 Turboを約4%上回る性能を発揮する一方、コストを半分以上削減できる。ここでのMoA-Liteのコストは、TogetherAIから入手可能な価格情報に基づいて計算されている。しかし、パフォーマンスを最大化するためにより多くの費用をかけることに問題がないのであれば、3層構造のMoAがより良い選択となるだろう。
図:性能トレードオフ対コスト(左)と性能トレードオフ対TFLOPS(右)](https://assets.zilliz.com/Figure_Performance_trade_off_vs_cost_left_and_performance_trade_off_vs_TFLOPS_right_aa60b96426.png)
図:性能トレードオフ対コスト(左)と性能トレードオフ対TFLOPS(右)_ ソース..
レイテンシの評価にはTFLOPSを用いた。TFLOPS とは、1 秒間に 1 兆回の浮動小数点演算を実行するシステムの能力を指します。TFLOPSはレイテンシと正確には比較できないが、レイテンシは推論システムによって異なる可能性があるため、著者はTFLOPSをレイテンシの代理として使用した。実験の結果、3層のMoAセットアップでは、上の可視化のパレート破線で示されるように、LCの勝率が最大になるようにTFLOPSが最適化されることが示された。
しかし、GPT-4ファミリーはMoAセットアップと比較して高いTFLOPSを示しました。MoAは最終出力を生成する前に複数のLLM応答を処理する必要があるため、これは予想されることです。これは、MoAの主な制限につながります:これは、ユーザー・エクスペリエンスに悪影響を及ぼす可能性がある。将来的には、レスポンス全体の集約ではなく、チャンク単位のレスポンス集約を実装することで、パフォーマンスを維持しながらTTFTを削減できる可能性がある。
結論
MoA(Mixture-of-Agents)**法は、最新のLLMの多様性と専門性を活用する有望なソリューションを提供する。提案者とアグリゲーターのシステムを通じて様々な強みを持つ複数のLLMを活用することで、MoAはより有能で強固な最終回答を生み出す。その柔軟性と、fine-tuningではなくprompt engineeringに依存することで、特にマルチドメインのユースケースにおいて、費用対効果が高く適応性の高いアプローチとなっている。
AlpacaEval 2.0やMT-Benchのようなデータセットでのベンチマーク評価では、MoAはGPT-4ファミリーのような最先端のモデルよりも優れた性能を示している。パフォーマンスをさらに最適化するには、シングル・プロポーザのセットアップの代わりにマルチ・プロポーザを使用することが推奨される。しかし、MoAに制限がないわけではない。複数のLLMに依存することで、遅延が増加し、Time to First Token(TTFT)が高くなるため、ユーザー・エクスペリエンスに影響を与える。そのため、効率を最適化するには、チャンク単位の応答集約など、さらなる改良が必要である。
関連リソース
MoA GitHub Repo:https://github.com/togethercomputer/MoA
MoAの論文:Mixture-of-Agent Enhances Large Language Model Capabilities
RAGとは](https://zilliz.com/learn/Retrieval-Augmented-Generation)
ベクトル・データベースとは何か、どのように機能するのか](https://zilliz.com/learn/what-is-vector-database)
ジェネレーティブAIリソースハブ|Zilliz](https://zilliz.com/learn/generative-ai)
RouteLLM: LLM導入におけるコストと品質のバランス ](https://zilliz.com/learn/routellm-open-source-framework-for-navigate-cost-quality-trade-offs-in-llm-deployment)
LoRA (Low-Rank Adaptation)による効率的なLLM微調整 ](https://zilliz.com/learn/lora-explained-low-rank-adaptation-for-fine-tuning-llms)
vLLMとMilvusによるマルチモーダルRAGシステムの展開](https://zilliz.com/blog/deploy-multimodal-rag-using-vllm-and-milvus)
特定領域におけるLLMの安全性とアライメントの評価 ](https://zilliz.com/blog/evaluating-safety-and-alignment-of-llm-in-specific-domains)
読み続けて

Similarity Metrics for Vector Search
Exploring five similarity metrics for vector search: L2 or Euclidean distance, cosine distance, inner product, and hamming distance.

Knowledge Injection in LLMs: Fine-Tuning and RAG
Explore knowledge injection techniques like fine-tuning and RAG. Compare their effectiveness in improving accuracy, knowledge retention, and task performance.

Matryoshka Representation Learning Explained: The Method Behind OpenAI’s Efficient Text Embeddings
Matryoshka Representation Learning (MRL) is a method for generating hierarchical, nested embeddings that capture information at multiple levels of abstraction.