En el actual panorama tecnológico, los proveedores de modelos de inteligencia artificial generativa enfrentan retos sin precedentes en términos de escala computacional. El preentrenamiento de modelos fundamentales, conocidos como Foundation Models (FMs), requiere a menudo miles de aceleradores trabajando de manera continua durante días, e incluso, meses. Para gestionar esta complejidad, es necesario implementar clústeres de entrenamiento distribuidos. Estos clústeres dependen de instancias de computación acelerada, utilizando marcos como PyTorch para paralelizar cargas de trabajo en cientos de aceleradores, como los chips AWS Trainium e Inferentia, además de GPUs de NVIDIA.
La coordinación de estos clústeres recae en orquestadores como SLURM y Kubernetes, encargados de programar trabajos entre nodos, gestionar recursos y procesar solicitudes. Junto a la infraestructura de AWS, como Amazon Elastic Compute Cloud (EC2), Elastic Fabric Adapter (EFA) y sistemas de archivos distribuidos como Amazon Elastic File System (EFS) y Amazon FSx, se pueden crear ultra clústeres capaces de manejar el entrenamiento y la inferencia de aprendizaje automático (ML) a gran escala. Sin embargo, a gran escala, incluso los orquestadores más robustos enfrentan desafíos en torno a la resiliencia de los clústeres, ya que los trabajos de entrenamiento distribuidos operan de forma sincrónica: si un solo nodo falla, todo el trabajo se interrumpe.
A pesar de las dificultades en términos de resiliencia y fiabilidad de la infraestructura, la experiencia del desarrollador se mantiene como un factor crítico. Los flujos de trabajo tradicionales de ML suelen crear silos, donde los científicos de datos prototipan en notebooks locales, sin acceso a almacenamiento a escala de clúster, mientras los ingenieros gestionan trabajos de producción a través de interfaces separadas de SLURM o Kubernetes. Esta fragmentación lleva a problemas como desajustes entre ambientes de notebook y de producción, y un uso subóptimo de los recursos del clúster.
Para abordar estos desafíos, Amazon ha presentado SageMaker HyperPod, un entorno de cómputo diseñado específicamente para el entrenamiento a gran escala de modelos fundamentales. SageMaker HyperPod incorpora agentes de monitoreo que, al detectar fallos de hardware, reparan o reemplazan automáticamente la instancia defectuosa y reanudan el entrenamiento desde el último punto guardado, minimizando así la necesidad de intervención manual.
Por otro lado, se ha lanzado Amazon SageMaker Studio, un entorno de desarrollo integrado (IDE) diseñado para simplificar el ciclo de vida del aprendizaje automático. Con una interfaz unificada y basada en la web, permite a los científicos de datos y desarrolladores llevar a cabo tareas de preparación de datos, construcción de modelos, entrenamiento, ajuste, evaluación, implementación y monitoreo, todo dentro de un mismo espacio de trabajo.
La flexibilidad de SageMaker Studio se complementa con sistemas de archivos distribuidos como Amazon FSx para Lustre, que proporciona un almacenamiento de alto rendimiento y escalable para cargas de trabajo intensivas en cómputo. Esto permite la integración directa entre las áreas de trabajo de SageMaker Studio y los clústeres de SageMaker HyperPod, facilitando un flujo de trabajo continuo que mejora la productividad de los científicos de datos.
A medida que se consolidan estas tecnologías, la industria del aprendizaje automático se ve impulsada hacia una mayor agilidad y eficiencia. Esto permite a los científicos de datos centrarse en la innovación y la mejora constante de modelos, mientras las nubes de computación manejan la parte técnica y resiliente del proceso. La automatización y mejora continua son claves para el éxito de cualquier operación a gran escala de inteligencia artificial, y SageMaker HyperPod junto con SageMaker Studio representan un prometedor avance en esa dirección.