GraphRAGは、知識グラフと検索拡張生成を組み合わせた手法です。 まずドキュメントの集合からエンティティ、関係性、イベントを抽出して接続可能なグラフを形成し、その後グラフ内のコミュニティや階層別に要約を生成します。 「データベース全体の主なトピックは何か、異なる組織はどのように関係しているか?」といった文書間質問に直面した際は、従来のRAGよりも全体の構造が見えやすいです。RAGは似たテキストブロックが数少ないだけです。
従来のRAGが見落としがちな問題は何でしょうか?
通常のRAGはクエリをベクトルに変換し、最も似た断片を思い出してモデルに答えを与えます。 これは契約の終了日などの事実確認に理想的です。 しかし、世界的な問題の証拠は数十の文書に散在しており、問題と非常に似た単一の断片は存在しないかもしれません。 高ランクのクリップを数本だけ取ると、局所的で高頻度なコンテンツを全体の結論と誤解しがちです。
GraphRAGの典型的なインデックス作成プロセスはより重いです:
- 元の文書を分割し、人々、機関、場所、概念、そしてそれらの関係性を抽出します。
- エンティティや関係をグラフに整理し、コミュニティの発見を通じて密接に関連するグループを特定しましょう。
- 要約は異なるレベルのコミュニティ向けに作成され、地域の事実やグローバルなテーマを保持しています。
- クエリ中に関連する団体、コミュニティ、または要約を選択し、それらをまとめて最終回答にまとめます。
ベクター検索を排除することではなく、従来のRAG断片呼び起に関係的かつ階層的な視点を加えることです。
マッピング費用を支払う価値があるのはいつでしょうか?
政策ファイル、研究資料、クライアントインタビュー、調査報告書などの文書コレクションには、文書間関係、テーマの進化、グループパターンが含まれることが多く、GraphRAGによるグローバルな要約に適しています。 ユーザーが個々の製品パラメータ、正確な用語、または最新の記録だけを尋ねる場合、通常のキーワード検索やベクター検索の方が通常より直接的かつ安価です。
スペクトルの品質はエンティティの曖昧さ解消と関係抽出に依存します。 同じ名前の人々が統合されなかったり、同じ機関が複数のノードに分割されたり、モデルが関係性を捏造した場合、その後のコミュニティ要約で誤りが増幅されます。 インデックスはまた、追加のモデル呼び出し、保存、更新プロセスを必要とします。 文書が頻繁に変更されると、再作成は大きなコストとなります。
また、元のテキスト証拠に代わるものもありません
コミュニティの要約はデータの圧縮であり、元の事実そのものではありません。 信頼できるシステムは、ノードから文書断片へのソースマッピングを保持し、ユーザーが元のテキストを検証できるようにすべきです。 数値、日付、コンプライアンス判断については、正確な断片の取得を優先すべきです。
GraphRAGを選ぶ基準は「グラフの方が高度に聞こえる」ではなく、文書間の関係やグローバルなトピックが本当に必要かどうかです。 まず、代表的な質問を用いて、従来のRAGとGraphRAG間のカバレッジ、証拠のトレーサビリティ、インデックス作成コスト、更新時間を比較し、その後複雑なパイプラインを導入するかどうかの決定がなされました。