Optimiza el Uso de Modelos de Lenguaje Pequeños con AWS Graviton y Amazon SageMaker

0
25
Run small language models cost-efficiently with AWS Graviton and Amazon SageMaker AI

A medida que las organizaciones buscan incorporar capacidades de inteligencia artificial en sus aplicaciones, los modelos de lenguaje de gran tamaño (LLMs) han surgido como herramientas poderosas para tareas de procesamiento de lenguaje natural. Amazon SageMaker AI ofrece un servicio completamente gestionado para implementar estos modelos de aprendizaje automático, con múltiples opciones de inferencia que permiten a las organizaciones optimizar costos, latencia y rendimiento. AWS siempre ha brindado a sus clientes opciones, lo que incluye elección de modelo, hardware y herramientas.

Los LLM tradicionales, que pueden contar con miles de millones de parámetros, requieren recursos computacionales significativos. Por ejemplo, un modelo de 7 mil millones de parámetros como el Meta Llama 7B necesita aproximadamente 14 GB de memoria GPU para almacenar los pesos del modelo. Sin embargo, avances recientes en la cuantización de modelos y la destilación de conocimiento han facilitado la ejecución de modelos de lenguaje más pequeños y eficientes en infraestructura basada en CPU. Aunque estos modelos no igualan las capacidades de los LLM más grandes, ofrecen una alternativa práctica para muchas aplicaciones del mundo real donde la optimización de costos es crucial.

En este contexto, se ha demostrado cómo implementar un modelo de lenguaje pequeño en SageMaker AI al extender contenedores preconstruidos para que sean compatibles con las instancias de AWS Graviton. La solución aprovecha procesadores Graviton3 para ejecutar modelos de lenguaje de manera rentable, utilizando componentes como puntos finales de SageMaker AI, instancias basadas en Graviton3 y gráficos precuantizados en formato GGUF.

Los procesadores Graviton, diseñados específicamente para cargas de trabajo en la nube, proporcionan una plataforma óptima para ejecutar estos modelos cuantizados, ofreciendo un rendimiento de precio hasta un 50% mejor en comparación con las instancias CPU tradicionales. Además, la infraestructura de SageMaker promueve operaciones simplificadas y escalabilidad flexible sin costo adicional en el tiempo de inactividad.

El contenedor utilizado en esta solución se basa en Llama.cpp, que es capaz de manejar eficientemente cargas de trabajo de inferencia, minimizando el uso de memoria y mejorando la velocidad de procesamiento. Los usuarios pueden implementar modelos utilizando una variedad de herramientas y configuraciones, lo que permiten un alto grado de personalización.

Para implementar este tipo de solución, es necesario crear un contenedor Docker compatible con la arquitectura ARM64 y preparar el modelo y el código de inferencia. Esto se realiza utilizando la clase PyTorchModel proporcionada por el SDK de SageMaker Python, lo que permite desplegar un modelo en un punto final con una instancia Graviton.

Este enfoque resalta una tendencia creciente en el uso de CPU para inferencia de modelos, contribuyendo a una significativa reducción de costos y a una mejor gestión de recursos para aplicaciones de inteligencia artificial. Con SageMaker AI y los procesadores Graviton, las organizaciones pueden escalar sus capacidades de IA de manera más eficiente y efectiva.
vía: AWS machine learning blog