Learn to build modern AI systems from the ground up through hands-on implementation
Master the most in-demand AI engineering skills: RAG (Retrieval-Augmented Generation)
This is a learner-focused project where you'll build a complete research assistant system that automatically fetches academic papers, understands their content, and answers your research questions using advanced RAG techniques.
The arXiv Paper Curator will teach you to build a production-grade RAG system using industry best practices. You'll master the architecture, implementation, and deployment of AI systems that professionals use in the real world.
By the end of this course, you'll have your own AI research assistant and the skills to build similar systems for any domain.
- Docker Desktop (with Docker Compose)
- Python 3.12+
- UV Package Manager (Install Guide)
- 8GB+ RAM and 20GB+ free disk space
# 1. Clone and setup
git clone <repository-url>
cd zero_to_RAG
uv sync
# 2. Start all services
docker compose up --build -d
# 3. Verify everything works
curl http://localhost:8000/health
Service | URL | Purpose |
---|---|---|
API Documentation | http://localhost:8000/docs | Interactive API testing |
Airflow Dashboard | http://localhost:8080 | Workflow management |
OpenSearch Dashboards | http://localhost:5601 | Hybrid search engine UI |
Start here! Follow our comprehensive setup notebook: Please run it in terminal
# Launch the Week 1 notebook
uv run jupyter notebook notebooks/week1/week1_setup.ipynb
What you'll learn in Week 1:
- Complete infrastructure setup with Docker Compose
- FastAPI development with automatic documentation and health checks
- PostgreSQL database configuration and management
- OpenSearch hybrid search engine setup
- Ollama local LLM service configuration
- Service orchestration and health monitoring
- Professional development environment with code quality tools
Week 1 Infrastructure Components:
- FastAPI: REST endpoints with async support (Port 8000)
- PostgreSQL 16: Paper metadata storage (Port 5432)
- OpenSearch 2.19: Search engine with dashboards (Ports 9200, 5601)
- Apache Airflow 3.0: Workflow orchestration (Port 8080)
- Ollama: Local LLM server (Port 11434)
The Infrastructure That Powers RAG Systems - Detailed walkthrough and production insights.
Service | Purpose | Status |
---|---|---|
FastAPI | REST API with automatic docs | β Ready |
PostgreSQL 16 | Paper metadata and content storage | β Ready |
OpenSearch 2.19 | Hybrid search engine | β Ready |
Apache Airflow 3.0 | Workflow automation | β Ready |
Ollama | Local LLM serving | β Ready |
Development Tools: UV, Ruff, MyPy, Pytest, Docker Compose
- Multi-service architecture using Docker Compose
- REST API with health monitoring and documentation
- Database setup with proper schema design
- Search engine configuration for future RAG features
- Professional development environment
- Week 2: arXiv API integration, PDF parsing with Docling, automated data ingestion
- Week 3: OpenSearch hybrid search implementation with BM25 + semantic vectors
- Week 4: Context-aware chunking and retrieval evaluation with nDCG metrics
- Week 5: Full RAG pipeline with LLM integration and prompt optimization
- Week 6: Observability with Langfuse, A/B testing, and production deployment
zero_to_RAG/
βββ src/ # Main application code
β βββ main.py # FastAPI application
β βββ routers/ # API endpoints
β βββ models/ # Database models (SQLAlchemy)
β βββ repositories/ # Data access layer
β βββ schemas/ # Pydantic validation schemas
β βββ services/ # Business logic
β βββ db/ # Database configuration
β βββ config.py # Environment configuration
β βββ dependencies.py # Dependency injection
β
βββ notebooks/week1/ # Learning materials
β βββ week1_setup.ipynb # Complete setup guide
β
βββ tests/ # Comprehensive test suite
βββ airflow/dags/ # Workflow definitions
βββ static/ # Assets (images, GIFs)
βββ compose.yml # Service orchestration
# View all available commands
make help
# Quick workflow
make start # Start all services
make health # Check all services health
make test # Run tests
make stop # Stop services
Command | Description |
---|---|
make start |
Start all services |
make stop |
Stop all services |
make restart |
Restart all services |
make status |
Show service status |
make logs |
Show service logs |
make health |
Check all services health |
make setup |
Install Python dependencies |
make format |
Format code |
make lint |
Lint and type check |
make test |
Run tests |
make test-cov |
Run tests with coverage |
make clean |
Clean up everything |
# If you prefer using commands directly
docker compose up --build -d # Start services
docker compose ps # Check status
docker compose logs # View logs
uv run pytest # Run tests
Complete when you can:
- Start all services with
docker compose up -d
- Access API docs at http://localhost:8000/docs
- Login to Airflow at http://localhost:8080
- Browse OpenSearch at http://localhost:5601
- All tests pass:
uv run pytest
Who | Why |
---|---|
AI/ML Engineers | Learn production RAG architecture beyond tutorials |
Software Engineers | Build end-to-end AI applications with best practices |
Data Scientists | Implement production AI systems using modern tools |
Common Issues:
- Services not starting? Wait 2-3 minutes, check
docker compose logs
- Port conflicts? Stop other services using ports 8000, 8080, 5432, 9200
- Memory issues? Increase Docker Desktop memory allocation
Get Help:
- Check the comprehensive Week 1 notebook troubleshooting section
- Review service logs:
docker compose logs [service-name]
- Complete reset:
docker compose down --volumes && docker compose up --build -d
This course is completely free! You'll only need minimal costs for optional services:
- Local Development: $0 (everything runs locally)
- Optional Cloud APIs: ~$2-5 for external LLM services (if chosen)
Begin with the Week 1 setup notebook and build your first production RAG system!
For learners who want to master modern AI engineering
Built with love by Jam With AI
MIT License - see LICENSE file for details.