Este workshop demuestra las características de seguridad esenciales para MLOps, incluyendo escaneo de seguridad de modelos, pruebas de robustez adversarial, métricas de seguridad y integración con MLflow, todo corriendo en un entorno Docker.
- 🔍 Escaneo de Seguridad de Modelos con ModelScan
- ⚔️ Pruebas de Robustez Adversarial con ART (Adversarial Robustness Toolbox)
- 📊 Seguimiento de Métricas de Seguridad
- 🔗 Integración con MLflow con enfoque en seguridad
- 🛡️ Evaluación Segura de Modelos
- Docker Desktop instalado y ejecutándose
- Python 3.8 o superior
- Jupyter Notebook o JupyterLab
- Navegador web para acceder a MLflow UI
-
Descargar e instalar Docker Desktop:
- Visita https://www.docker.com/products/docker-desktop
- Descarga la versión para tu sistema operativo
- Sigue las instrucciones de instalación
-
Verificar la instalación:
docker --version docker-compose --version
-
Usar el archivo docker-compose.yml existente o crear uno nuevo:
docker-compose up -d
-
Verificar que MLflow está corriendo:
- Abre tu navegador y ve a
http://localhost:5001 - Deberías ver la interfaz de MLflow
- Abre tu navegador y ve a
-
Crear un entorno virtual:
python -m venv venv source venv/bin/activate # En Windows: venv\Scripts\activate
-
Instalar dependencias base:
pip install --upgrade pip pip install jupyter notebook
Los siguientes paquetes se instalarán automáticamente al ejecutar el notebook:
pip install mlflow
pip install scikit-learn pandas numpy matplotlib seaborn
pip install adversarial-robustness-toolbox
pip install modelscan
pip install cryptographyjupyter notebook- En la interfaz de Jupyter, navega hasta
secure_mlops_demo.ipynb - Abre el notebook
El notebook está organizado en las siguientes secciones:
- Setup y Dependencias - Instala todos los paquetes necesarios
- Configuración de MLflow - Conecta al contenedor Docker de MLflow
- Preparación de Datos - Genera datos sintéticos con metadatos de seguridad
- Entrenamiento de Modelos - Entrena modelos con seguimiento de seguridad
- Escaneo de Seguridad - Escanea modelos con ModelScan
- Pruebas Adversariales - Prueba robustez con ART
- Dashboard de Seguridad - Visualiza métricas de seguridad
- Resumen del Workshop - Resumen completo de características
Durante y después de ejecutar el notebook:
- Abre
http://localhost:5001en tu navegador - Explora los experimentos y métricas de seguridad
- Revisa los artefactos de modelos y reportes de seguridad
Después de ejecutar el workshop, se crearán los siguientes directorios:
secmlops/
├── models/ # Modelos entrenados
│ ├── random_forest_model.pkl
│ ├── logistic_regression_model.pkl
│ └── svm_model.pkl
├── artifacts/ # Reportes de análisis de seguridad
│ ├── random_forest_security_analysis_*.txt
│ ├── logistic_regression_security_analysis_*.txt
│ └── svm_security_analysis_*.txt
└── secure_mlops_demo.ipynb # Notebook principal
- Seguimiento de linaje de datos
- Hash de integridad de datos
- Metadatos de privacidad
- Escaneo de vulnerabilidades con ModelScan
- Análisis de complejidad del modelo
- Detección de posible sobreajuste
- Ataques FGSM (Fast Gradient Sign Method)
- Ataques PGD (Projected Gradient Descent)
- Métricas de robustez
- Logging de métricas de seguridad
- Artefactos de modelos con metadatos
- Seguimiento de experimentos seguros
# Verificar que Docker está corriendo
docker ps
# Reiniciar MLflow
docker-compose down
docker-compose up -d# Reinstalar paquetes problemáticos
pip install --force-reinstall modelscan
pip install --force-reinstall adversarial-robustness-toolbox# En sistemas Unix, puede ser necesario usar sudo
sudo docker-compose up -dDespués de completar el workshop:
- Explorar MLflow UI para análisis detallado de experimentos
- Implementar herramientas de seguridad adicionales (Cosign, Garak)
- Configurar monitoreo continuo de seguridad
- Integrar con pipelines CI/CD
- Expandir a escenarios de producción
- Implementar pruebas de seguridad automatizadas
Si encuentras problemas durante el workshop:
- Revisa los logs de Docker:
docker-compose logs - Verifica que todos los puertos estén disponibles
- Asegúrate de que Docker Desktop esté ejecutándose correctamente
- Consulta la sección de solución de problemas arriba
¡Felicidades! 🎉 Ahora tienes un entorno completo de Secure MLOps ejecutándose con Docker Desktop.