Back to Academic Projects

MLOps Deployment of a scoring model in production

Python, Machine Learning, MLOps, MLflow, LightGBM, XGBoost, Scikit-learn, Credit Scoring, Optuna, Feature Engineering

Deployment and Monitoring of a Scoring Model (MLOps)

Overview

This project implements the entire production cycle of a Machine Learning model, from its exposure via an API to its monitoring in production. The objective is to transform a previously developed scoring model into a robust, testable, containerized, and automatically deployable service.

The project applies MLOps best practices to ensure the quality, reproducibility, and maintainability of a Machine Learning system in production.


Objectives


Demonstrated Skills

ML API Development


Automated Tests


Containerization


CI/CD

Full automation with GitHub Actions:


ML Monitoring

Collection of production metrics:


Data Drift Detection

Automatic analysis of production data to detect:

Tools used:


Performance Optimization

Performance analysis through profiling:


Architecture

               GitHub
                  │
                  ▼
          GitHub Actions
                  │
      ┌───────────┴───────────┐
      │                       │
      ▼                       ▼
   Pytest                Build Docker
      │                       │
      └───────────┬───────────┘
                  ▼
             Deployment
                  │
                  ▼
             FastAPI API
                  │
          Model Loading
                  │
        ┌─────────┴─────────┐
        ▼                   ▼
  Predictions          JSON Logging
                              │
                              ▼
                     Log Storage
                              │
                              ▼
               Monitoring & Data Drift

Technical Stack

Machine Learning

API

Tests

Containerization

CI/CD

Monitoring

Versioning


Applied MLOps Best Practices


Results

Upon completion of this project, the model is capable of:


Acquired MLOps Skills