graphrag
GraphRAG: A graph-based retrieval-augmented generation (RAG) system.
Decision gist · record as of 2026-08-14
Yes, if you need to build a graph-based RAG system over unstructured text and are willing to invest in prompt tuning and cost management. The package is actively maintained, has no known vulnerabilities, and is backed by Microsoft Research. The 25 dependencies and indexing costs are real trade-offs; start with the documentation and a small dataset to validate the approach before scaling. Not recommended if you need a lightweight, zero-configuration RAG solution.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.11 or later (supports 3.11, 3.12, 3.13).
- Indexing operations can be expensive; review documentation on costs and start with small datasets.
- Azure credentials may be needed depending on your storage and LLM provider configuration.
License · maintenance · safety
MIT (permissive) — MIT license permits commercial and private use with minimal restrictions—you may use, modify, and distribute GraphRAG freely provided you include the license notice.
last release 2026-07-18 (27 days) · last repo commit 2026-08-14 · 35,499 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 85,127 downloads/mo, #13,947 on PyPI
Alternatives
Verify before relying
pip install graphrag
from graphrag.index import run_pipeline_async
import asyncio
await run_pipeline_async(root_dir="./your_data")- Whether the 25 runtime dependencies are all required for basic usage or if some are optional for specific features.
- Specific LLM provider integrations supported beyond Azure (e.g., OpenAI, local models).
- Performance characteristics and typical indexing time/cost for datasets of different sizes.
- Whether prompt tuning is mandatory for acceptable results on typical datasets or optional for refinement.
What it is and what it does
GraphRAG is a data pipeline and transformation suite from Microsoft Research that converts unstructured narrative text into structured knowledge graphs using LLM reasoning. It is designed to enhance retrieval-augmented generation (RAG) systems by giving LLMs a memory structure—a graph of entities and relationships—that helps them reason more accurately over private or domain-specific data.
The system takes raw text as input, uses LLMs to extract entities, relationships, and hierarchical summaries, and builds a queryable knowledge graph. This graph can then be queried to retrieve relevant context for LLM prompts, improving answer quality and reasoning over complex documents. The package includes a command-line interface and Python API, depends on Azure cloud services for some deployments, and requires careful tuning of prompts and configuration for best results. The documentation warns that indexing can be costly and recommends starting small and reading the full documentation before large-scale use.
Use it for
- Extract structured knowledge from large document collections (research papers, internal wikis, legal contracts) to enable semantic search and reasoning.
- Build a queryable entity-relationship graph from narrative text to support question-answering systems over private data.
- Enhance RAG systems with hierarchical summaries and relationship context to improve LLM reasoning on complex multi-document queries.
- Organize and index domain-specific corpora (medical records, technical documentation, news archives) for downstream LLM applications.
- Prototype knowledge graph construction pipelines where LLM-driven extraction replaces manual annotation.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need to build a graph-based RAG system over unstructured text and are willing to invest in prompt tuning and cost management.
The package is actively maintained, has no known vulnerabilities, and is backed by Microsoft Research. The 25 dependencies and indexing costs are real trade-offs; start with the documentation and a small dataset to validate the approach before scaling. Not recommended if you need a lightweight, zero-configuration RAG solution.
Install
graphrag on PyPI
Before you install
Low friction install with a pure-Python wheel. Active maintenance (last commit 2026-08-14, 27 days since release). Requires 25 runtime dependencies including Azure cloud SDKs, NLP libraries (spacy, nltk), and data processing tools (pandas, networkx); this is a substantial dependency footprint but all are established packages.
Requires Python 3.11 or later (supports 3.11, 3.12, 3.13). Indexing operations can be expensive; review documentation on costs and start with small datasets. Azure credentials may be needed depending on your storage and LLM provider configuration.
License in practice
MIT license permits commercial and private use with minimal restrictions—you may use, modify, and distribute GraphRAG freely provided you include the license notice.
Quickstart
pip install graphrag
from graphrag.index import run_pipeline_async
import asyncio
await run_pipeline_async(root_dir="./your_data")
Verify before relying
- Whether the 25 runtime dependencies are all required for basic usage or if some are optional for specific features.
- Specific LLM provider integrations supported beyond Azure (e.g., OpenAI, local models).
- Performance characteristics and typical indexing time/cost for datasets of different sizes.
- Whether prompt tuning is mandatory for acceptable results on typical datasets or optional for refinement.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release <3.14,>=3.11 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 25 packagesazure-identityazure-search-documentsazure-storage-blobblisdevtoolsgraphrag-cachegraphrag-chunkinggraphrag-commongraphrag-inputgraphrag-llmgraphrag-storagegraphrag-vectorsgraspologic-nativejson-repairnetworkxnltknumpypandaspyarrowpydanticspacytextblobtqdmtypertyping-extensions |
| Maintenance | Actively maintained 27 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 85,127 / month, #13,947 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Programming Language :: Python :: 3Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13 |
Evidence: graphrag-3.1.1-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “knowledge graph extraction from text”
- graphragGraphRAG extracts structured knowledge graphs from unstructured text…
- neo4j-graphragBuilds graph retrieval-augmented generation (GraphRAG) applications…
- deepsearch-glmExtracts entities, relations, and linguistic structures from text and…
Give your agent the search over MCP, or paste the wish link into any chat.
More Artificial Intelligence packages
LiteLLM provides a unified Python interface to call 100+ LLM providers (OpenAI, Anthropic, Gemini, Bedrock, Azure, and others) using OpenAI-compatible API format, available as both a Python SDK and a self-hosted AI Gateway proxy server.
Install it if you need to work with multiple LLM providers or want to centralize LLM routing in your organization.
Client library and CLI tool for downloading, uploading, and managing models, datasets, and repositories on the Hugging Face Hub platform.
Install it if you work with Hugging Face Hub models or datasets.
LangChain provides a framework for building agents and LLM-powered applications by composing language models, tools, and memory through a unified API that abstracts over multiple model providers.
hf-xet provides chunk-based deduplication and efficient file transfer for the Hugging Face Hub, enabling faster uploads and downloads of large files with local disk caching.
Tokenizers converts raw text into token sequences for NLP models, with support for training custom vocabularies and using pre-built tokenizers (BPE, WordPiece) optimized for speed via Rust.
Transformers provides a unified framework for loading, fine-tuning, and running state-of-the-art pretrained models across text, vision, audio, video, and multimodal tasks using PyTorch, JAX, or TensorFlow.
Install it if you need to run or train any transformer-based model for NLP, vision, audio, or multimodal tasks.
See also embedchain · lightrag-hku · neo4j-graphrag · unstructured-ingest · langextract · graphiti-core · graph-retriever · pytextrank · langchain-graph-retriever · deepsearch-glm