Skip to content

Akashgite1/arxiv-paper-curator

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

The Mother of AI Project

Phase 1 RAG Systems: arXiv Paper Curator

A Learner-Focused Journey into Production RAG Systems

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)

Python Version FastAPI OpenSearch Docker Status


RAG Architecture

πŸ“– About This Course

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.


πŸš€ Quick Start

πŸ“‹ Prerequisites

  • Docker Desktop (with Docker Compose)
  • Python 3.12+
  • UV Package Manager (Install Guide)
  • 8GB+ RAM and 20GB+ free disk space

⚑ Get Started

# 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

πŸ“Š Access Your Services

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

NOTE: Check airflow/simple_auth_manager_passwords.json.generated for Airflow username and password


πŸ“š Learning Materials

πŸ““ Week 1: Complete Setup Guide

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 Architecture

Week 1 Infrastructure Setup

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)

πŸ“– Week 1 Blog Post

The Infrastructure That Powers RAG Systems - Detailed walkthrough and production insights.


πŸ› οΈ Technology Stack

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


🎯 What You're Building

Week 1: Infrastructure Foundation βœ…

  • 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

Future Weeks: Complete RAG System (6-Week Course)

  • 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

πŸ—οΈ Project Structure (Week 1)

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

πŸ”§ Essential Commands

Using the Makefile (Recommended)

# 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

All Available Commands

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

Direct Commands (Alternative)

# 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

πŸŽ“ Learning Path

Week 1 Success Criteria

Complete when you can:

Target Audience

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

πŸ› οΈ Troubleshooting

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

πŸ’° Cost Structure

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)

πŸŽ‰ Ready to Start Your AI Engineering Journey?

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


πŸ“„ License

MIT License - see LICENSE file for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 62.0%
  • Python 35.0%
  • Makefile 1.7%
  • Dockerfile 1.3%