← Back to projects

Lightweight Drift-Aware MLOps Framework

Lightweight, CI-based MLOps framework that operationalizes data drift as an explicit control signal for evaluation, retraining, and model promotion, with full lifecycle traceability and reproducibility for small teams.

PythonMLOpsData DriftCI/CDMLflowDockerFastAPIEvidentlyGitHub Actions

Context & Problem

Deployed ML models silently degrade under evolving data distributions, while common workflows rely on manual, ad-hoc retraining decisions with weak traceability. Existing MLOps solutions either focus on passive drift monitoring or require enterprise-scale infrastructure, making controlled, auditable lifecycle management inaccessible to small teams.

Solution & Approach

Designed and implemented a lightweight, CI-driven MLOps pipeline where data drift is treated as an explicit decision signal rather than a passive metric. Candidate models are trained and evaluated in isolation, tested under predefined drift scenarios, compared against the active production model, and promoted only through rule-based, auditable decisions with human oversight.

Key Highlights

  • Operationalized data drift as a first-class control signal influencing evaluation, retraining, and model promotion decisions
  • CI-based lifecycle orchestration covering training, evaluation, drift analysis, promotion, deployment, and monitoring
  • Rule-based promotion gate: models deploy only if predefined performance and robustness criteria are satisfied
  • Reproducible experiments: every model linked to dataset version, preprocessing configuration, training parameters, metrics, and drift diagnostics
  • Explicit separation between candidate and production models via centralized model registry
  • Downstream monitoring used as decision support, not autonomous retraining, preserving transparency and control
  • Reference implementation validated through controlled image classification experiments with simulated data drift
Steffen Nordnes – ML Systems & Data Engineering