An open API service indexing awesome lists of open source software.

https://github.com/kingabzpro/a-to-z-mlops

A complete MLOps project.
https://github.com/kingabzpro/a-to-z-mlops

cicd docker docker-compose fastapi graphana kaggle locust machine-learning mlflow mlops prefect prometheus text-classification uv

Last synced: 5 months ago
JSON representation

A complete MLOps project.

Awesome Lists containing this project

README

          

# ๐Ÿ“ฐ News Classification MLOps

Production-ready MLOps pipeline for classifying news articles. Built with FastAPI, Docker, Kubernetes, and modern observability tools.

## What This Is

An end-to-end machine learning pipeline that ingests news data, trains classification models, and serves predictions through a REST API with full monitoring and orchestration.

[๐Ÿš€ Quick Start](https://github.com/kingabzpro/A-to-Z-MLOps/wiki/Quick-Start) | [๐Ÿ“š Documentation](https://github.com/kingabzpro/A-to-Z-MLOps/wiki) | [๐Ÿ“ก API Reference](https://github.com/kingabzpro/A-to-Z-MLOps/wiki/API-Reference)

## โœจ Key Capabilities

- **๐Ÿ”„ Automated Pipeline** - Data processing, model training, and deployment orchestrated with Prefect
- **โšก Production API** - FastAPI with batch prediction, authentication, rate limiting, and caching
- **๐Ÿ“Š Full Observability** - Prometheus metrics, Grafana dashboards, MLflow experiment tracking
- **๐Ÿณ Container-Ready** - Docker Compose for local development, Kubernetes for production
- **๐Ÿงช Comprehensive Testing** - Unit, integration, and load testing with Locust

## ๐Ÿš€ Quick Start

```bash
git clone https://github.com/kingabzpro/A-to-Z-MLOps.git
cd A-to-Z-MLOps
cp .env.example .env # Add your API_KEY and Kaggle credentials
docker-compose up -d
```

Access the services:
- **๐Ÿ”ฅ API & Docs**: http://localhost:7860/docs
- **๐Ÿ“ˆ MLflow Tracking**: http://localhost:5000
- **๐Ÿ“‰ Grafana Dashboards**: http://localhost:3000
- **๐Ÿ” Prometheus Metrics**: http://localhost:9090
- **โš™๏ธ Prefect Orchestration**: http://localhost:4200

Test the API:
```bash
curl -X POST "http://localhost:7860/predict" \
-H "X-API-Key: your_api_key" \
-H "Content-Type: application/json" \
-d '{"title": "Apple releases new iPhone with AI features"}'
```

## ๐Ÿ“š Documentation

Detailed guides available in the [Wiki](https://github.com/kingabzpro/A-to-Z-MLOps/wiki):

- ๐Ÿš€ [Quick Start](https://github.com/kingabzpro/A-to-Z-MLOps/wiki/Quick-Start) - Complete setup instructions
- ๐Ÿ“ [Project Structure](https://github.com/kingabzpro/A-to-Z-MLOps/wiki/Project-Structure) - Codebase organization
- ๐Ÿ“ก [API Reference](https://github.com/kingabzpro/A-to-Z-MLOps/wiki/API-Reference) - All endpoints documented
- โš™๏ธ [Configuration](https://github.com/kingabzpro/A-to-Z-MLOps/wiki/Configuration) - Environment variables
- ๐Ÿ“Š [Monitoring](https://github.com/kingabzpro/A-to-Z-MLOps/wiki/Monitoring) - Observability setup
- โ˜๏ธ [Cloud Deployment](https://github.com/kingabzpro/A-to-Z-MLOps/wiki/Cloud-Deployment) - AWS, GKE, AKS guides
- ๐Ÿ› ๏ธ [Development](https://github.com/kingabzpro/A-to-Z-MLOps/wiki/Development) - Contributing guidelines

## ๐Ÿค Contributing

See the [Development Guide](https://github.com/kingabzpro/A-to-Z-MLOps/wiki/Development) for contribution workflow and coding standards.

---

MIT License - Created for the MLOps community