{"data":{"slug":"osu-nlp-group-hipporag","name":"HippoRAG","tagline":"A RAG framework enabling LLMs to integrate knowledge from external documents","github_url":"https://github.com/OSU-NLP-Group/HippoRAG","owner":"OSU-NLP-Group","repo":"HippoRAG","owner_avatar_url":"https://avatars.githubusercontent.com/u/92067480?v=4","primary_language":"Python","stars":4012,"forks":428,"topics":[],"archived":false,"github_pushed_at":"2026-09-03T12:15:39+00:00","maintenance_label":"Active","stars_delta_30d":110,"url":"https://www.graphcanon.com/tools/osu-nlp-group-hipporag","markdown_url":"https://www.graphcanon.com/tools/osu-nlp-group-hipporag.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/osu-nlp-group-hipporag","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=osu-nlp-group-hipporag","description":"[NeurIPS'24] HippoRAG is a novel RAG framework inspired by human long-term memory that enables LLMs to continuously integrate knowledge across external documents. RAG + Knowledge Graphs + Personalized PageRank.","homepage_url":"https://arxiv.org/abs/2405.14831","license":"MIT","open_issues":9,"watchers":28,"ai_summary":"HippoRAG is a RAG framework that integrates knowledge from external documents into LLMs, inspired by human long-term memory. It supports personalized page rank and knowledge graphs.","readme_excerpt":"## Installation\n\nUse Conda or `uv` to create a Python 3.10 environment. A project-local `.venv` is recommended for development.\n\n```sh\nconda create -n hipporag python=3.10\nconda activate hipporag\npip install hipporag\n```\nSet only the environment variables required by the models you use:\n\n```sh\nexport CUDA_VISIBLE_DEVICES=0,1,2,3\nexport HF_HOME=<path to Huggingface home directory>\nexport OPENAI_API_KEY=<your openai api key>   # if you want to use OpenAI model\n\nconda activate hipporag\n```\n\nFor a project-local environment managed by `uv`:\n\n```sh\nuv venv --python 3.10 .venv\nsource .venv/bin/activate\nuv pip install -e .\n```\n\nInstall optional local-model support only when needed, for example `uv pip install -e '.[vllm]'` or `uv pip install -e '.[gritlm]'`.\n\nHippoRAG supports `openai>=3.3.1,<4`: compatible 3.x client updates are accepted,\nwhile a new major version requires an explicit compatibility review. To reproduce\nthe minimum supported SDK baseline, apply the optional constraint without changing\nthe library's public dependency range:\n\n```sh\nuv pip install -r requirements.txt -c constraints/openai-tested.txt\n```\n\nSDK compatibility should be checked in separate clean environments against both\nthe minimum baseline above and the newest allowed release. The latter can be\ninstalled and tested with:\n\n```sh\nuv pip install -r requirements.txt --upgrade-package openai\nPYTHONPATH=src python -m unittest tests.test_openai_sdk_compat\n```\n\n---\n\n### Local Deployment (vLLM)\n\nThis simple example will illustrate how to use `hipporag` with any vLLM-compatible locally deployed LLM.\n\n1. Run a local [OpenAI-compatible vLLM server](https://docs.vllm.ai/en/latest/getting_started/quickstart.html#quickstart-online) with specified GPUs (make sure you leave enough memory for your embedding model).\n\nKeep `VLLM_WORKER_MULTIPROC_METHOD=spawn` when running vLLM with multiple GPUs; it makes the required multiprocessing mode explicit and avoids CUDA initialization problems with forked workers.\n\n```sh\nexport CUDA_VISIBLE_DEVICES=0,1\nexport VLLM_WORKER_MULTIPROC_METHOD=spawn\nexport HF_HOME=<path to Huggingface home directory>\n\nconda activate hipporag  # vllm should be in this environment","github_created_at":"2024-05-23T23:07:16+00:00","created_at":"2026-07-11T23:07:05.001663+00:00","updated_at":"2026-09-20T04:29:06.09449+00:00","categories":[{"slug":"data-retrieval","name":"Data & Retrieval","url":"https://www.graphcanon.com/categories/data-retrieval","markdown_url":"https://www.graphcanon.com/categories/data-retrieval.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/data-retrieval"},{"slug":"llm-frameworks","name":"LLM Frameworks","url":"https://www.graphcanon.com/categories/llm-frameworks","markdown_url":"https://www.graphcanon.com/categories/llm-frameworks.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/llm-frameworks"}],"tags":[{"slug":"external-documents","name":"external documents"},{"slug":"knowledge-graphs","name":"knowledge graphs"},{"slug":"knowledge-integration","name":"knowledge integration"},{"slug":"llms","name":"llms"},{"slug":"neurips-24","name":"neurips'24"},{"slug":"personalized-pagerank","name":"personalized pagerank"},{"slug":"rag","name":"rag"}],"trust":{"provenance":{"is_fork":false,"github_id":805115184,"owner_type":"Organization","methodology":"github_public_v1","parent_repo":null,"near_duplicate_slugs":[]},"computed_at":"2026-09-18T08:12:53.338Z","maintenance":{"label":"Active","score":82,"methodology":"github_public_v1","releases_90d":0,"days_since_push":14,"last_release_at":"2025-02-27T17:29:48Z","stars_delta_30d":110,"open_issues_delta_30d":2},"security_summary":{"status":"findings","scanner":"osv@v1","low_count":96,"high_count":0,"last_scan_at":"2026-09-18T08:12:55.697Z","medium_count":0,"scan_profile":"deps","critical_count":0}},"capability_facts":{"scan":{"source":"repo_scan","observed_at":"2026-09-18T08:12:52.199Z"},"languages":{"value":["python"],"source":"github.language+pyproject.toml","observed_at":"2026-09-18T08:12:52.199Z"},"license_spdx":{"value":"MIT","source":"github.license","observed_at":"2026-09-18T08:12:52.199Z"}},"decision_facts":{"hosting":null,"pricing":null,"requirements":{"notes":["Ensure you have Python 3.10 installed.","Set environment variables such as `CUDA_VISIBLE_DEVICES`, `HF_HOME`, and `OPENAI_API_KEY` as needed.","Install HippoRAG using Conda or `uv` for a project-local environment."],"min_ram_gb":null,"requires_docker":false},"constraints":{"min_ram_gb":null,"requires_docker":false},"when_to_use":["When you need a framework that integrates knowledge from external documents into LLMs in a manner inspired by human long-term memory.","If your project requires the use of personalized page rank and knowledge graphs for enhancing the retrieval and integration of knowledge.","When you are working with Python 3.10 and want to leverage a project-local environment for development, managed by Conda or `uv`."],"when_not_to_use":["If your project does not require the integration of knowledge from external documents into LLMs in a manner inspired by human long-term memory.","When personalized page rank and knowledge graphs are not necessary for your project's knowledge retrieval and integration needs.","If you are not using Python 3.10 or do not wish to manage a project-local environment with Conda or `uv`."],"source":"enrich:decision_facts","observed_at":"2026-09-18T09:21:39.635Z"},"constraint_facets":{"min_ram_gb":null,"requires_docker":false},"decision_summary":[{"label":"Requirements","value":"Ensure you have Python 3.10 installed.; Set environment variables such as `CUDA_VISIBLE_DEVICES`, `HF_HOME`, and `OPENAI_API_KEY` as needed.; Install HippoRAG using Conda or `uv` for a project-local environment."},{"label":"Adopt for","value":"HippoRAG is a RAG framework that integrates knowledge from external documents into LLMs, inspired by human long-term memory, and supports personalized page rank and knowledge graphs."}]}}