Project Setup, Dependencies, and Core Tasks
This guide provides a comprehensive overview of all dependencies, installation commands, and the first two core project tasks as defined in the Task-master system. Follow these steps to ensure a production-ready, fully operational environment.
1. Dependencies
System Requirements
- Python: 3.11 or higher
- Docker & Docker Compose: 20.10+
- Node.js & npm: Node.js 18+, npm 8+
- Git
- GNU Make
- UV (Python package installer)
Python Dependencies
All Python dependencies are listed in requirements.txt. Key packages include:
- FastAPI, Uvicorn, Streamlit
- pymilvus, neo4j, redis
- langchain, transformers, spacy, nltk
- pandas, numpy, scikit-learn, matplotlib, plotly
- pytest, black, mypy, flake8, jupyter
Install with:
uv pip install -r requirements.txt
uv pip install -r requirements-dev.txt
Node.js/Frontend Dependencies
- Docusaurus (documentation site)
- All dependencies listed in
docs-site/package.json
Install with:
cd docs-site && npm install && cd ..
Other Tools
- Pre-commit hooks:
pre-commit install - Docker services:
docker-compose(see Makefile)
2. Installation & Setup
Initial Setup
git clone <repository-url> smart_rag
cd smart_rag
cp .env.example .env
cp .claude/settings.local.json.template .claude/settings.local.json
Edit .env and .claude/settings.local.json as needed.
Install All Dependencies
uv pip install -r requirements.txt
uv pip install -r requirements-dev.txt
cd frontend && npm install && cd ..
cd docs-site && npm install && cd ..
pre-commit install
Start All Services
make services-up
make health-check
3. Task 1: Complete Project Infrastructure Setup
Objective: Finalize project infrastructure with all required services and development environment.
Steps:
- Verify all Docker services are properly configured (PostgreSQL, Milvus, Neo4j, Redis, MinIO)
- Complete GitHub Actions CI/CD pipeline setup
- Configure Kubernetes manifests for deployment
- Set up monitoring stack (Prometheus/Grafana)
- Implement health check scripts
- Configure Claude Code environment
Test Strategy:
- Run:
make services-up
make health-check
make test - Verify all services are healthy and CI pipeline passes.
Subtasks:
- Docker service configuration:
docker-compose.yml,docker/scripts - CI/CD:
.github/workflows/ci.yml - Kubernetes: manifests in
infrastructure/ - Monitoring: Prometheus/Grafana via Docker
- Health checks:
scripts/health_check.sh
4. Task 2: Implement Core RAG System Components
Objective: Build the core Hybrid RAG system with vector, graph, and orchestration components.
Steps:
- Complete VectorStore implementation with Milvus
- Implement GraphStore with Neo4j integration
- Build HybridOrchestrator for query routing
- Implement EntityExtractor using spaCy/HuggingFace
- Create ContextEnhancement module
- Build UserProfileStore for personalization
Test Strategy:
- Run:
pytest src/graphrag/rag_system/test_integration.py - Verify all components work together as expected.
Subtasks:
- VectorStore: CRUD operations, connection pooling, error handling
- GraphStore: entity creation, relationship mapping, graph traversal
- HybridOrchestrator: query routing, result fusion, ranking
- Entity Extraction: spaCy/HuggingFace integration
- Context Enhancement: user profile-based query enhancement
5. Verification & Troubleshooting
- See
SETUP_VERIFICATION.mdfor detailed verification steps and troubleshooting tips. - Use
make helpfor a list of all available Makefile commands. - Review CI/CD logs for pipeline issues.
6. Subtask Documentation
- Complete Docker Service Configuration
- Finalize GitHub Actions CI/CD Pipeline
- Create Kubernetes Deployment Manifests
- Set Up Monitoring and Observability
- Complete VectorStore Implementation
- Implement GraphStore with Neo4j
- Build HybridOrchestrator
- Implement Entity Extraction
- Create Context Enhancement Module
7. System Architecture
flowchart TD
subgraph Infrastructure
DB1[PostgreSQL]
VEC[Milvus]
GDB[Neo4j]
RED[Redis]
MIN[MinIO]
MON[Prometheus/Grafana]
end
subgraph CI_CD[CI/CD Pipeline]
GH[GitHub Actions]
K8S[Kubernetes]
end
subgraph RAG[Hybrid RAG System]
VS[VectorStore]
GS[GraphStore]
HO[HybridOrchestrator]
EE[EntityExtractor]
CE[ContextEnhancement]
UP[UserProfileStore]
end
GH -->|Build/Test/Deploy| K8S
K8S -->|Deploys| VS
K8S --> GS
K8S --> HO
K8S --> EE
K8S --> CE
K8S --> UP
VS --> VEC
GS --> GDB
HO --> VS
HO --> GS
EE --> CE
CE --> UP
VS --> DB1
GS --> DB1
VS --> RED
GS --> RED
VS --> MIN
GS --> MIN
MON --> GH
MON --> K8S
MON --> VS
MON --> GS
For further details, consult the Setup and Verification Guide and the Makefile.