Derek Worthen 6b4de3d841
Index API (#953)
* Initial Index API

- Implement main API entry point: build_index
- Rely on GraphRagConfig instead of PipelineConfig
    - This unifies the API signature with the
    promt_tune and query API entry points
- Derive cache settings, config, and resuming from
    the config and other arguments to
    simplify/reduce arguments to build_index
- Add preflight config file validations
- Add semver change

* fix smoke tests

* fix smoke tests

* Use asyncio

* Add e2e artifacts in GH actions

* Remove unnecessary E2E test, and add skip_validations flag to cli

* Nicer imports

* Reorganize API functions.

* Add license headers and module docstrings

* Fix ignored ruff rule

---------

Co-authored-by: Alonso Guevara <alonsog@microsoft.com>
2024-08-20 15:42:20 -06:00
2024-08-20 15:42:20 -06:00
2024-08-20 15:42:20 -06:00
2024-07-01 15:25:30 -06:00
2024-08-20 15:42:20 -06:00
2024-08-20 15:42:20 -06:00
2024-07-01 15:25:30 -06:00
2024-08-12 18:14:52 -06:00
2024-07-01 15:25:30 -06:00
2024-07-01 15:25:30 -06:00
2024-07-01 15:25:30 -06:00
2024-07-01 15:25:30 -06:00
2024-07-01 15:25:30 -06:00
2024-07-01 15:25:30 -06:00
2024-08-06 16:31:47 -07:00
2024-07-01 15:25:30 -06:00
2024-07-01 15:25:30 -06:00

GraphRAG

👉 Use the GraphRAG Accelerator solution
👉 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 Solution Accelerator package. This provides a user-friendly end-to-end experience with Azure resources.

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.

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

Description
A modular graph-based Retrieval-Augmented Generation (RAG) system
Readme MIT 276 MiB
Languages
Python 96%
Jupyter Notebook 3.9%