A 50,000-Line Enterprise Knowledge Base with Dual RAG+KAG Engines in Both Java and Python
This is a paid, closed-source project promoted through a subscription community. It matters primarily to developers looking for a large, pre-built reference implementation that demonstrates how to wire together microservices, hybrid search, RAG pipelines, knowledge graphs, and multi-agent orchestration in both Java and Python stacks.
The system covers full document lifecycle management, a file center with online preview for 10+ formats including HLS video streaming, and an Elasticsearch-powered hybrid search that fuses BM25 keyword matching with vector semantic retrieval via RRF. Its AI assistant runs a RAG + KAG dual-engine architecture: RAG retrieves document chunks for grounded Q&A, while KAG traverses a Neo4j knowledge graph to answer relational questions like system dependencies. The Python backend adds a LangGraph-based multi-agent workflow where a supervisor agent dispatches search, RAG, KAG, and writing agents through a state graph with checkpoint persistence.
Both backends expose nearly 200 identical REST API endpoints and share one React frontend. The Java stack uses Spring Cloud Alibaba with Nacos, Gateway, Feign, and MyBatis Plus; the Python stack uses FastAPI, SQLAlchemy 2.0 async ORM, Celery with RabbitMQ for async tasks, and a Model Gateway that routes between Qwen and DeepSeek with automatic fallback. Infrastructure spans MySQL (9 databases), MongoDB, Elasticsearch, Neo4j, Redis, and RabbitMQ.
The project is a paid offering promoted as resume material and a full-stack learning vehicle, with source code available through the author's subscription community.
The dual-language implementation is a sales tactic, not an architectural decision—it lets the author sell to both Java and Python camps without maintaining two separate products, since the frontend and API contract are shared.
Calling this 'KAG' is a stretch. The knowledge graph mode queries Neo4j for entity relationships and injects them into a prompt; it does not perform structured reasoning or graph-native inference, which is what the KAG term typically implies in research.
The project's scale—50,000 lines, 9 databases, 7 middleware components—makes it a credible portfolio piece, but the sheer breadth also means individual modules likely trade depth for coverage.
Promoting a system as both a learning resource and resume filler while paywalling the source code is a common monetization pattern in Chinese developer communities; the value is in having a complete, runnable reference, not in novel techniques.