
ApeRAG
HTTP-SSEProduction-ready RAG platform combining Graph RAG, vector search, and full-text search capabilities
Production-ready RAG platform combining Graph RAG, vector search, and full-text search capabilities
ApeRAG is a production-ready RAG (Retrieval-Augmented Generation) platform that combines Graph RAG, vector search, and full-text search. Build sophisticated AI applications with hybrid retrieval, multimodal document processing, and enterprise-grade management features.
ApeRAG is the best choice for building your own Knowledge Graph and for Context Engineering.
Before installing ApeRAG, make sure your machine meets the following minimum system requirements:
- CPU >= 2 Core
- RAM >= 4 GiB
- Docker & Docker Compose
The easiest way to start ApeRAG is through Docker Compose. Before running the following commands, make sure that Docker and Docker Compose are installed on your machine:
git clone https://github.com/apecloud/ApeRAG.git cd ApeRAG cp envs/env.template .env cp frontend/deploy/env.local.template frontend/.env docker compose up -d
After running, you can access ApeRAG in your browser at:
ApeRAG supports MCP (Model Context Protocol) integration, allowing AI assistants to interact with your knowledge base directly. After starting the services, configure your MCP client with:
{ "mcpServers": { "aperag-mcp": { "url": "http://localhost:8000/mcp", "headers": { "Authorization": "Bearer your-api-key-here" } } } }
Important: Replace http://localhost:8000
with your actual ApeRAG API URL and your-api-key-here
with a valid API key from your ApeRAG settings.
The MCP server provides:
For enhanced document parsing capabilities, ApeRAG supports an advanced document parsing service powered by MinerU, which provides superior parsing for complex documents, tables, and formulas.
# Enable advanced document parsing service DOCRAY_HOST=http://aperag-docray:8639 docker compose --profile docray up -d # Enable advanced parsing with GPU acceleration DOCRAY_HOST=http://aperag-docray-gpu:8639 docker compose --profile docray-gpu up -d
Or use the Makefile shortcuts (requires GNU Make):
# Enable advanced document parsing service make compose-up WITH_DOCRAY=1 # Enable advanced parsing with GPU acceleration (recommended) make compose-up WITH_DOCRAY=1 WITH_GPU=1
For developers interested in source code development, advanced configurations, or contributing to ApeRAG, please refer to our Development Guide for detailed setup instructions.
1. Hybrid Retrieval Engine: Combines Graph RAG, vector search, and full-text search for comprehensive document understanding and retrieval.
2. Graph RAG with LightRAG: Enhanced version of LightRAG for advanced graph-based knowledge extraction, enabling deep relational and contextual queries.
3. MinerU Integration: Advanced document parsing service powered by MinerU technology, providing superior parsing for complex documents, tables, formulas, and scientific content with optional GPU acceleration.
4. Production-Grade Deployment: Full Kubernetes support with Helm charts and KubeBlocks integration for simplified deployment of production-grade databases (PostgreSQL, Redis, Qdrant, Elasticsearch, Neo4j).
5. Multimodal Document Processing: Supports various document formats (PDF, DOCX, etc.) with intelligent content extraction and structure recognition.
6. Enterprise Management: Built-in audit logging, LLM model management, graph visualization, and comprehensive document management interface.
7. MCP Integration: Full support for Model Context Protocol (MCP), enabling seamless integration with AI assistants and tools for direct knowledge base access and intelligent querying.
8. Developer Friendly: FastAPI backend, React frontend, async task processing with Celery, extensive testing, and comprehensive development guides for easy contribution and customization.
Enterprise-grade deployment with high availability and scalability
Deploy ApeRAG to Kubernetes using our provided Helm chart. This approach offers high availability, scalability, and production-grade management capabilities.
kubectl
configured and connected to your clusterFirst, clone the ApeRAG repository to get the deployment files:
git clone https://github.com/apecloud/ApeRAG.git cd ApeRAG
ApeRAG requires PostgreSQL, Redis, Qdrant, and Elasticsearch. You have two options:
Option A: Use existing databases - If you already have these databases running in your cluster, edit deploy/aperag/values.yaml
to configure your database connection details, then skip to Step 2.
Option B: Deploy databases with KubeBlocks - Use our automated database deployment (database connections are pre-configured):
# Navigate to database deployment scripts cd deploy/databases/ # (Optional) Review configuration - defaults work for most cases # edit 00-config.sh # Install KubeBlocks and deploy databases bash ./01-prepare.sh # Installs KubeBlocks bash ./02-install-database.sh # Deploys PostgreSQL, Redis, Qdrant, Elasticsearch # Monitor database deployment kubectl get pods -n default # Return to project root for Step 2 cd ../../
Wait for all database pods to be in Running
status before proceeding.
# If you deployed databases with KubeBlocks in Step 1, database connections are pre-configured # If you're using existing databases, edit deploy/aperag/values.yaml with your connection details # Deploy ApeRAG helm install aperag ./deploy/aperag --namespace default --create-namespace # Monitor ApeRAG deployment kubectl get pods -n default -l app.kubernetes.io/instance=aperag
Resource Requirements: By default, includes doc-ray
service (requires 4+ CPU cores, 8GB+ RAM). To disable: set docray.enabled: false
in values.yaml
.
Advanced Settings: Review values.yaml
for additional configuration options including images, resources, and Ingress settings.
Once deployed, access ApeRAG using port forwarding:
# Forward ports for quick access kubectl port-forward svc/aperag-frontend 3000:3000 -n default kubectl port-forward svc/aperag-api 8000:8000 -n default # Access in browser # Web Interface: http://localhost:3000 # API Documentation: http://localhost:8000/docs
For production environments, configure Ingress in values.yaml
for external access.
Database Issues: See deploy/databases/README.md
for KubeBlocks management, credentials, and uninstall procedures.
Pod Status: Check pod logs for any deployment issues:
kubectl logs -f deployment/aperag-api -n default kubectl logs -f deployment/aperag-frontend -n default
ApeRAG integrates and builds upon several excellent open-source projects:
The graph-based knowledge retrieval capabilities in ApeRAG are powered by a deeply modified version of LightRAG:
We have extensively modified LightRAG to support production-grade concurrent processing, distributed task queues (Celery/Prefect), and stateless operations. See our LightRAG modifications changelog for details.
ApeRAG is licensed under the Apache License 2.0. See the LICENSE file for details.