近年、大規模言語モデル(LLM)は目覚ましい進化を遂げ、AIセマンティック検索や文書作成支援など、様々な分野でその応用範囲を急速に拡大しています。しかし、企業が保有する契約書や技術文書のような、非常に長い文書を扱う場合、従来のLLMや、検索によって外部知識と連携するRAG (Retrieval-Augmented Generation)では、計算コストや精度の面で課題がありました。特に、長い文書の途中の情報が抜け落ちてしまう「ミドル・ロス」問題は、正確な情報抽出や要約生成の妨げとなっていました。さらに、特定の専門分野に特化した高度な文書処理を実現するためには、複数のLLMを協調動作させるMoA(Mixture of Agents)などの技術が注目されていますが、MoAはエージェント間の連携に課題があり、長い文書を扱う場合には、一貫性を保った処理が困難でした。
これらの課題を解決する新たなフレームワークとして、2025年1月にGoogle Cloud AI Researchから「Chain-of-Agents(CoA)」が発表されました。CoAは、従来のRAGや長文処理で問題となっていた、データ量増加に伴うコスト増大と出力性能の低下を防ぐ、革新的なフレームワークです。さらに、CoAはエージェント間のコミュニケーションを改善し、MoAをより発展させた技術とも言えます。また、CoAはLLM自体を改変するものではなく、外部の拡張技術として機能するため、既存のLLMや、MoA、RAGと併用可能な点も大きな強みです。
本記事では、この論文で発表されたCoAの性能の高さと、その仕組み、さらには他の技術との比較について詳しく解説していきます。
目次:
- LLM
の現状と課題:LLMの性能を拡張する技術
-
- CoAとは
-
- 性能とコスト
-
- CoAの拡張性と具体的な応用可能性
- まとめ
近年、大規模言語モデル(LLM)の活用範囲が広がる中で、その拡張性が注目されています。LLMは、事前学習された情報に基づいて回答を生成するため、以下のような課題がありました。
- 知識の限界
-
- : 事前学習データに含まれない、機密情報や最新情報には対応できない。
- 幻覚: 事実に基づかない情報を生成してしまう「ハルシネーション」と呼ばれる現象が発生する。
これらの課題に対抗するため、LLMと外部データベースを連携させる Retrieval-Augmented Generation (RAG) という手法が登場しました。RAGは、外部の知識ベースを検索し、その結果をLLMの入力に付加することで、LLMの知識を補完します。具体的には、ユーザーからの入力(クエリ)を受け取ると、クエリに関連する情報を、Wikipediaや専門知識データベースなどの外部知識ベースから検索し、検索された情報を元のクエリと組み合わせてLLMに入力し、回答を生成します。これにより、LLM単体では対応できなかった最新情報や、特定の分野の専門知識を扱うことができます。
しかし、RAGはLLMの知識を外部情報で拡張できる一方で、いくつかの課題も抱えています。RAGは、文書全体を読み込むのではなく、入力された単語との類似度が高い部分を抽出して出力します。そのため、文書全体を考慮した回答が得られず、文書の途中の重要な情報が見落とされる「ミドル・ロス」問題が発生しやすく、出力の正確性や一貫性が損なわれる可能性があります。
次に、この課題への対策として登場したのが、MoA (Mixture of Agents) です。MoAは、入力を複数の専門エージェントに並列で振り分けて処理を行う手法です。MoAでは、入力が与えられると、ゲートウェイネットワークが入力内容を解析し、最適な専門エージェントを選択して処理を任せます。例えば、あるエージェントはコード生成に特化し、別のエージェントは文章の要約に特化しているといった具合です。多くの場合、各エージェントの出力は最後に統合され、最終的な出力が生成されます。MoAでは、専門エージェントが並列構造または階層構造で配置されることが一般的です。並列構造では、各エージェントが独立して動作し、最後に結果を統合します。一方、階層構造では、上位のエージェントの出力が下位のエージェントの入力となります。並列構造では、処理速度を高速化できるという利点がありますが、その反面、エージェント間の連携が限定的、または全く行われないという課題があります。各エージェントは独立して動作するため、出力に一貫性が欠如する可能性があり、短文であれば効果的ですが、長文を扱う場合は、その効果が限定的になってしまいます。
-
CoAの仕組み
MoAは、複数の専門エージェントを並列もしくは階層構造で動作させることで、高度な多スクを効率的に処理しようとする手法です。しかし、エージェント間の連携が不十分だと、長い文脈での一貫性に課題が残ります。そこで、こうした連携面の弱点を克服し、一貫した処理を実現するために登場したのが CoA (Chain-of-Agents) です。
CoAは、複数のエージェントを直列に繋ぎ、情報を逐次的に伝達しながら処理を行うフレームワークです。具体的には、まず長い入力テキストを複数のチャンクに分割し、それぞれを個別のワーカーエージェントが処理します。各ワーカーエージェントは、前のエージェントから処理結果であるコミュニケーションユニット(CU)を受け取り、自身の担当チャンクの内容と組み合わせて処理を行い、結果を次のエージェントに渡します。このプロセスを、最後のワーカーエージェントまで逐次的に繰り返します。そして最後に、マネージャーエージェントが、全てのワーカーエージェントの処理結果を統合し、最終的な出力を生成します。この処理において、MoAのような並列処理とは異なり、各エージェントは、まるで「バケツリレー」のように情報を繋ぎ、長い文脈を途切れさせることなく、一貫性を持って処理を進めることを可能にします。
CoAには、以下のような利点があります。
- 長文の一貫性: 逐次的な処理により、長い文脈全体を考慮した一貫性のある出力を生成できます。前のエージェントの処理結果を引き継ぎながら、次のエージェントが処理を行うため、全体を通して文脈が途切れることがありません。
- 精度の向上と「ミドル・ロス」問題の軽減: 各エージェントは短いチャンクを担当するため、長い文脈の中間部分の情報も効果的に活用できます。これにより、従来のLLMで問題となっていた、長い文脈の途中の情報が抜け落ちてしまう「ミドル・ロス」問題の影響を軽減できます。
- トレーニング不要: CoAは、事前学習されたLLMをそのまま活用できるため、追加のトレーニングは必要ありません。
一方で、CoAは逐次処理を行うため、並列処理を行うMoAと比較して、処理に時間がかかる可能性があります。ただし、実装の最適化や並列化の工夫によって、この問題は軽減できると考えられます。
CoAの長文処理能力:高い精度と安定性
上記のグラフからも明らかなように、Chain-of-Agents (CoA) は長い文脈を持つテキストの処理において、高い精度と安定性を発揮します。図1では、BookSumデータセットにおける平均ROUGEスコアを比較しており、入力テキストが長くなるにつれて、従来のLLMでは性能が低下する一方、CoAは高い精度を維持していることが示されています。また、図2では、様々なタスクにおいてCoAがRAGやFull-Contextを上回る性能を示しており、幅広いタスクへの応用可能性も示唆されています。これらの結果は、CoAがLLMの課題であった長いテキストの処理能力を大きく向上させ、安定した性能を提供できることを示しています。従来のLLMでは、長いテキストを扱う際に記憶力が低下する問題がありましたが、CoAは逐次的に情報を処理することで、その問題を克服しています。
CoAは、高い精度に加え、計算コストの面でも優位性があります。LLM(Full-Context)では、入力情報の増加に伴い、計算量が指数関数的に増大します。しかし、CoAはタスクを分割して処理するため、計算量の増加を線形に抑えることができます。
RAGと比較すると、RAGは高速な処理が可能な一方で、精度において課題があります。RAGは、最初にベクトル演算で類似度の高い情報を抽出しますが、その後のLLM処理で指数関数的な計算量が生じます。そのため、RAGとCoAを組み合わせて活用することも、有効な選択肢となりえます。
「LLM単体」は、事前学習データのみで推論するためセットアップが容易で汎用的ですが、新情報を扱えず長い文脈に弱いという課題があります。「RAG」は外部データを検索し追加情報として利用することで知識を拡張し、計算コストも抑えられる可能性がありますが、検索精度に依存して重要部分を見落とすリスクがあります。「CoA」は長い入力を複数エージェントで分割処理し、情報を保持しながら結果を統合するため精度が高く、長文でも性能を維持しやすいです。「MoA」は専門エージェントを並列または階層構造で組み合わせ、それぞれの得意分野で高い性能を発揮できますが、連携が弱く長文の一貫した処理が難しくなる可能性があります。
CoAの拡張性と応用可能性
CoAは、特定のLLMに依存しない汎用的な拡張フレームワークです。事前学習済みのLLMをエージェントとして組み込むことができ、追加のトレーニングが不要なため、導入の障壁が低く、一度仕組みを構築すれば、様々なタスクに容易に応用できます。
- エンベディングにおける利点
従来のLLMでは、エンベディング処理はモデル内部で行われていましたが、長いテキストの場合、以下の問題点がありました。
- テキストの前半と後半でエンベディングにずれが生じる可能性がある
- 計算コストが大きくなりやすい
これに対し、CoAフレームワークでは、エンベディングを一括して行うことで、全てのチャンクに対して一貫したエンベディング処理を適用できます。また、各エージェントは、自身に割り当てられたチャンクのエンベディングベクトルのみを受け取って処理を行うため、計算が効率化されます。この設計により、LLM単体での処理時に問題となる計算量の増加を抑えつつ、高精度な分析と推論を行うことが可能です。
- 多様なタスクへの応用
CoAは、以下に示すように、特に長い文脈を理解し、一貫性のある出力を生成することが求められる、多様なタスクに応用できます。
- 文書要約: 長い論文、レポート、書籍などの要約を生成する際に、CoAを活用することで、文書全体の内容を把握し、重要なポイントを逃さずに要約を作成できます。従来のLLMでは、長い文書の要約時に情報が抜け落ちたり、一貫性が失われたりする問題がありましたが、CoAを用いることで、これらの問題を解決し、より精度の高い要約生成が可能になります。
- 複数文書の統合: 複数の文書から情報を抽出し、それらを統合して一つの文書(レポート、プレゼン資料など)を作成する際に、CoAは情報の重複や矛盾を避け、一貫性のある文書生成を支援します。各文書の情報をCoAで逐次的に処理することで、文書間の関連性を正しく把握し、質の高い統合文書を作成できます。
- 長文や複数文書を対象としたタスク:
CoAはLLM単体と比較して高い読解精度を持つため、契約書や論文などの重要書類の読解を必要とするタスクにおいて、その能力を最大限に発揮できます。契約書全体を漏れなく精査し、人手では見落としがちな細かなリスクも発見できる可能性が高まります。
まとめ
Chain-of-Agents (CoA) は、RAGやMoAといった既存技術が抱えていた課題を克服し、長い文脈を扱うタスクにおいて、LLMの性能を飛躍的に向上させる新しい技術です。特に、長い文書の要約、書籍全体の内容に関する質問応答、複雑なコードの理解と生成など、長い文脈の理解と高度な推論が求められるタスクにおいて、その真価を発揮すると期待されます。
CoAの導入により、単なる精度の向上だけでなく、計算コストの最適化も同時に実現可能です。これまで、精度面から実用化が困難であった法律AIや論文精読AIといった高度な分野においても、CoAがその精度を底上げすることで、より効果的な活用が期待されます。さらに、RAGなど他の技術との組み合わせによって、その能力をさらに拡張できる汎用性の高さもCoAの大きな強みです。