How gurram-rohith/graphrag-backend works
This backend provides GraphRAG over source repositories: it accepts a repository URL, clones and filters files, parses and summarizes supported code, stores graph and embedding data, then retrieves relevant context to stream an answer. It also exposes caller/callee lookup endpoints. The API is the orchestration layer; Neo4j and NVIDIA-hosted models provide storage and language/embedding services. Some pipeline code is omitted from the API excerpt, so the API-to-parser link is marked unverified.
Main entry points: api.py FastAPI endpoints · parser.py Parse and summarize · query_engine.py Cypher generation · ingest.py Clone and filter
Components 9
API orchestration
- FastAPI endpoints
api.py
Repository ingestion
- Clone and filter
ingest.py
Code analysis
- Parse and summarize
parser.py - Universal parser
ast_adapter.py - Cypher generation
query_engine.py
Storage and models
- Service configuration
config.py - Knowledge graph
- NVIDIA model API
Other components
- Client
Connections 9
- Client → FastAPI endpoints: submits requests
api.py - FastAPI endpoints → Clone and filter: starts clone
api.py - FastAPI endpoints → Parse and summarize: runs pipeline
api.py - Parse and summarize → NVIDIA model API: summarizes and embeds
parser.py - Parse and summarize → Knowledge graph: writes graph data
parser.py - FastAPI endpoints → Knowledge graph: queries and resets
api.py - FastAPI endpoints → NVIDIA model API: embeds and streams answers
api.py - FastAPI endpoints → Cypher generation: requests Cypher
api.py - Cypher generation → NVIDIA model API: generates Cypher
query_engine.py