AI・機械学習
上級
Modular RAG(モジュラーラグ)
RAGパイプラインをSearch/Memory/Fusion/Routing/Predict/Taskの独立モジュールに分解し、タスクに応じて自由に組み合わせるアーキテクチャパターン。固定パイプラインより柔軟なシステム設計が可能。
0 回閲覧
0 いいね
2026/6/7 更新
関連タグ
RAG
Modular RAG
アーキテクチャ
パイプライン設計
LLM
AI
Modular RAG とは
Modular RAGは、2024年にYunfan Gaoらがサーベイ論文「Retrieval-Augmented Generation for Large Language Models: A Survey」で体系化したRAGアーキテクチャの設計パターンである。RAGシステムを機能ごとに独立したモジュールに分解し、タスクの要件に応じて自由に組み合わせるアプローチを指す。
RAGの進化:3世代
Naive RAG(第1世代):
- 固定フロー: Indexing → Retrieval → Generation
- シンプルだが精度・効率に限界
- チャンキング精度・検索精度・文脈統合の問題
Advanced RAG(第2世代):
- Pre-retrieval(クエリ拡張・変換)とPost-retrieval(再ランキング・フィルタリング)を追加
- 精度改善されたが依然として固定パイプライン
Modular RAG(第3世代):
- 各コンポーネントをモジュールとして独立設計
- タスクに応じた自由な組み合わせ・並列化・ループが可能
主要モジュールの分類
Searchモジュール(情報取得):
- Vector Search(ANN近傍探索)
- Keyword Search(BM25等)
- Hybrid Search(ベクトル+キーワード融合)
- Web Search(リアルタイム情報)
- SQL Search(構造化DB)
Memoryモジュール(コンテキスト保持):
- Session Memory(会話履歴)
- External Memory(ベクトルDB)
- Entity Memory(エンティティ追跡)
Fusionモジュール(情報統合):
- RRF(Reciprocal Rank Fusion)
- Reranking(Cross-encoder)
- Compression(要約・圧縮)
Routingモジュール(クエリ振り分け):
- データソース選択
- 言語別ルーティング
- ドメイン専門特化
Predictモジュール(推論実行):
- CoT(Chain-of-Thought)
- Self-Consistency
- Step-back Prompting
Taskモジュール(タスク特化):
- Q&A、要約、コード生成、会話等
設計パターンの例
Q&Aシステム向け構成:
[クエリ] → [Hybrid Search] → [Reranking] → [Compression] → [CoT生成]
リアルタイム情報が必要な場合:
[クエリ] → [Query Routing] → [Web Search + Vector Search] → [RRF Fusion] → [生成]
複雑な多段階推論:
[クエリ] → [Iterative Search] ⟳ [中間推論] → [Self-Consistency] → [最終回答]
フレームワークとの対応
Modular RAGの概念は主要フレームワークに実装されている:
- LangGraph: ノードとエッジによるグラフ型パイプライン設計
- LlamaIndex: モジュール化されたコンポーネントライブラリ
- Haystack: コンポーネント接続によるパイプライン構築
実運用のメリット
- 独立テスト: 各モジュールを個別に評価・改善可能
- 漸進的改善: システム全体を停止せず特定モジュールのみ更新
- A/Bテスト: 同一タスクで異なるモジュール組み合わせを比較
- スケーリング: ボトルネックとなるモジュールのみ水平スケール
RAGシステムの複雑化に伴い、モジュラー設計は大規模本番運用での標準アーキテクチャパターンになりつつある。