このプロジェクトについて

LightRAGは知識グラフを中心に構築されたオープンソースの検索拡張生成(RAG)フレームワークであり、Microsoft GraphRAGの軽量な代替品として位置づけられています。グラフ構造の索引とベクトル埋め込みを組み合わせた二層アーキテクチャを採用し、従来のチャンクベースのベクトルRAGとグラフベースのRAGの橋渡しを目指しています。 READMEで説明されているコア機能: - エンティティ間の意味的依存関係を捉えるグラフ構造索引により、チャンクベース検索におけるコンテキストの断片化を克服します。 - 5つのクエリモードを備えた二層リトリーバル: local(特定のエンティティと属性)、global(マクロテーマとドキュメント間の関係)、hybrid(local + global)、naive(テキストチャンクに対する単純なベクトル類似性)、mix(local + global + naive、デフォルト)。 - 増分更新と選択的削除: ドキュメントが削除された際、索引作成時のLLMキャッシュを使用して影響を受けるエンティティと関係再構築が可能です。 - 複数のドキュメント解析エンジン: MinerU、Docling、およびWordやMarkdownドキュメント内の画像、表、数式を処理するネイティブエンジンに加え、spaCyモデルを使用した.docxファイル向けのオプションのスマート見出し検出機能。 - 4つのテキストチャンク分割戦略: 固定長、再帰的文字、ベクトル意味的、段落意味的。最後はチャンク境界を見出し、段落、表に合わせます。 - マルチモーダル処理(v1.5+): 知識グラフを介して画像、数式、表を本文テキストに接続し、PDF、画像、Officeドキュメント、表、数式に対するRAG-Anything統合を提供します。 - ロール別LLM設定: EXTRACT、QUERY、KEYWORD、VLMの4つのロールがあり、それぞれ独立して設定可能です。 - ストレージバックエンド: ローカルファイル永続化を伴うインメモリデフォルトに加え、PostgreSQL、MongoDB、Neo4j、Milvus、OpenSearchなど。本番環境ではPostgreSQLが推奨されます。 - ソース帰属のための引用サポート、リランカーサポート、RAGAS評価統合、Langfuseトレーシング。 デプロイと使用: - PyPIからapi extra付きのlightrag-hkuとしてインストール可能、またはuvやpipを使用してソースからインストール。Makefileはmake devやmake env-baseなどのターゲットを提供します。 - Docker Composeデプロイに対応し、Sigstore Cosignで署名された公式GHCRイメージを提供。Apple Silicon向けにDocker Desktopなしで動作するApple Containerセットアップガイドも存在します。 - インタラクティブなセットアップウィザードが、LLM、埋め込み、リランカー、ストレージ、サーバー、認証、SSL設定のための.envおよびdocker-compose.final.yml構成を生成します。 - サーバーはWeb UIとREST APIを公開します。READMEでは、ネットワーク公開前に認証(LIGHTRAG_API_KEYまたはAUTH_ACCOUNTSとTOKEN_SECRET)を設定すべきであること、WHITELIST_PATHSが設定されていない限りOllama互換の/api/*ルートはデフォルトで開かれていることに注意を促しています。 - オプションのシステム依存関係には、ネイティブmarkdown/textpack解析でのSVGラスタライゼーション用libcairo、およびdocxスマート見出し用spaCy言語モデルが含まれます。 READMEのモデルガイダンスでは、抽出には高速な非思考モデル、クエリ回答には強力なモデル、キーワード抽出には軽量な非思考モデル、VLMタスクにはマルチモーダルモデルを推奨しています。埋め込みモデルは索引作成前に選択し、一貫性を保つ必要があり、ローカルデプロイにはBAAI/bge-m3が推奨されます。本プロジェクトはarXiv論文(2410.05779)に関連付けられており、EMNLP 2025で採択されたと説明されています。