A modular graph-based Retrieval-Augmented Generation (RAG) system
Go to file
Nathan Evans 6c86b0a7bb
Some checks failed
gh-pages / build (push) Has been cancelled
Python CI / python-ci (ubuntu-latest, 3.10) (push) Has been cancelled
Python CI / python-ci (ubuntu-latest, 3.11) (push) Has been cancelled
Python CI / python-ci (windows-latest, 3.10) (push) Has been cancelled
Python CI / python-ci (windows-latest, 3.11) (push) Has been cancelled
Python Integration Tests / python-ci (ubuntu-latest, 3.10) (push) Has been cancelled
Python Integration Tests / python-ci (windows-latest, 3.10) (push) Has been cancelled
Python Notebook Tests / python-ci (ubuntu-latest, 3.10) (push) Has been cancelled
Python Notebook Tests / python-ci (windows-latest, 3.10) (push) Has been cancelled
Python Publish (pypi) / Upload release to PyPI (push) Has been cancelled
Python Smoke Tests / python-ci (ubuntu-latest, 3.10) (push) Has been cancelled
Python Smoke Tests / python-ci (windows-latest, 3.10) (push) Has been cancelled
Spellcheck / spellcheck (push) Has been cancelled
Init config cleanup (#2084)
* Spruce up init_config output, including LiteLLM default

* Remove deployment_name requirement for Azure

* Semver

* Add model_provider

* Add default model_provider

* Remove OBE test

* Update minimal config for tests

* Add model_provider to verb tests
2025-10-06 12:06:41 -07:00
.github Litellm auth fix (#2083) 2025-10-06 10:54:21 -07:00
.semversioner Init config cleanup (#2084) 2025-10-06 12:06:41 -07:00
.vscode Custom vector store schema implementation (#2062) 2025-09-19 10:11:34 -07:00
docs Litellm auth fix (#2083) 2025-10-06 10:54:21 -07:00
examples_notebooks Switch from Poetry to uv for package management (#2008) 2025-08-13 18:57:25 -06:00
graphrag Init config cleanup (#2084) 2025-10-06 12:06:41 -07:00
scripts Switch from Poetry to uv for package management (#2008) 2025-08-13 18:57:25 -06:00
tests Init config cleanup (#2084) 2025-10-06 12:06:41 -07:00
unified-search-app Switch from Poetry to uv for package management (#2008) 2025-08-13 18:57:25 -06:00
.gitattributes move mkdocs-typer to devdeps (#1331) 2024-10-30 14:49:30 -07:00
.gitignore Switch from Poetry to uv for package management (#2008) 2025-08-13 18:57:25 -06:00
.vsts-ci.yml Initial Release 2024-07-01 15:25:30 -06:00
breaking-changes.md Update docs for 2.0+ (#1984) 2025-06-23 13:49:47 -07:00
CHANGELOG.md Release v2.6.0 (#2068) 2025-09-22 16:16:54 -06:00
CODE_OF_CONDUCT.md Initial Release 2024-07-01 15:25:30 -06:00
CODEOWNERS Stabilize smoke tests for query community context building (#908) 2024-08-12 13:17:40 -06:00
CONTRIBUTING.md Switch from Poetry to uv for package management (#2008) 2025-08-13 18:57:25 -06:00
cspell.config.yaml Fix/notebooks (#1614) 2025-01-13 17:41:39 -06:00
DEVELOPING.md Litellm auth fix (#2083) 2025-10-06 10:54:21 -07:00
dictionary.txt Tokenizer (#2051) 2025-09-22 13:55:14 -06:00
LICENSE Initial Release 2024-07-01 15:25:30 -06:00
mkdocs.yaml Docs/2.6.0 (#2070) 2025-09-23 14:48:28 -07:00
pyproject.toml Release v2.6.0 (#2068) 2025-09-22 16:16:54 -06:00
RAI_TRANSPARENCY.md Initial Release 2024-07-01 15:25:30 -06:00
README.md Update docs for 2.0+ (#1984) 2025-06-23 13:49:47 -07:00
SECURITY.md Initial Release 2024-07-01 15:25:30 -06:00
SUPPORT.md Initial Release 2024-07-01 15:25:30 -06:00
uv.lock Litellm auth fix (#2083) 2025-10-06 10:54:21 -07:00

GraphRAG

👉 Microsoft Research Blog Post
👉 Read the docs
👉 GraphRAG Arxiv

Overview

The GraphRAG project is a data pipeline and transformation suite that is designed to extract meaningful, structured data from unstructured text using the power of LLMs.

To learn more about GraphRAG and how it can be used to enhance your LLM's ability to reason about your private data, please visit the Microsoft Research Blog Post.

Quickstart

To get started with the GraphRAG system we recommend trying the command line quickstart.

Repository Guidance

This repository presents a methodology for using knowledge graph memory structures to enhance LLM outputs. Please note that the provided code serves as a demonstration and is not an officially supported Microsoft offering.

⚠️ Warning: GraphRAG indexing can be an expensive operation, please read all of the documentation to understand the process and costs involved, and start small.

Diving Deeper

Prompt Tuning

Using GraphRAG with your data out of the box may not yield the best possible results. We strongly recommend to fine-tune your prompts following the Prompt Tuning Guide in our documentation.

Versioning

Please see the breaking changes document for notes on our approach to versioning the project.

Always run graphrag init --root [path] --force between minor version bumps to ensure you have the latest config format. Run the provided migration notebook between major version bumps if you want to avoid re-indexing prior datasets. Note that this will overwrite your configuration and prompts, so backup if necessary.

Responsible AI FAQ

See RAI_TRANSPARENCY.md

Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.

Privacy

Microsoft Privacy Statement