What problem does it solve?
GraphRAG retrieval in Neo4j can be difficult to wire correctly, especially when choosing the right retriever type, creating the required indexes, and composing safe Cypher-based graph traversal after vector search.
Core Features & Use Cases
- Retriever selection & configuration: Choose the right retriever (VectorRetriever, HybridRetriever, VectorCypherRetriever, HybridCypherRetriever, Text2CypherRetriever, ToolsRetriever, and external vector retriever variants) based on whether you have fulltext, need graph traversal, or want LLM-routed retrieval.
- Graph-augmented retrieval logic: Define a retrieval_query Cypher fragment with automatic node and score injection, plus parameterized query_params and pre-filtering via filters.
- Production-grade pipeline wiring: Assemble GraphRAG(retriever=..., llm=...) and run .search() with support for many LLM and embedder providers, plus retrieval quality debugging with return_context and response_fallback.
- Index prerequisites & compatibility: Guides vector + fulltext index setup for hybrid retrievers, supports neo4j-graphrag v1.7+ (neo4j-genai rename), and aligns with Neo4j driver/Neo4j version requirements.
Quick Start
Install neo4j-graphrag, create the required vector (and fulltext for hybrid) indexes, write a retrieval_query that returns node and score, then run GraphRAG.search to get graph-augmented answers.