POLITICA DE COOKIES

Q2BSTUDIO.COM utiliza cookies técnicas, analíticas, de sesión y de publicidad con la finalidad de prestar un mejor servicio. No obstante, necesitamos su consentimiento explícito para poder utilizarlas. Así mismo puede cambiar la configuración de las cookies u obtener más información aquí .

ML autoactualizable para gestionar el tráfico con facilidad

De notebooks a producción: flujo MLOps automatizado con Docker, CDK y CI/CD en AWS

Publicado el 16/09/2025

La mayoría de los modelos de machine learning terminan viviendo en notebooks y nunca llegan a producción. Aquí presento un proyecto práctico que retrena el modelo automáticamente, escala a cientos de usuarios y se despliega en minutos con una pila basada en AWS, Docker y CI/CD. El objetivo fue mantener los costes bajos, por eso el entrenamiento se realizó localmente y los artefactos resultantes se subieron a AWS. Este proyecto muestra un flujo de MLOps de nivel inicial en el que el reentrenamiento y el redeployment están automatizados mediante CI/CD, aunque características avanzadas como versionado de datos, registro de modelos y monitorización no están implementadas aún.

Parte 1 Entrenamiento del modelo XGBoost con Optuna. Se usó un dataset de regresión sencillo con 15 variables, ideal para modelos de árboles de gradiente como XGBoost, que suele superar a modelos deep learning en datos tabulares de este tamaño gracias a regularizaciones L1 y L2 en los pesos de los árboles. Para optimizar hiperparámetros empleamos Optuna, que permite encontrar configuraciones eficientes en poco tiempo. El script de entrenamiento genera dos artefactos finales final_model.pkl y label_encoders.pkl que se empaquetan y suben a S3. Entrenar localmente fue la opción más económica y rápida para este caso; Sagemaker es recomendable para datasets grandes o necesidades de cómputo intensivo.

Durante el entrenamiento se registraron métricas clave como MSE R2 RMSE y MAE para evaluar desempeño. Estas métricas ayudan a comparar versiones del modelo y verificar mejoras tras el reentrenamiento.

Parte 2 Estrategia con contenedor personalizado. En lugar de usar imágenes preconstruidas de Sagemaker optamos por un contenedor Docker propio para controlar versiones de librerías y poder testear localmente. Esta decisión exige implementar manualmente dos endpoints HTTP que Sagemaker suele proporcionar por defecto: /invocations para predicciones y /ping para health check. Para atender estas rutas utilizamos Flask y gunicorn en el contenedor. La ventaja principal es reproducibilidad y ciclos de iteración más rápidos en desarrollo, además de poder depurar localmente antes del despliegue.

Resumen práctico del Dockerfile y pruebas locales. El contenedor parte de una imagen python slim se instalan dependencias y se expone un servicio en el puerto 8080 ejecutado con gunicorn. Localmente se construye la imagen y se monta el archivo model.tar.gz en /opt/ml/model para simular el entorno de Sagemaker y poder probar con herramientas como Postman las peticiones GET a /ping y POST a /invocations.

Parte 3 Infraestructura como código con AWS CDK. Para desplegar de forma repetible creamos la infraestructura con AWS CDK en Python. Componentes principales: asset de imagen Docker para ECR, upload del model.tar.gz a S3, creación del recurso SageMaker Model que enlaza imagen y artefactos, configuración de Endpoint Serverless para reducir costes y creación de una AWS Lambda expuesta vía API Gateway que actúa como gateway público para invocar el endpoint de Sagemaker. El uso de Serverless Inference y una Lambda de fachada permite exponer el modelo a clientes sin necesidad de credenciales y optimizar costes en escenarios de baja o media concurrencia.

Parte 4 Pipeline CI CD para actualizaciones dinámicas del modelo. Implementamos un workflow de GitHub Actions que detecta cambios en el dataset y dispara el reentrenamiento y el despliegue con CDK. La integración se realiza mediante OIDC y un rol IAM que la pipeline asume para operar en AWS sin almacenar credenciales estáticas. El pipeline instala dependencias entrena localmente y ejecuta cdk deploy actualizando el endpoint en cuestión de minutos, logrando un ciclo de entrega ágil para modelos que necesitan refrescarse con datos nuevos.

Parte 5 Pruebas de la API y resultados. Probamos la API desplegada con una prueba de carga tipo ramp up de 30 usuarios virtuales. Observamos un pico inicial de latencia por cold start de Lambda que se corrige con Provisioned Concurrency si se prioriza la latencia a coste adicional. Tras el inicio la infraestructura respondió con latencias estables alrededor de 100 ms y sin errores bajo la carga testada. Para entornos de producción conviene realizar pruebas de estrés más agresivas y verificar puntos de throttling y mecanismos de retry.

Lecciones aprendidas. Este proyecto aporta un camino claro para convertir prototipos en notebooks en servicios productivos: elegir modelos adecuados para datos tabulares como XGBoost optimizados con Optuna, controlar dependencias y entornos con contenedores Docker personalizados, desplegar infraestructura reproducible con AWS CDK y automatizar reentrenamientos con GitHub Actions. También muestra compromisos prácticos entre coste y operatividad, como preferir entrenamiento local cuando el dataset es pequeño y usar Serverless Inference para endpoints de baja demanda.

Sobre Q2BSTUDIO. En Q2BSTUDIO somos una empresa de desarrollo de software y aplicaciones a medida especializada en inteligencia artificial ciberseguridad y servicios cloud. Ofrecemos soluciones integrales para llevar modelos desde la experimentación hasta producción, incluyendo integración continua despliegue automatizado y optimización de infraestructura. Si buscas potenciar tu negocio con IA para empresas y agentes IA contamos con experiencia implementando pipelines reproductibles y arquitecturas escalables. También brindamos servicios gestionados en la nube explora nuestros servicios cloud aws y azure y descubre cómo podemos adaptar la infraestructura a tus necesidades.

Servicios y palabras clave. Nuestros servicios cubren desarrollo de aplicaciones a medida y software a medida seguridad aplicada y pentesting soluciones de inteligencia de negocio y Power BI para generar insights accionables, así como consultoría y desarrollo en inteligencia artificial y automatización de procesos. Si quieres avanzar en transformación digital con confianza te invitamos a conocer nuestras propuestas de soluciones de inteligencia artificial y a contactarnos para un análisis personalizado.

Conclusión. Un flujo MLOps básico pero automatizado permite mantener modelos actualizados y seguros sin depender de notebooks perpetuas. Con decisiones tecnológicas pragmáticas como entrenamiento local para datasets pequeños contenedores personalizados para reproducibilidad CDK para Infraestructura como Código y GitHub Actions para CI CD se puede construir una solución coste eficiente y escalable. En Q2BSTUDIO te ayudamos a diseñar e implementar estos flujos para convertir datos en valor real mediante aplicaciones a medida inteligencia artificial y buenas prácticas de seguridad y operaciones en la nube.

Fin del artículo, inicio de la diversión
Construyendo software juntos

Dando vida a tus ideas desde 2008

Diseñamos aplicaciones móviles y de escritorio innovadoras que cumplen con tus requisitos específicos y mejoran la eficiencia operativa.
Más info
Cuéntanos tu visión
Sea cual sea el alcance, podemos convertir tu idea en realidad. Envíanosla y charlemos sobre tu proyecto o una colaboración futura.
Contáctanos
artículos destacados
Live Chat
Enviado correctamente.

Gracias por confiar en Q2BStudio