Skip to content
Rayyan Ahemad
← All projects
MLOpsShipped

House Price MLOps Pipeline

Validated data pipeline and model API with Airflow, Great Expectations and alerting.

Architecture

How it works

  1. New data files
  2. Airflow ingestion DAG
  3. Great Expectations checkpoint
  4. PostgreSQL + run stats
  5. FastAPI model service
  6. Streamlit app
Failing batches are routed away from training and trigger a Microsoft Teams alert; validation results are published as Data Docs.
  1. Feature contract

    A shared feature module defines every input field and its valid range, so training, the serving API and the Airflow DAGs build features the same way. That keeps training and serving in sync.

  2. Ingest and validate

    An Airflow DAG picks up new data and runs it through a Great Expectations checkpoint. Passing and failing rows are split, and run statistics are written to PostgreSQL.

  3. Alert

    When a checkpoint fails, the pipeline posts an alert to Microsoft Teams, so bad data is caught before it reaches the model.

  4. Serve

    A FastAPI service loads the model and answers predictions; a scheduled prediction DAG scores new data. The Streamlit app only talks to the API, never to the model or database directly.

  5. Run anywhere

    Every service runs from one Docker Compose file, so the whole stack starts with a single command.

Information

A model is only as reliable as the data reaching it. This project wraps a house-price regression model in the production pieces around it: data validation, alerting, a serving API and an app.

EPITA · Data Science in Production

  • Airflow
  • Great Expectations
  • FastAPI
  • PostgreSQL
  • Streamlit
  • Docker Compose

Code on GitHub ↗