Skip to main content

Flexible GraphRAG

Flexible GraphRAG is an open source AI context platform supporting a document processing pipeline (Docling, LlamaParse, or LiteParse), knowledge graph auto-building, ontologies, schemas, many LLM providers, GraphRAG and RAG, hybrid semantic search (fulltext, vector, property graph, RDF/SPARQL), AI query, and AI chat. The backend is Python with LlamaIndex and LangChain as peer frameworks. LlamaIndex is the default for each pipeline stage; LangChain can be selected per stage in environment configuration. The API is a REST FastAPI service. Angular, React, and Vue TypeScript frontends and an MCP server are included. The stack supports 14 data sources (10 with incremental auto-sync), 15 property graph databases, 4 RDF triple stores (Apache Jena Fuseki, Ontotext GraphDB, Oxigraph, Amazon Neptune RDF), 10 vector databases, OpenSearch / Elasticsearch / BM25 search, Alfresco, and Nuxeo. Databases and dashboards can be enabled with the provided Docker Compose layout. Optionally, the ingest pipeline, hybrid search, and AI query can run through customizable Langflow visual flows (12 custom Langflow components). As a further option, ingest can run on a CocoIndex (Rust engine) pipeline (PIPELINE_BACKEND=cocoindex) that reuses the same sources, targets, parsers and KG extractors, adding step-level memoization, automatic delete reconciliation, custom KG extractors, and entity resolution. A meeting-notes example is included.

Quick install (PyPI):

uv pip install flexible-graphrag

Then copy env-sample.txt to .env, set your LLM API key (e.g. OPENAI_API_KEY=...) and any other provider config, and run flexible-graphrag to start the API server. If you use ontology schemas, the schemas/ directory lives at the repository root (one level above flexible-graphrag/), so .env paths use ../schemas/... — matching env-sample.txt. For a PyPI install, copy schemas/ to the parent of your working directory so the same paths apply. See the RDF Ontology Examples and Configuration docs page for path options and examples. This gives you a LlamaIndex-only setup; for LangChain or mixed LlamaIndex/LangChain per-stage configuration see the Prerequisites, Setup, and Framework Config sections of the full README, or the Framework Configuration docs page.

Optional dependency groups (langchain, RDF extras, observability, and more) are available. For Docker services, frontend installs, source checkout setup, and optional extras (which involve extras-overrides.txt), refer to the Prerequisites and Setup sections of the full README and documentation linked below.

Metadata

Release files for flexible-graphrag 0.8.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for flexible-graphrag 0.8.1
File Size Uploaded
flexible_graphrag-0.8.1.tar.gz 878.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for flexible-graphrag 0.8.1
File Interpreter ABI Platform
flexible_graphrag-0.8.1-py3-none-any.whl Python 3 none any Details

Total release size: 2.0 MB

Release files / flexible_graphrag-0.8.1.tar.gz

Download URL flexible_graphrag-0.8.1.tar.gz
Size 878.9 kB
Tags Source
SHA-256 checksum
How to use checksums
65a75d2b941ed07b607d1d0c70e3f11d1b0851ce4f44492b4957f960a9cdbd13
BLAKE2b-256 checksum
How to use checksums
fd2f75f3272d619fc16e2cec9775cdd90adfd2141b9fe21d4c19a8aaff21d92a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.6 {"installer":{"name":"uv","version":"0.12.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / flexible_graphrag-0.8.1-py3-none-any.whl

Download URL flexible_graphrag-0.8.1-py3-none-any.whl
Size 1.1 MB
Tags Python 3
SHA-256 checksum
How to use checksums
652571b48e52950c504982dc6603bbbdb4b03cc05353024a9ebd6e759e2938c4
BLAKE2b-256 checksum
How to use checksums
5fe2acbd52b251aedf4936a8c70216f039048416ea71e4829fde3c1206c6a742
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.6 {"installer":{"name":"uv","version":"0.12.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

0.8.3

2 release files

0.8.2

2 release files

This release

0.8.1 This release

2 release files

0.8.0

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page