Spaces:
Sleeping
Sleeping
metadata
title: MLOps Credit Risk API
sdk: docker
Taller MLOps: Credit Risk API (FastAPI + DVC + MLflow + GitHub Actions)
Este repositorio contiene el cΓ³digo de un taller prΓ‘ctico de MLOps donde se construye un sistema de riesgo de crΓ©dito con:
- GeneraciΓ³n de datos sintΓ©ticos
- Pipeline de datos + entrenamiento reproducible
- Versionamiento de datos con DVC
- Tracking de modelos con MLflow
- API de inferencia con FastAPI
- CI/CD y Entrenamiento Continuo con GitHub Actions
- Despliegue en Hugging Face Spaces (modo Docker) como entorno βproductivoβ de demostraciΓ³n
1. Estructura del repositorio
.
ββ api/ # API FastAPI para servir el modelo
β ββ __init__.py
β ββ main.py
β ββ config.py
β ββ schemas.py
β ββ model_loader.py
β ββ routes/
β ββ __init__.py
β ββ health.py
β ββ predict.py
ββ src/ # CΓ³digo de datos y entrenamiento
β ββ __init__.py
β ββ config.py # rutas, constantes y config MLflow
β ββ generate_synthetic_data.py
β ββ data_prep.py
β ββ model_utils.py
β ββ train.py
β ββ evaluate.py
ββ data/
β ββ raw/ # datos crudos (DVC)
β ββ processed/ # train/valid (DVC)
ββ models/
β ββ model-latest.pkl # ΓΊltimo modelo para la API
ββ tests/
β ββ test_api.py # tests de la API
ββ mlruns/ # tracking local de MLflow
ββ dvc.yaml # pipeline DVC (generate β prepare β train)
ββ dvc.lock
ββ requirements.txt
ββ Dockerfile # para correr la API en Hugging Face Spaces
ββ .github/workflows/
ββ ci_cd.yml # CI + CD (push a main)
ββ continuous_training.yml # Entrenamiento continuo (cada 10 min)