This website uses cookies

Read our Privacy policy and Terms of use for more information.

Definition: GraphRAG is a retrieval-augmented generation approach designed for questions that depend on relationships across many passages or on themes spanning an entire corpus. Microsoft’s implementation builds an entity graph and hierarchical community summaries from source documents, then combines graph-derived context with the original text at query time. For the basics of retrieval-augmented generation, start with our RAG overview.

GraphRAG is not a new reasoning capability for a language model, and it does not replace fine-tuning. It is an indexing and retrieval pipeline. Its main advantage appears when ordinary vector search can find individually relevant passages but cannot easily assemble the connections between them. Tooling options are compared in RAG tools.

Microsoft researchers introduced the approach publicly in early 2024, published the paper in April 2024, and released the code on GitHub in July 2024. The implementation is therefore available today under the MIT license. However, the official repository now says that the project is largely in maintenance mode: new features and unsolicited pull requests are not being accepted, while bug fixes and dependency updates continue.

What problem does GraphRAG solve?

Standard RAG usually divides documents into chunks, converts them into embeddings, and retrieves the chunks that are most similar to a user’s question. This works well when the answer is stated in one or a few passages.

The weakness appears with corpus-level questions such as “What are the main themes in these reports?” or with questions that require following relationships across documents. A relevant passage may not use the same language as the query, and no single chunk may contain the complete answer. Microsoft’s paper frames this as the difference between local retrieval and global, query-focused summarization.

GraphRAG adds a structured representation of the corpus. It extracts entities and relationships, groups connected entities into communities, and summarizes those communities. The system can then retrieve a local neighborhood, reason over community-level reports, or combine both forms of context.

How Microsoft GraphRAG indexes a corpus

The official indexing pipeline performs several stages:

  1. Split documents into text units. Source material is divided into chunks that remain linked to the original documents.

  2. Extract entities and relationships. An LLM identifies items such as people, organizations, places, concepts, and the relationships between them. The pipeline can also extract claims, represented as optional covariates; claim extraction is not required for every index.

  3. Summarize graph elements. Repeated descriptions of entities and relationships are consolidated into clearer summaries.

  4. Build the entity graph. Entities become nodes, relationships become edges, and supporting text units preserve provenance back to the source material.

  5. Detect hierarchical communities. GraphRAG uses Leiden community detection to group densely connected nodes at several levels.

  6. Generate community reports. An LLM summarizes each community so the system has compact descriptions of important topics, findings, and connections.

  7. Create embeddings and retrieval outputs. The resulting entities, relationships, reports, text units, and optional claims are stored for the query engine.

This index is produced with LLM calls, not by a free deterministic graph conversion. The quality of the graph depends on the source text, chunking, extraction prompts, model behavior, entity resolution, and summarization quality.

The four GraphRAG query modes

The current Microsoft GraphRAG query engine documents four main modes. They are not interchangeable.

Local search is intended for questions about specific entities. It identifies relevant entities and expands around them using connected relationships, community reports, text units, and optional claims. This mode is useful when the answer requires detail about a person, company, event, or concept and its immediate neighborhood.

Global search is designed for questions about the corpus as a whole. It runs a map-reduce process over community reports: intermediate responses are generated from relevant reports and then combined into a final answer. This is the mode most closely associated with the original paper’s global sensemaking results, and Microsoft’s documentation explicitly describes it as resource-intensive.

DRIFT, introduced in October 2024, combines global breadth with local detail. It begins with relevant community information, produces an initial direction, and follows up with more targeted exploration. The goal is to answer questions that need both a high-level view and specific supporting evidence.

Basic search is the conventional vector-search baseline. It retrieves the top matching text chunks without using the graph’s community structure. It is useful for comparison and for straightforward questions where graph construction would add little value.

Where GraphRAG is useful

GraphRAG is most compelling when structure across documents matters:

  • Whole-corpus sensemaking: identifying themes, recurring patterns, or contrasting positions across a large collection.

  • Connected evidence: following relationships among organizations, people, events, technologies, or claims.

  • Investigations and intelligence analysis: surfacing indirect connections that may be scattered across reports.

  • Literature and research reviews: mapping concepts, authors, methods, and disagreements across papers.

  • Enterprise knowledge discovery: exploring how projects, teams, decisions, and documents relate to one another.

It is often unnecessary for a small corpus, simple document lookup, or a workload dominated by questions that already map cleanly to individual passages. In those cases, well-tuned vector or hybrid retrieval is usually easier to build and operate.

Costs and limitations

Index construction can be expensive. GraphRAG uses repeated LLM calls for extraction and summarization. Microsoft’s repository warns users to begin with a small dataset and understand the indexing cost before scaling.

Global search is not cheap. Community reports make corpus-level questions tractable, but the map-reduce query process can consume substantial context and model calls. Microsoft reported better token efficiency than summarizing raw source text hierarchically in its experiments; that does not mean GraphRAG is generally cheaper than standard vector RAG.

The graph can be wrong. Missed entities, duplicate identities, incorrect relationships, and weak summaries can propagate into retrieval. Evaluation must cover both the graph and the generated answers.

Updates require pipeline work. GraphRAG does not dynamically learn every time a document changes. New or revised material must be incorporated into the index, and community structure or reports may need to be regenerated. Frequently changing corpora therefore require a deliberate refresh strategy.

The official project has limited development momentum. Microsoft GraphRAG remains usable as an open-source reference implementation, and version 3.1.2 was released on August 21, 2026 with fixes and dependency updates. But the repository’s maintenance-mode notice means teams should not assume that major new capabilities will arrive there. The project also describes the code as a demonstration rather than an officially supported Microsoft product.

GraphRAG versus knowledge-graph RAG

These terms are often used loosely. GraphRAG, capitalized as a project name, refers to Microsoft’s specific pipeline: LLM-based graph extraction, hierarchical communities, community reports, and its Local, Global, DRIFT, and Basic query modes.

Knowledge-graph RAG or graph-augmented RAG is the broader category. Other systems may retrieve from an existing enterprise knowledge graph, translate questions into graph queries, combine vector and graph databases, or maintain a temporal graph. They share the idea of using relationships as retrieval context, but they do not necessarily implement Microsoft’s indexing or search design. We map the full landscape in types of RAG, including LongRAG.

GraphRAG timeline

  • February 2024: Microsoft Research publicly describes GraphRAG for discovery over narrative private data.

  • April 2024: the “From Local to Global” paper presents entity graphs, hierarchical communities, and community summaries for global questions.

  • July 2, 2024: Microsoft releases the GraphRAG code on GitHub under the MIT license.

  • October 31, 2024: Microsoft introduces DRIFT search, combining global and local retrieval.

  • November 15, 2024: Microsoft publishes dynamic community selection for more efficient global search.

  • November 25, 2024: Microsoft presents LazyGraphRAG, a separate research direction focused on improving quality and cost.

  • August 21, 2026: GraphRAG 3.1.2 ships as a maintenance release; the repository remains largely in maintenance mode.

Official GraphRAG resources

FAQ

What is GraphRAG?

GraphRAG is a retrieval-augmented generation approach that extracts entities and relationships from documents, organizes them into a graph and hierarchical communities, and uses graph-derived context with source text to answer connected or corpus-level questions.

How is GraphRAG different from standard RAG?

Standard RAG usually retrieves chunks by vector similarity. GraphRAG adds entities, relationships, communities, and community reports, which can improve answers that depend on connections across documents or on themes spanning the corpus.

What are the four GraphRAG query modes?

Local search explores an entity and its neighborhood; Global search uses map-reduce over community reports; DRIFT combines broad community context with targeted follow-up exploration; and Basic search provides conventional top-k vector retrieval.

Is Microsoft GraphRAG still actively developed?

The repository is largely in maintenance mode. Microsoft continues to publish bug fixes and dependency updates, but it is not accepting new features or unsolicited pull requests, and the code is presented as a demonstration rather than an officially supported product.

Is GraphRAG cheaper than vector RAG?

Usually not. GraphRAG adds LLM-based extraction, summarization, graph construction, and potentially resource-intensive global search; its reported efficiency gains are relative to raw-corpus summarization for global questions, not a general cost advantage over vector RAG.

Reply

Avatar

or to participate

Keep Reading

View more
caret-right