Developer tools#RAG#Data analysis
vector-graph-rag: Zilliz's graph RAG on pure vectors, two-stage Jev tops multi-hop recall
Zilliz's open Graph RAG stores entities, relations and text as vectors in Milvus — no graph database — and two-stage Jev retrieval hits 86.61% Recall@5. MIT.
Project facts
GitHub Ecosystem- License
- MIT
- Language
- Python
- Stars
- 271
- Data checked
- 2026-11-07
Snapshot figures reflect the check date and may change over time.
Multi-hop Q&A is the hard part of knowledge-base retrieval: answers scattered across documents, connected by clues the question never mentions. Graph RAG threads those relations with a knowledge graph, but graph-walked candidates handed to a large model for screening slow every query down. vector-graph-rag, open-sourced by Zilliz (MIT, Python, 271 stars as of November 7, 2026), proposes a counterintuitive architecture: no graph database — entities, relations and source text all live as vectors in Milvus, retrieved by vector search plus ID joins; and the screening stage is two-stage Jev: first scoring relations, then ranking passages. On the MuSiQue and 2Wiki multi-hop benchmarks (1,000 questions each), the two-stage mode averages 86.61% Recall@5 — beating the compared LLM-reranking approaches at lower call latency, a Pareto frontier in both quality and speed.
Core features
- No graph database: points, edges and source text in one Milvus store (Milvus Lite single-file by default), no Neo4j dependency.
- Two-stage Jev retrieval: vector-recall entities, expand the subgraph, Jev filters useful relations; then fetch source passages, merge direct-vector hits, dedupe, and Jev ranks the evidence.
- Optional single-pass generative reranking: a lower-latency mode behind the same interface.
- Knowledge-intensive friendly: tuned for fact-dense corpora — legal, finance, medical, literature.
- Zero-config start: pip install works out of the box; benchmark reproduction code ships in the repo.
Typical use cases
- Enterprise multi-hop Q&A: cross-document reasoning (drug → side effects, contract → breach clauses) without deploying a graph database.
- A retrieval-layer upgrade: existing Milvus users add a relation index and test Graph RAG quality in place.
- A research baseline: Jev scoring and benchmark scripts are fully open, so reproduction is cheap.
Quick start
pip install vector-graph-rag
Milvus Lite single-file works by default; follow the README to index and ask. The benchmarks reproduce from the repo’s evaluation/ directory, and the two-stage Jev mode takes an external decision-model endpoint you point it at — the paper-style eval used Jev 1.14 and 1.13, with 1.13 trading a little recall for visibly lower call latency.
Summary
vector-graph-rag fits teams already on Milvus that want multi-hop reasoning over their knowledge base; very large graph traversals or turnkey enterprise Graph RAG suites are not what it is — it remains a lean research project (271 stars, created February 2026). Facts and limits: MIT, Python, tied to the Milvus ecosystem (Jev is its decision-model service); the Pareto-frontier claim is from the official MuSiQue/2Wiki benchmarks, so re-test on your own corpus. It joins LEANN (compute-don’t-store vectors) and SAG-Wiki (zero-LLM indexing) in the local-RAG engineering family — each removes one fixed cost of traditional RAG: the graph database, the vector store, the embedding calls.