El desarrollo de MLOps, o machine learning operations, está revolucionando la manera en que las empresas implementan modelos de aprendizaje automático. Esta área combina personas, procesos y tecnología para llevar a cabo casos de uso de ML de forma eficiente y se fundamenta en la creación de plataformas que aseguran la reproducibilidad y la robustez de los ciclos de vida de los modelos.
Los clientes empresariales deben adoptar plataformas de MLOps que permitan el seguimiento y la observabilidad de extremo a extremo. Estas plataformas se estructuran en un sistema de múltiples cuentas con estrictas medidas de seguridad y buenas prácticas de desarrollo, como la implementación automática mediante tecnologías de integración y entrega continua (CI/CD). Esto asegura que los usuarios solo interactúen al realizar cambios en los repositorios de código.
Una de las herramientas más destacadas en este ámbito es Terraform, desarrollado por HashiCorp. Esta solución ha sido ampliamente adoptada para desarrollar, construir y estandarizar la infraestructura de AWS en entornos multi-nube. Junto con plataformas como GitHub y sus acciones, el MLOps está facilitando la colaboración entre comunidades de DevOps y MLOps a nivel mundial.
Recientemente, se ha publicado un artículo que detalla cómo implementar una plataforma de MLOps utilizando Terraform junto con GitHub y GitHub Actions. Esto se centra en la creación de una infraestructura adecuada para construir una robusta pipeline de entrenamiento que registre modelos en el Registro de Modelos de Amazon SageMaker, proporcionando un marco que simplifica el camino desde el desarrollo hasta el despliegue de modelos.
Los usuarios finales, como científicos de datos e ingenieros de ML, podrán seleccionar plantillas del proyecto SageMaker que se ajusten a sus necesidades, facilitando agencias de configuración estandarizadas que crean repositorios privados en GitHub, personalizables según cada caso de uso. Esta automatización se logra a través de modelos reutilizables de Terraform, diseñados para ser utilizados en diferentes entornos de implementación.
Además, las plantillas personalizadas de SageMaker, como las dedicadas al entrenamiento y evaluación de modelos, están disponibles para guiar a las organizaciones en el proceso. Cada proyecto SageMaker activa una plantilla de AWS CloudFormation que gestiona la infraestructura y los recursos necesarios, haciendo que la fase de implementación sea más ágil y menos propensa a errores.
El interés en implementar estas plataformas es creciente, dado que ofrecen manuales claros para preparar infraestructuras en AWS, establecer organizaciones en GitHub y gestionar el estado de recursos mediante backends de Terraform, todo con el objetivo de facilitar una experiencia de usuario final más accesible y eficiente.
vía: AWS machine learning blog