Procedimientos recomendados para las operaciones de aprendizaje automático (MLOps) en Azure Kubernetes Service (AKS)
En este artículo, se describen los procedimientos recomendados y las consideraciones que deben tenerse en cuenta al usar MLOps en AKS. Para obtener más información sobre MLOps, consulte Operaciones de aprendizaje automático (MLOps) para flujos de trabajo de inteligencia artificial y aprendizaje automático.
Infraestructura como código (IaC)
IaC permite el aprovisionamiento y la administración coherentes y reproducibles de la infraestructura para diversos tipos de aplicaciones. Con las implementaciones de aplicaciones inteligentes, su implementación de IaC puede cambiar a lo largo de la canalización de IA, ya que la potencia de proceso y los recursos necesarios para la inferencia, el servicio, el entrenamiento y el ajuste de los modelos pueden variar. La definición y el control de versiones de las plantillas de IaC para los equipos de desarrolladores de IA pueden ayudar a garantizar la coherencia y la rentabilidad en todos los tipos de trabajo, al tiempo que desmitifican sus requisitos de hardware individuales y aceleran el proceso de implementación.
Inclusión en contenedores
La administración de los pesos, los metadatos y las configuraciones de los modelos en imágenes de contenedor permite la portabilidad, la simplificación del control de versiones y la reducción de los costes de almacenamiento a lo largo del tiempo. Con la creación de contenedores, puede:
- Aprovechar las imágenes de contenedor existentes, sobre todo para los modelos de lenguaje de gran tamaño (LLM) cuyo tamaño oscila de millones a miles de millones de parámetros y los modelos de difusión estables, almacenados en registros de contenedores seguros.
- Evitar un único punto de error (SPOF) en la canalización con el uso de varios contenedores ligeros que contengan las dependencias exclusivas de cada tarea en lugar de mantener una imagen grande.
- Almacenar grandes conjuntos de datos de texto o imágenes fuera de la imagen de contenedor base y hacer referencia a ellos cuando sea necesario en tiempo de ejecución.
Empezar a usar el operador de cadena de herramientas de IA de Kubernetes para implementar un LLM de alto rendimiento en AKS en cuestión de minutos.
Administración de modelos y control de versiones
La administración de modelos y el control de versiones son esenciales para realizar un seguimiento de los cambios en los modelos a lo largo del tiempo. Mediante el control de versiones de los modelos, puede:
- Mantener la coherencia entre los contenedores de modelos para facilitar la implementación en distintos entornos.
- Usar métodos de ajuste eficaz de parámetros (PEFT) para iterar más rápido en un subconjunto de pesos de modelo y mantener las nuevas versiones en contenedores ligeros.
Automation
La automatización es la clave para reducir los errores manuales, aumentar la eficacia y garantizar la coherencia en todo el ciclo de vida de ML. Al automatizar las tareas, puede:
- Integrar herramientas de alerta para desencadenar un flujo de ingesta de vectores de forma automática cuando fluyan nuevos datos en la aplicación.
- Establecer umbrales de rendimiento del modelo para realizar un seguimiento de las degradaciones y desencadenar canalizaciones de reentrenamiento.
Administración de escalabilidad y recursos
La administración de la escalabilidad y los recursos es fundamental para garantizar que la canalización de IA pueda controlar las demandas de la aplicación. Mediante la optimización del uso de los recursos, puede:
- Integrar herramientas que usen eficazmente los recursos de CPU, GPU y memoria asignados a través de la computación distribuida y varios niveles de paralelismo (por ejemplo, paralelismo de datos, modelo y canalización).
- Habilitar el escalado automático en los recursos del proceso para admitir grandes volúmenes de solicitudes de modelos en momentos de máxima actividad y reducir verticalmente en horas de poca actividad.
- De forma similar a las aplicaciones tradicionales, puede planear la recuperación ante desastres según los procedimientos recomendados de resistencia y confiabilidad de AKS.
Seguridad y cumplimiento
La seguridad y el cumplimiento son críticos para proteger los datos y garantizar que la canalización de IA cumpla los requisitos normativos. Con la implementación de procedimientos recomendados de seguridad y cumplimiento, puede:
- Integrar el examen de vulnerabilidades y riesgos comunes (CVE) para detectar vulnerabilidades habituales en imágenes de contenedor de modelos de código abierto.
- Use Microsoft Defender para contenedores para las imágenes de contenedor de modelos almacenadas en Azure Container Registry.
- Mantener una pista de auditoría de los datos ingeridos, los cambios del modelo y las métricas para mantener el cumplimiento de las directivas de la organización.
Pasos siguientes
Obtenga información sobre los procedimientos recomendados en otras áreas de implementación de la aplicación y las operaciones en AKS:
Azure Kubernetes Service