finds.dev← search

// the find

apecloud/ApeRAG

★ 1,275 · Python · Apache-2.0 · updated May 2026

ApeRAG: Production-ready GraphRAG with multi-modal indexing, AI agents, MCP support, and scalable K8s deployment

ApeRAG is a Python-based RAG platform that combines vector search, full-text search, and graph-based retrieval (via a forked LightRAG) into one self-hosted system. It's aimed at teams who want to build knowledge-base chatbots or document Q&A without stitching together five separate services themselves. The scope is genuinely ambitious: five index types, MCP server, multimodal parsing, Celery task queue, and Kubernetes Helm charts.

The LightRAG fork is the most interesting part — they've added entity normalization (merging duplicate nodes in the knowledge graph), distributed Celery task processing, and stateless operation, which are real production concerns that the upstream project sidesteps. The flow engine (aperag/flow/) lets you wire retrieval steps as a YAML DAG, which is more honest than hiding the retrieval pipeline behind magic. MCP support is first-class and the server implementation looks complete, not bolted on. Kubernetes deployment uses KubeBlocks for the dependency stack (Postgres, Redis, Qdrant, Elasticsearch, Neo4j), which is a concrete time-saver over writing five StatefulSet manifests yourself.

The dependency footprint is brutal: Postgres, Redis, Qdrant, Elasticsearch, and Neo4j all running simultaneously just to index documents. That's five databases for one application, and the minimum Docker Compose spec requires 4 GiB RAM before you even load a document. The test coverage looks thin — the test files visible in the tree are mostly in flow/ and evaluation/, and the CI workflows suggest more e2e than unit coverage, which means you'll discover breakage at integration time. LightRAG is vendored as a full copy inside aperag/graph/lightrag/ rather than as a tracked fork, so upstream security fixes and improvements won't flow in automatically. The last push was May 2026 but migration timestamps run to March 2026, suggesting the schema is changing fast and upgrading between versions without data loss may be adventurous.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →