Local-first AI memory system that stores conversation history verbatim and retrieves it with semantic search, exposed as an MCP server and CLI.
OSU-NLP-Group/HippoRAG
A RAG framework for LLMs that builds a knowledge graph from documents and uses Personalized PageRank to support multi-hop retrieval and long-term memory.
- Stars
- 4,076
- Forks
- 440
- Open issues
- 8
- Last commit
- 16 days ago
What is it?
HippoRAG is a memory framework for LLMs, inspired by the associative structure of human long-term memory. It extracts entities and facts from documents into a knowledge graph, then uses Personalized PageRank over that graph to retrieve passages connected to a query, which helps with questions that require combining information across several documents.
The project provides a Python package with an index, retrieve and rag_qa workflow. It works with OpenAI, Azure OpenAI, OpenAI-compatible endpoints such as vLLM, Amazon Bedrock, and local models through Transformers or vLLM. Vector storage can be local Parquet files or Qdrant, ChromaDB, or Milvus. Indexes are tied to the model configuration that built them, so changing models requires re-indexing.
HippoRAG also ships an MCP server (hipporag-mcp) that exposes retrieve, rag_qa, index, and delete tools to agents such as Claude Code and Cursor, and a Claude Code plugin. Reproduction scripts and datasets for the NeurIPS 2024 and ICML 2025 papers are included.
Key features
- 01Builds a knowledge graph from documents and retrieves with Personalized PageRank.
- 02Supports OpenAI, Azure OpenAI, Bedrock, and OpenAI-compatible endpoints such as vLLM.
- 03Runs local embedding and LLM models through Transformers or vLLM.
- 04Stores vectors in local Parquet files or in Qdrant, ChromaDB, or Milvus.
- 05Provides an MCP server with retrieve, rag_qa, index, and delete tools.
- 06Includes a Claude Code plugin and scripts to reproduce paper experiments.
Use cases
- Question answering over a document collection that requires linking facts across multiple passages.
- Giving an AI coding or chat agent persistent, incrementally updated memory of a document set via MCP.
- Running a RAG pipeline on self-hosted open models through vLLM while keeping data local.
- Reproducing or extending multi-hop retrieval experiments from the HippoRAG papers.
Quick start
- 1
Create a Python 3.10 environment with Conda
conda create -n hipporag python=3.10 - 2
Activate the environment
conda activate hipporag - 3
Install HippoRAG from PyPI
pip install hipporag - 4
Set your OpenAI API key, then run the minimal example from the README
export OPENAI_API_KEY=<your OpenAI API key>
Things to know
- Local model use needs substantial GPU resources, such as multi-GPU vLLM serving for large models.
- Indexes built with earlier development defaults must be re-indexed to upgrade to version 2.0.0a5.
Topics
FAQ
- What is HippoRAG?
- A RAG framework for LLMs that builds a knowledge graph from documents and uses Personalized PageRank to support multi-hop retrieval and long-term memory. HippoRAG is a memory framework for LLMs, inspired by the associative structure of human long-term memory. It extracts entities and facts from documents into a knowledge graph, then uses Personalized PageRank over that graph to retrieve passages connected to a query, which helps with questions that require combining information across several documents.
- Is HippoRAG free to use? What license does it have?
- HippoRAG is open source under the MIT license. Check the license terms before using it in commercial products.
- Is HippoRAG still maintained?
- Actively maintained. The last commit to HippoRAG was on Oct 6, 2026.
- What can I use HippoRAG for?
- Question answering over a document collection that requires linking facts across multiple passages. Giving an AI coding or chat agent persistent, incrementally updated memory of a document set via MCP. Running a RAG pipeline on self-hosted open models through vLLM while keeping data local. Reproducing or extending multi-hop retrieval experiments from the HippoRAG papers.
- How do I install HippoRAG?
- Create a Python 3.10 environment with Conda: conda create -n hipporag python=3.10 Activate the environment: conda activate hipporag Install HippoRAG from PyPI: pip install hipporag Set your OpenAI API key, then run the minimal example from the README: export OPENAI_API_KEY=<your OpenAI API key>
- Where can I get HippoRAG?
- The source code and installation instructions are on GitHub: https://github.com/OSU-NLP-Group/HippoRAG
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A Python data pipeline that uses LLMs to extract structured knowledge graphs from unstructured text for retrieval-augmented question answering.
Open-source AI memory platform that turns documents, code and conversations into a self-hosted knowledge graph for AI agents.
Python framework for building temporal knowledge graphs that track how facts change over time, used as memory and context for AI agents.
An open-source long-term memory layer for AI agents that stores and recalls information across sessions via a Python SDK, REST API, and MCP server.
A lightweight knowledge-graph RAG framework and server that indexes documents into entities and relations for retrieval-augmented LLM answers.