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.2

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.2
File Size Uploaded
flexible_graphrag-0.8.2.tar.gz 889.9 kB Details

Built distribution (wheel)

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

Total release size: 2.0 MB

Release files / flexible_graphrag-0.8.2.tar.gz

Download URL flexible_graphrag-0.8.2.tar.gz
Size 889.9 kB
Tags Source
SHA-256 checksum
How to use checksums
1d2e5345d813a82028f764941cd02811ef80935266a8910357ba60a82c8fdfb3
BLAKE2b-256 checksum
How to use checksums
607d04a6326daea899d2e531b86e41b329536e6afe5ef69d4f81e70b6ae26dd5
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.2-py3-none-any.whl

Download URL flexible_graphrag-0.8.2-py3-none-any.whl
Size 1.1 MB
Tags Python 3
SHA-256 checksum
How to use checksums
6639491d0aa0901b7cadfd8a14989f2cf60333c280ce0de3e3b5b483b86e2c46
BLAKE2b-256 checksum
How to use checksums
b807534874cbde28ff22ec6a170787613bafd14bd5f0ed5e5818417e2da89ae9
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

This release

0.8.2 This release

2 release files

0.8.1

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