Repolode
OSU-NLP-Group

OSU-NLP-Group/HippoRAG

文書からナレッジグラフを構築し、Personalized PageRankでマルチホップ検索と長期記憶を実現するLLM向けRAGフレームワークです。

スター
4,076
フォーク
440
未解決の Issue
8
最終コミット
16 日前

これは何?

HippoRAGは、人間の長期記憶が持つ連想構造に着想を得た、LLM向けのメモリフレームワークです。文書からエンティティや事実を抽出してナレッジグラフを構築し、そのグラフ上でPersonalized PageRankを使ってクエリに関連する文章を検索します。これにより、複数の文書にまたがる情報を組み合わせて答える必要がある質問に対応できます。

このプロジェクトは、index、retrieve、rag_qaのワークフローを備えたPythonパッケージを提供します。OpenAI、Azure OpenAI、vLLMなどのOpenAI互換エンドポイント、Amazon Bedrockに加え、TransformersまたはvLLM経由のローカルモデルにも対応しています。ベクトルの保存先には、ローカルのParquetファイル、Qdrant、ChromaDB、Milvusを利用できます。インデックスは作成時のモデル設定にひも付くため、モデルを変更する場合は再インデックスが必要です。

HippoRAGには、retrieve、rag_qa、index、deleteの各ツールをClaude CodeやCursorなどのエージェントに公開するMCPサーバー(hipporag-mcp)と、Claude Codeプラグインも含まれています。NeurIPS 2024およびICML 2025の論文に掲載された手法を再現するためのスクリプトとデータセットも収録されています。

主な機能

  • 01文書からナレッジグラフを構築し、Personalized PageRankを使って検索します。
  • 02OpenAI、Azure OpenAI、Bedrock、およびvLLMなどのOpenAI互換エンドポイントに対応しています。
  • 03TransformersまたはvLLM経由で、ローカルの埋め込みモデルやLLMを実行できます。
  • 04ベクトルをローカルのParquetファイル、またはQdrant、ChromaDB、Milvusに保存できます。
  • 05retrieve、rag_qa、index、deleteの各ツールを備えたMCPサーバーを提供します。
  • 06Claude Codeプラグインと、論文の実験を再現するためのスクリプトが含まれています。

ユースケース

  • 複数の文章から事実を結び付ける必要がある、文書コレクションに対する質問応答。
  • MCPを介して、AIコーディングエージェントやチャットエージェントに、文書セットの永続的かつ段階的に更新可能な記憶を持たせる。
  • データをローカルに保持しながら、vLLM経由でセルフホスト型のオープンモデルを使ったRAGパイプラインを実行する。
  • HippoRAGの論文にあるマルチホップ検索の実験を再現または発展させる。

クイックスタート

  1. 1

    CondaでPython 3.10環境を作成する

    conda create -n hipporag python=3.10
  2. 2

    環境をアクティベートする

    conda activate hipporag
  3. 3

    PyPIからHippoRAGをインストールする

    pip install hipporag
  4. 4

    OpenAI APIキーを設定し、READMEの最小限のサンプルを実行する

    export OPENAI_API_KEY=<your OpenAI API key>

使う前に知っておきたいこと

  • ローカルモデルを使用するには、大規模モデル向けのマルチGPU vLLMサービングなど、十分なGPUリソースが必要です。
  • 以前の開発時のデフォルト設定で作成したインデックスをバージョン2.0.0a5にアップグレードするには、再インデックスが必要です。

トピック

よくある質問

HippoRAG とは?
文書からナレッジグラフを構築し、Personalized PageRankでマルチホップ検索と長期記憶を実現するLLM向けRAGフレームワークです。 HippoRAGは、人間の長期記憶が持つ連想構造に着想を得た、LLM向けのメモリフレームワークです。文書からエンティティや事実を抽出してナレッジグラフを構築し、そのグラフ上でPersonalized PageRankを使ってクエリに関連する文章を検索します。これにより、複数の文書にまたがる情報を組み合わせて答える必要がある質問に対応できます。
HippoRAG は無料で使えますか?ライセンスは?
HippoRAG は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
HippoRAG は今もメンテナンスされていますか?
活発にメンテナンス中。HippoRAG の最終コミットは 2026年10月6日 です。
HippoRAG は何に使えますか?
複数の文章から事実を結び付ける必要がある、文書コレクションに対する質問応答。 MCPを介して、AIコーディングエージェントやチャットエージェントに、文書セットの永続的かつ段階的に更新可能な記憶を持たせる。 データをローカルに保持しながら、vLLM経由でセルフホスト型のオープンモデルを使ったRAGパイプラインを実行する。 HippoRAGの論文にあるマルチホップ検索の実験を再現または発展させる。
HippoRAG のインストール方法は?
CondaでPython 3.10環境を作成する: conda create -n hipporag python=3.10 環境をアクティベートする: conda activate hipporag PyPIからHippoRAGをインストールする: pip install hipporag OpenAI APIキーを設定し、READMEの最小限のサンプルを実行する: export OPENAI_API_KEY=<your OpenAI API key>
HippoRAG はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/OSU-NLP-Group/HippoRAG

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト