マルチエージェントLLMパイプラインにおける幻覚の雪崩現象:Hallucination Snowball論文解説
はじめに:マルチエージェントLLMシステムが抱える新たな課題
LangGraph、AutoGen、CrewAIといったマルチエージェントフレームワークの急速な普及により、複数のLLMエージェントが連携して複雑なタスクを遂行するシステムが増加している。情報検索エージェントが収集したデータを分析エージェントが解釈し、その結果を報告エージェントが要約する——こうしたパイプライン型の構成は、単一のLLMでは難しかった多段階推論や大規模な情報処理を可能にする一方で、従来とは質の異なる信頼性の問題を顕在化させている。
単一のLLMにおける幻覚(hallucination)は、モデルが事実と異なる内容を確信を持って出力する現象として広く知られている。これに対して従来は、温度パラメータの調整やプロンプトエンジニアリング、RAG(Retrieval-Augmented Generation)などの局所的な対策が講じられてきた。しかしマルチエージェント環境では、前段のエージェントが生成した小さな誤りが後段のエージェントに「事実」として引き継がれ、推論や要約の過程で増幅されながら伝播するという、まったく新しい様相を示す。この現象は「Hallucination Snowball(幻覚の雪崩)」と名付けられ、ICML 2026のFAGEN Workshopにおいて、2026年8月に発表された論文で初めて体系的なモデル化と対策手法が提案された。
本論文の核心的な貢献は3つに整理できる。第一に、エラー伝播のメカニズムをマルコフ連鎖としてモデル化し、検証機構がないパイプラインが長期的に誤った状態に収束することを理論的に証明した点である。第二に、各エージェントの出力を次のエージェントに渡す前に検証する「検証ゲート(Verification Gate)」という軽量モジュールを提案し、二値分類方式とRAGベース方式の2種類の実装を示した点である。第三に、実験を通じて常に幻覚の雪崩を引き起こす「決定論的トリガー」を特定し、システム設計段階で予防可能な知見を提供した点である。これらの成果は、マルチエージェントLLMシステムの信頼性設計に対する理論的基盤と実践的な処方箋の両方を示している。
なぜ「雪崩」が起こるのか:エラー伝播のメカニズム
単一のLLMであれば局所的な誤りで済む幻覚が、マルチエージェントパイプラインでは後続エージェントに次々と引き継がれ、雪だるま式に増幅される──これがHallucination Snowballの本質である。この現象を理解するために、まず典型的な3エージェントパイプラインの具体例を見てみよう。
情報検索エージェントが「2024年の日本のGDP成長率は3.2%だった」という誤った事実を生成したとする(実際は約0.9%)。この出力をそのまま受け取った分析エージェントは、誤った数値を前提に「3.2%の成長は過去10年で最高であり、主な要因は輸出の増加と円安効果である」と推論を展開する。さらに報告エージェントは、分析結果を確信を持って「日本の経済は力強い回復軌道にあり、2024年の3.2%成長は政府の経済政策の成功を裏付けている」という体裁の整ったレポートに仕上げる。このように、単一エージェントであれば検証や修正が可能だった小さな誤りが、パイプラインを通過するたびに事実として固定化・強化されていく。
論文の実験結果は、この増幅が線形ではなく非線形に発生することを示している。エージェント数を1から3、5と増やすにつれて、出力に含まれる誤情報の量は単純な和ではなく加速的に増加し、同時にエージェントの確信度(信頼性スコア)も上昇する。つまり、パイプラインが長くなるほど、誤った情報がより確信度高く出力されるという逆説的な現象が生じる。これは、各エージェントが前段の出力を「検証済みの事実」として扱い、それに基づいて新たな推論を積み重ねるアーキテクチャ上の特性に起因する。
graph LR
subgraph 単一エージェント
A1[LLM] -->|誤り率 5%| O1[出力]
end
subgraph 3エージェントパイプライン
A2[検索<br>エージェント] -->|誤った事実| A3[分析<br>エージェント]
A3 -->|誤った推論| A4[報告<br>エージェント]
A4 -->|確信度高く誤情報を出力| O2[最終出力]
end
style A2 fill:#ffcccc
style A3 fill:#ff9999
style A4 fill:#ff6666
style O2 fill:#ff4444,color:#fff
上図が示すように、単一エージェントでは誤りが出力段階で留まるのに対し、マルチエージェント環境では前段の誤りが後段の入力となり、新たな誤りを生成する材料として使われる。この「誤りを前提とした推論の連鎖」こそが雪崩現象の正体であり、単なるエラーの蓄積ではなく質的な増幅メカニズムが働いている点が重要である。
論文の核心:エラー伝播をマルコフ連鎖としてモデル化する
状態空間モデルの定義
本論文の最大の理論的貢献は、マルチエージェントパイプラインにおけるエラー伝播をマルコフ連鎖(Markov Chain) として数学的にモデル化した点にある。マルコフ連鎖とは、「次の状態が現在の状態のみに依存し、過去の履歴には依存しない」という性質(マルコフ性)を持つ確率過程の一種である。この性質を利用することで、複雑なエージェント間の相互作用を単純かつ解析可能な形で表現できる。
論文では、パイプラインの各ステップにおけるエージェントの出力状態を次の3つに分類している。
| 状態 | 記号 | 意味 |
|---|---|---|
| 正しい状態 | G (Good) | 出力が事実的に正しい |
| 誤った状態 | H (Hallucinated) | 出力に幻覚(誤情報)が含まれている |
| 部分的に正しい状態 | P (Partial) | 正しい部分と誤った部分が混在 |
エージェント間の状態遷移は次のように定式化される。
$$P(S_{t+1} \mid S_t, S_{t-1}, \dots, S_0) = P(S_{t+1} \mid S_t)$$
これは、時刻 $t+1$ のエージェントの状態 $S_{t+1}$ が、直前のエージェントの状態 $S_t$ のみに依存することを示している。例えば、前段のエージェントが誤った状態(H)にあれば、後段のエージェントが正しい状態(G)に遷移する確率は極めて低くなる。この遷移関係は $3 \times 3$ の遷移確率行列 として表現され、各要素 $p_{ij}$ は「状態 $i$ から状態 $j$ へ遷移する確率」を表す。
このモデルにより、あるパイプライン構成において「どのタイミングで正しい状態から誤った状態へ不可逆的に遷移するのか」を定量的に解析できるようになる。
定常分布分析
マルコフ連鎖の強力な性質の一つが、定常分布(Stationary Distribution) の計算である。定常分布とは、システムを無限に動作させたときに各状態にいる確率が収束する値を指す。この値が示すのは、長期的に見てパイプラインが最終的にどの状態に落ち着くかという「運命」である。
論文では、検証機構(後述の検証ゲート)を一切導入しない場合の定常分布を理論的に計算した。その結果、ほとんどの実用的なパイプライン構成において、システムは高い確率で誤った状態(H)に収束することが証明された。これは直感的には、「一度発生した誤りが自然に修正されることはなく、むしろ伝播・増幅されていく」という雪崩現象の本質を裏付けている。
graph LR
G[G: 正しい状態] -->|p_GG| G
G -->|p_GH| H
G -->|p_GP| P
P -->|p_PG| G
P -->|p_PH| H
P -->|p_PP| P
H -->|p_HH| H
H -->|p_HG| G
H -->|p_HP| P
この定常分布分析がもたらす実務上の価値は大きい。特定のパイプラインの遷移確率をあらかじめ計測しておけば、「どの段階で検証機構を挿入すれば最も効果的に誤った状態への収束を防げるか」という設計指針が得られる。例えば、G→Hの遷移確率が特に高いエージェントの直後にゲートを配置することで、少ない介入で最大の効果を期待できる。
検証ゲート(Verification Gate):提案手法の詳細
検証ゲートとは何か
検証ゲート(Verification Gate)は、マルチエージェントパイプラインにおいて、各エージェントの出力を後続エージェントに渡す前に事実的正しさを検証する軽量モジュールである。マルコフ連鎖モデルの分析により、検証機構がないパイプラインは誤った状態(H)に収束することが理論的に示されたことを受け、この収束を防ぐ実践的な対策として設計された。論文では2種類の実装が提案されている。
- 二値分類ゲート(Binary Gate): エージェントの出力を受け取り、その内容が事実的に正しいか誤っているかを二値で判定する軽量な分類器。DeBERTaなどの事前学習モデルをベースに、検証用データセットでファインチューニングされる。計算コストが低く、レイテンシ増加は約5〜10%に抑えられる。
- RAGベースゲート(RAG Gate): 外部知識ベースから出力に関連する情報を検索し、エージェントの出力内容と検索結果の整合性を検証する手法。外部知識を参照するため、ゲート自体が幻覚を起こすリスクが低く、特に多段階推論が必要なタスクで高い性能を発揮する。レイテンシ増加は約15〜25%とBinary Gateより大きいが、精度向上効果も大きい。
検証ゲートの動作フロー
検証ゲートは各エージェントの直後に挿入され、以下のフローで動作する。
flowchart TD
A[エージェント1] -->|出力| VG1[検証ゲート]
VG1 -->|正しい| B[エージェント2]
VG1 -->|誤り| R1[リセット: 再生成]
R1 --> A
B -->|出力| VG2[検証ゲート]
VG2 -->|正しい| C[エージェント3]
VG2 -->|誤り| R2[リセット: 再生成]
R2 --> B
C -->|出力| VG3[検証ゲート]
VG3 -->|正しい| D[最終出力]
VG3 -->|誤り| R3[リセット: 再生成]
R3 --> C
検証ゲートが誤りを検出した場合、システムは「リセット」動作を実行する。リセットには2つの方式がある。1つは該当エージェントに再生成を指示する方法、もう1つは前段階のエージェントまでロールバックして処理をやり直す方法である。このリセット機構により、システムを事実的に正しい状態(G)に戻すことが可能となり、幻覚の雪崩を未然に防止する。論文の実験では、リセットの最大試行回数を3回に設定することで、過剰なレイテンシ増加を抑えつつ高い効果を得ている。
実験結果
検証ゲートの有効性は、HotpotQA(多段階推論)、Fever(事実検証)、TriviaQA(知識QA)の3データセットで評価された。以下の表は各データセットにおける検証ゲート導入前後の精度を示している。
| データセット | ゲートなし | Binary Gate | RAG Gate |
|---|---|---|---|
| HotpotQA | 62.3% | 71.8% | 78.5% |
| Fever | 58.1% | 66.4% | 70.2% |
| TriviaQA | 74.6% | 80.1% | 83.9% |
全データセットで検証ゲートの導入により精度が有意に向上しており、特にHotpotQAのような多段階推論タスクで効果が顕著である。RAG GateがBinary Gateを全データセットで上回る結果となったが、その差はタスクによって異なり、Feverでは比較的接近している。また、ゲートの誤判定についても評価が行われており、正しい出力を誤って誤りと判定する偽陽性(false positive)と、誤った出力を見逃す偽陰性(false negative)のトレードオフが分析されている。RAG Gateは偽陰性率が低い一方で、検索品質に依存するという特性がある。
ポストホック分析:雪崩のトリガーを特定する
決定論的トリガーの発見
検証ゲートの有効性が確認された一方で、著者らは「そもそも幻覚の雪崩を誘発する原因は何か」という根本的な問いにも取り組んでいる。実験データを詳細にポストホック分析した結果、特定のパターンが存在すると常にエラーの連鎖増幅が発生することが判明した。これらのパターンは「決定論的トリガー(snowball triggers)」と呼ばれ、システム設計者が事前に把握しておくべき重要な知見である。
代表的なトリガーの一つが曖昧な参照表現である。前段のエージェントが「それ」「その文書」「前述のデータ」といった指示語や省略表現を用いると、後続エージェントがこれを誤った対象に結びつけて解釈するケースが多発する。たとえば情報検索エージェントが「A社の2024年度売上は100億円、B社の2024年度売上は80億円」と出力した後、分析エージェントが「その値は前年比で20%増加している」と解釈する際、「その値」がA社・B社のどちらを指すのかが曖昧になり、誤った比較分析が生成される。
もう一つの主要なトリガーは数値データの引き継ぎにおける精度低下である。エージェント間で数値情報をやり取りする過程で、四捨五入による丸め誤差、単位変換ミス(「百万円」→「億円」の変換漏れなど)、小数点以下の切り捨てが積み重なり、最終的な出力が元の値から大きく乖離する。以下の表は、実験で観測された典型的な数値トリガーのパターンを示す。
| トリガーパターン | 具体例 | 後続エージェントでの影響 |
|---|---|---|
| 四捨五入の連鎖 | 123.456 → 123.5 → 124 | 丸め誤差が3段階で約0.5%から0.8%に拡大 |
| 単位の暗黙的変換 | 「100万ドル」を「1億円」と解釈 | 為替レートの前提違いで最大40%の誤差 |
| 桁数の省略 | 「約15,000」を「15」と解釈 | 3桁もの桁落ちが発生 |
実践的示唆
決定論的トリガーを事前に把握しておく最大の利点は、予防的設計が可能になる点にある。システム開発の初期段階で以下の対策を組み込むことで、検証ゲートに頼らずとも雪崩の発生を未然に防げる。
- 曖昧な参照への対策: 各エージェントの出力プロンプトに「数値や固有名詞を明示的に繰り返す」旨の指示を追加する。たとえば「上記の値」ではなく「A社の2024年度売上100億円」と明記するルールを強制する。
- 数値精度の維持: エージェント間の受け渡しフォーマットを統一し、JSONスキーマなどで数値の桁数や単位を明示的に指定する。単位フィールドを必須項目として定義することで変換ミスを防止できる。
これらのトリガーはプロンプトエンジニアリングの改善点としても直接活用できる。たとえば各エージェントのシステムプロンプトに「数値は元の精度を保持し、単位を必ず明記すること」「曖昧な参照表現は避け、対象を具体的に指示すること」といったルールを追加するだけで、雪崩の発生確率を有意に低減できることが実験で確認されている。トリガーを知ることは、検証ゲートと併用することでより強固な信頼性設計を実現するための基盤となる。
実装への応用:LangGraph / AutoGen / CrewAI での適用
検証ゲート(Verification Gate)は、理論的な枠組みだけでなく、現在広く使われているマルチエージェントフレームワークに実装可能な形で設計されている。ここではLangGraph、AutoGen、CrewAIの3つの代表的なフレームワークを例に、検証ゲートの統合方法を具体的に示す。
LangGraphでの実装例
LangGraphはノード(エージェント)とエッジ(制御フロー)で構成されるグラフ構造を採用しており、検証ゲートはConditional Edgeとして自然に組み込める。通常のノード間エッジを、検証ゲートを経由する条件分岐に置き換える形で実装する。
flowchart LR
A[検索エージェント] --> VG1{検証ゲート}
VG1 -->|合格| B[分析エージェント]
VG1 -->|不合格| A
B --> VG2{検証ゲート}
VG2 -->|合格| C[報告エージェント]
VG2 -->|不合格| B
StateGraphの状態管理には、各ノードの出力とその検証結果を保持するフィールドを追加する。具体的には、状態スキーマに "verification_status": bool や "verification_evidence": str を加え、検証ゲートがこれらのフィールドを更新する。不合格となった場合は、前段ノードへのロールバックとして、該当ノードを再実行するよう条件分岐を設定する。この再実行時には、前回の出力をプロンプトに含めて「誤りを修正せよ」と指示することで、単純なリトライよりも高確率で正しい出力を得られる。
AutoGenでの実装例
AutoGenでは、エージェント間のメッセージングに検証ゲートを介入させる。検証ゲート自体を1つのアシスタントエージェントとして定義し、他のエージェントからのメッセージを受信して検証結果を返す役割を持たせる。
| コンポーネント | 役割 | 実装のポイント |
|---|---|---|
| 検証エージェント | 他エージェントの出力を検証 | AssistantAgentとして定義、検証プロンプトをsystem_messageに設定 |
| GroupChat | 検証結果をスピーカー選択に反映 | 検証不合格時は発言元エージェントに再生成を促す |
| 会話マネージャー | 検証結果に基づくルーティング | 次に発言すべきエージェントを検証結果で決定 |
GroupChatのスピーカー選択ロジックをカスタマイズすることで、検証に合格したエージェントの出力のみを次のエージェントに渡す制御が可能になる。例えば、検証エージェントが「不合格」と判定した場合、スピーカー選択関数は同じエージェントを再度呼び出し、修正後のメッセージを生成させる。この仕組みにより、エージェント同士の自然な会話フローを保ちながら、誤情報の伝播を防止できる。
CrewAIでの実装例
CrewAIでは、各タスクの callback パラメータに検証ゲートの関数を指定することで、タスク完了時に自動的に検証を実行できる。タスクが検証に不合格となった場合、そのタスクを再実行するループを設定する。
# CrewAIでの検証ゲート実装イメージ
task_research = Task(
description="指定されたトピックについて調査する",
agent=research_agent,
callback=verification_gate # 検証ゲートをコールバックとして設定
)
検証失敗時の再実行は、max_retry パラメータをタスクに追加することで実現する。上限回数に達しても検証を通過できない場合は、パイプライン全体を停止するか、人間のレビューに委ねるフェイルセーフを設けるとよい。実運用では、再実行のたびに temperature を微調整するなどの工夫で、同じ誤りを繰り返すリスクを低減できる。
フレームワーク間の比較
| 観点 | LangGraph | AutoGen | CrewAI |
|---|---|---|---|
| 検証ゲートの配置方法 | Conditional Edge | アシスタントエージェント | タスクのcallback |
| 不合格時の動作 | 前段ノードへロールバック | 同一エージェントの再生成 | タスクの再実行 |
| 状態管理 | StateGraphのフィールド追加 | GroupChatの会話履歴 | タスクのoutput属性 |
| 導入難易度 | 中(グラフ構造の理解が必要) | 低(エージェント追加のみ) | 低(callback関数の追加のみ) |
どのフレームワークを選んでも、検証ゲートの基本的な動作——エージェント出力の検証と不合格時のリセット——は同じである。導入の容易さではCrewAIとAutoGenが優れる一方、複雑な分岐やループを含むシステムではLangGraphのグラフ構造が柔軟に対応できる。システムの要件とチームの習熟度に応じて最適なフレームワークを選択し、検証ゲートを組み込むことで、Hallucination Snowballのリスクを大幅に低減できる。
よくある質問
検証ゲートを導入するとレイテンシはどの程度増加するか?
論文のベンチマーク結果によると、Binary Gate(二値分類ゲート)の導入によるレイテンシ増加は約5〜10%、RAG Gate(RAGベースゲート)では約15〜25%と報告されている。ただし、検証ゲートによって誤った出力の再生成が減るため、再生成に伴う遅延を差し引くと、総合的なタスク完了時間は同等か、むしろ短縮されるケースも確認されている。実運用では、レイテンシよりも出力品質の向上を優先する場面が多いため、多くのシステムで許容範囲内と言えるだろう。
検証ゲート自体の幻覚(誤判定)はどのように防ぐか?
Binary GateはDeBERTaなどの軽量な分類器を使用し、エージェント出力の正誤判定に特化した学習データで十分にチューニングされている。RAG Gateは外部知識ベースから関連情報を検索して出力との整合性を検証するため、ゲート自体が新たな幻覚を生成するリスクは本質的に低く抑えられる。論文では、ゲートの誤判定率(false positive・false negative)も評価指標の一つとして報告されており、両方式とも実用上十分な精度を達成している。
この手法はどんなマルチエージェントシステムにも適用できるか?
基本的には直列パイプライン型のマルチエージェントシステムであれば、フレームワークを問わず適用可能である。LangGraph、AutoGen、CrewAIの主要3フレームワーク向けに具体的な実装例が公開されており、導入のハードルは低く設計されている。ただし、並列分岐や動的ルーティングを含む複雑なトポロジでは、検証ゲートの挿入位置やリセット機構の最適化が追加の研究課題となるため、現時点ではシリアルなパイプラインが最も効果的な適用範囲である。
決定論的トリガーはすべてのドメインで共通か?
論文で特定された決定論的トリガーは主にテキスト理解・生成タスクを対象とした実験に基づくものであり、すべてのドメインに共通とは限らない。例えば、曖昧な参照表現(「それ」「その文書」など)や数値データの引き継ぎ時の精度低下といったパターンは汎用的だが、数値計算・コード生成・医療診断などドメイン固有のトリガーが存在する可能性が指摘されている。各ドメインに特化したトリガーの発見と分類は、今後の研究課題として位置づけられている。
単一LLMの幻覚対策と何が違うか?
従来の単一LLM向け幻覚対策(温度パラメータ調整、プロンプトエンジニアリング、RAGの導入など)は、いずれも単一エージェント内での局所的な誤りを減らすことを目的としている。一方、本論文のアプローチは、エラーの伝播・増幅という「システム全体の動的現象」を対象としており、エージェント間のインタラクションに直接介入する点が根本的に異なる。単一エージェントの幻覚対策だけではマルチエージェント環境での雪崩現象を防げないため、両者を組み合わせた多層的な対策が最も効果的である。
まとめ:マルチエージェントLLMシステムの信頼性設計への示唆
Hallucination Snowball(幻覚の雪崩)は、単一LLMの幻覚問題とは質的に異なる、マルチエージェントシステムに固有の深刻な現象である。単一エージェントであれば局所的な誤りで済む幻覚が、複数エージェントのパイプラインでは後続工程で増幅・確信化され、最終的にシステム全体の出力を事実誤認へと導く。従来の温度パラメータ調整やプロンプトエンジニアリング、RAGといった単一LLM向け幻覚対策だけでは、この「エラーの連鎖増幅」を根本的に防ぐことはできない。
本論文が提示するマルコフ連鎖モデルは、エラー伝播を「正しい状態(G)」「誤った状態(H)」「部分的に正しい状態(P)」の3状態間の遷移として定式化した点で、理論的な価値が高い。定常分布分析により、検証機構を一切持たないパイプラインの大半が長期的に誤った状態(H)に収束することが示されており、この結果はシステム設計者に対して「どの段階で」「どの程度の強度の」検証機構を導入すべきかの明確な理論的根拠を提供する。
対策手法として提案された検証ゲート(Verification Gate)は、軽量な実装で高い効果を発揮する点が実務的に重要である。Binary Gate(二値分類器)ならレイテンシ増加は5〜10%、RAG Gate(検索拡張生成)でも15〜25%に抑えられ、かつ全データセットで有意な精度向上が確認されている。LangGraphのConditional Edge、AutoGenのアシスタントエージェント、CrewAIのタスクcallbackとして容易に統合できる設計も、実用性を高める要素である。
今後の研究課題として、並列分岐や動的ルーティングを含む複雑なトポロジへの対応、数値計算・コード生成・医療診断などドメイン固有の決定論的トリガー(snowball triggers)の発見、検証ゲート自体の誤判定率の最適化が挙げられる。特に、ポストホック分析で特定された「曖昧な参照の伝播」や「数値精度の低下」といったトリガーパターンは、システム設計段階での予防的対策やプロンプトエンジニアリングの改善に直結する知見である。
Hallucination Snowballの研究は、マルチエージェントLLMシステムの信頼性設計という新たな領域を切り開いた。単一エージェントの性能最適化だけでなく、エージェント間のインタラクションに起因する動的なエラー伝播を考慮したシステム設計が、今後ますます重要になることを強く示唆している。
参考資料
- 論文Abstract: https://arxiv.org/abs/2608.14588
- 論文HTML全文: https://arxiv.org/html/2608.14588v1
- GitHubリポジトリ: https://github.com/prabhjotschugh/hallucination-snowball
- AgentHallu: https://arxiv.org/abs/2601.06818
- CaveAgent: https://arxiv.org/abs/2601.01569
- VERIMAP: https://arxiv.org/abs/2608.14590
- FAGEN Workshop @ ICML 2026: https://icml-fagen.github.io/
- Hallucination (AI) - Wikipedia: https://en.wikipedia.org/wiki/Hallucination_(artificial_intelligence)