Sistema de detección de fraude bancario diseñado con una arquitectura MLOps de extremo a extremo. Este proyecto demuestra la integración de modelos de Machine Learning en entornos de producción, garantizando reproducibilidad, observabilidad y escalabilidad.
- Arquitectura Modular (Clean Code): Separación estricta entre entrenamiento (
src/train.py), lógica de inferencia (src/predict.py) y servicio web (api/main.py). - Tracking de Experimentos: Gestión completa del ciclo de vida del modelo con MLflow, registrando hiperparámetros y métricas como F1-Score y Precision-Recall.
- Inferencia de Baja Latencia: Implementación con XGBoost y FastAPI, optimizada para procesamiento en tiempo real.
- Contenedores de Grado de Producción: Configuración con Docker y Docker Compose para un despliegue agnóstico al entorno.
- Validación de Esquemas: Uso de Pydantic para garantizar la integridad de los datos de entrada.
git clone https://github.com/Gilberto-Galan/fraud-detection-mlops.gitcd fraud-detection-mlops
python -m venv venv source venv/bin/activate # En Windows: .\venv\Scripts\activate
pip install -r requirements.txtEl script genera automáticamente un dataset de prueba si no existe y registra el experimento:
python src/train.py
La forma más robusta de ejecutar el sistema completo:
docker-compose up --buildSwagger UI (API Docs): http://localhost:8000/docs
MLflow Dashboard: http://localhost:5000
Garantizamos la estabilidad del sistema mediante pruebas automáticas:
pytest tests/
'http://localhost:8000/predict' \
-H 'Content-Type: application/json' \
-d '{ "features": [0.5, -1.2, 3.4, 0.1, 0.9, -0.4, 1.1, 2.2, -0.1, 0.5] }'```