AI・機械学習
上級

GraphRAG(グラフラグ)

Microsoft Researchが2024年に発表したRAG手法で、文書コーパスからナレッジグラフ(エンティティと関係のネットワーク)を自動構築し、グラフ構造を活用して複雑な推論・要約クエリに対応する。従来のベクトル検索RAGでは困難だったマルチホップ推論を実現する。

0 回閲覧
0 いいね
2026/6/20 更新
関連タグ
RAG
GraphRAG
ナレッジグラフ
Microsoft
グラフ検索

GraphRAGとは

GraphRAGは、Microsoft Researchが2024年に発表したRAGの拡張手法で、文書コーパスからナレッジグラフを自動構築し、グラフ構造を活用して検索・推論を行う。論文「From Local to Global: A Graph RAG Approach to Query-Focused Summarization」およびGitHubリポジトリ(microsoft/graphrag)で公開されている。従来のベクトル検索RAGが「クエリに似た文書チャンクを返す」のに対し、GraphRAGは「エンティティ間の関係を辿って推論する」ため、マルチホップ質問や要約タスクで大幅に優れた性能を発揮する。

主な特徴・仕組み

  • 自動グラフ構築: LLM(GPT-4o等)が文書からエンティティ(人名・組織名・技術用語・概念)と関係(所属・開発・競合・依存等)を自動抽出
  • コミュニティ検出: Leiden アルゴリズムでグラフをコミュニティ(密に接続されたノード群)に分割。階層的な要約を生成
  • 2つの検索モード:
    • ローカル検索: 特定エンティティの周辺ノード・エッジを探索。「RTX 4090の競合製品は?」のような具体的なクエリ向き
    • グローバル検索: コミュニティ要約を階層的に集約。「このコーパスの主要テーマは?」のような俯瞰的クエリ向き
  • グラフ構築コスト: 1,000ページの文書で約$5〜20のLLM API費用(GPT-4o使用時)。構築は1回で、以降の検索はグラフ探索のみ
  • ベンチマーク: 要約タスク(Comprehensiveness)でBaseline RAGを+20〜30%上回る(Microsoft 2024)
  • マルチホップ推論: 「AはBを開発し、BはCに使われ、CはDと競合する」のような3段階以上の推論チェーンに対応
  • スケーラビリティ: 10万ノード規模のグラフまで実用的な応答速度(1〜3秒)
  • OSSライセンス: MIT License。Python実装でpip install graphragで導入可能

アーキテクチャ

レイヤーコンポーネント役割
インデクシングEntity ExtractorLLMで文書からエンティティ・関係を抽出
インデクシングGraph BuilderNeo4j/NetworkXでナレッジグラフを構築
インデクシングCommunity DetectorLeidenアルゴリズムでコミュニティ分割
インデクシングSummary Generator各コミュニティの階層要約を生成
クエリLocal Searchエンティティ中心のサブグラフ探索
クエリGlobal Searchコミュニティ要約の階層集約

構築コスト比較

コーパスサイズグラフ構築時間LLM API費用ノード数エッジ数
100ページ10〜30分$1〜3500〜2,0001,000〜5,000
1,000ページ2〜6時間$5〜205,000〜20,00010,000〜50,000
10,000ページ1〜3日$50〜20050,000〜100,000100,000〜500,000

選び方・注意点

  • 構築コストが高い: ベクトルRAGが文書チャンクを埋め込むだけなのに対し、GraphRAGはLLMでエンティティ抽出→グラフ構築→コミュニティ要約の3段階が必要
  • 更新コスト: 文書が追加・変更されるたびにグラフの再構築(差分更新)が必要。静的なコーパス向き
  • 単純なクエリにはオーバースペック: 「〇〇とは?」のような単一文書で回答できるクエリにはベクトルRAGで十分
  • グラフDB選択: 小規模ならNetworkX(インメモリ)、大規模ならNeo4j・Amazon Neptune等の専用GraphDB推奨
  • LightRAGとの使い分け: LightRAGはGraphRAGの軽量版で、構築コストを1/10に抑えつつ精度を80%程度維持

関連用語との違い

特性GraphRAGベクトルRAGHyDELightRAG
検索対象ナレッジグラフ文書チャンク文書チャンク軽量グラフ
マルチホップ推論○××△
要約タスク◎△△○
構築コスト高($5〜200)低($0.1〜1)不要中($0.5〜20)
リアルタイム更新困難容易不要中程度

よくある質問(FAQ)

Q1: GraphRAGはどんなユースケースに最適? A: 社内文書の横断的な分析・要約、複雑な因果関係の解明、競合分析、特許調査など「複数文書にまたがる情報を統合して推論する」タスクに最適。単純なFAQやキーワード検索にはオーバースペック。

Q2: GraphRAGの構築にGPT-4oは必須? A: エンティティ抽出の精度はLLMの能力に依存するため、GPT-4oクラスが推奨。Llama 3-70BやMistral Largeでも動作するが、抽出精度が10〜20%低下する。構築後の検索フェーズにはLLMのサイズは影響しない。

Q3: Neo4j以外のグラフDBでも使える? A: 公式実装はNetworkX(インメモリ)がデフォルト。Neo4j・ArangoDB・Amazon Neptuneへのアダプターはコミュニティ実装として提供されている。1万ノード以下ならNetworkXで十分で、それ以上はNeo4j推奨。

まとめ

  • GraphRAGはMicrosoft発のナレッジグラフベースRAGで、マルチホップ推論と要約タスクに特化
  • 文書からLLMでエンティティ・関係を自動抽出し、Leidenアルゴリズムでコミュニティ構造化
  • 構築コスト($5〜200/コーパス)は高いが、複雑な推論タスクでは従来RAGを+20〜30%上回る
  • 静的な大規模コーパスの分析・要約に最適で、頻繁に更新されるドキュメントにはLightRAGを検討
この記事について
カテゴリーAI・機械学習
難易度上級
作成日2026/6/20