Escrito por Pawan Agarwal y Peiheng Hu

En nuestra serie de preguntas y respuestas «Engineering Energizers», exploramos los viajes transformadores de los líderes de ingeniería de Salesforce que están liderando avances significativos en sus campos. Hoy, nos reunimos con Pawan Agarwal, Director senior de ingeniería de software, que dirige el equipo de la plataforma Einstein AI, un equipo dedicado a mejorar el rendimiento y las capacidades de los grandes modelos de lenguaje (LLM).

Siga leyendo para conocer los retos iniciales a los que se enfrentó el equipo de Pawan con la latencia y el rendimiento de los LLM, su exhaustiva evaluación de las herramientas que condujo a la adopción de Amazon SageMaker, y las mejoras de rendimiento logradas posteriormente.

¿Cuál es la misión de tu equipo?

Nuestro equipo de la Plataforma de IA se compromete a mejorar el rendimiento y las capacidades de los modelos de IA, con especial atención a los LLM. Estos modelos están diseñados para avanzar en las capacidades de procesamiento del lenguaje natural de última generación para diversas aplicaciones empresariales. Nuestra misión es perfeccionar continuamente estos LLM y modelos de IA mediante la integración de soluciones de última generación y la colaboración con los principales proveedores de tecnología, incluidas las comunidades de código abierto y los servicios de nube pública como AWS. Esto garantiza que nuestros clientes reciban la tecnología de IA más avanzada disponible.

¿Podría describir los retos iniciales a los que se enfrentó su equipo con el LLM de Einstein for Developers en términos de latencia y rendimiento?

Inicialmente, nuestro equipo se enfrentó a importantes retos, que fueron especialmente pronunciados al gestionar grandes volúmenes de datos y múltiples peticiones concurrentes. Como resultado, experimentamos tiempos de respuesta más lentos y una escalabilidad limitada, lo que afectó negativamente a la experiencia general del usuario y la eficiencia del sistema.

>

–>

Pawan explica qué hace que la cultura de ingeniería de Salesforce sea única.

La cultura de ingeniería de Salesforce es única

¿Cómo llegó su equipo a la conclusión de que Amazon SageMaker era la mejor solución para sus problemas de rendimiento?

Realizamos una evaluación exhaustiva de varias herramientas y servicios, incluidas opciones de código abierto y soluciones de pago como el alojamiento NVIDIA Triton, así como startups emergentes que ofrecen soluciones de alojamiento como Run.AI y Mosaic AI. Después de evaluar estas opciones, descubrimos que Amazon SageMaker proporcionaba el mejor acceso a las GPU, escalabilidad, flexibilidad y optimizaciones de rendimiento para una amplia gama de escenarios, sobre todo a la hora de abordar nuestros retos con la latencia y el rendimiento.

Amazon SageMaker

¿Cuáles fueron las características específicas de Amazon SageMaker que el equipo utilizó para abordar los problemas de latencia en el LLM?

El equipo utilizó varias características específicas:

  1. Múltiples motores de servicio: SageMaker es compatible con varios motores de servicio como DeepSpeed, Hugging Face TGI, vLLM, y FasterTransformer y TensorRT LLM, lo que permite al equipo experimentar y seleccionar el motor más eficiente para reducir la latencia. Esta flexibilidad es crucial ya que la latencia de LLM depende en gran medida del rendimiento de los motores de inferencia.
  2. Estrategias avanzadas de batching: SageMaker permite diferentes estrategias de batching, que agrupan múltiples peticiones antes de que lleguen al modelo. De este modo, se optimiza el uso de los recursos de la GPU y se equilibra el rendimiento con la latencia, reduciendo esta última en última instancia.
  3. Estrategias de procesamiento por lotes
  4. Eficiente estrategia de enrutamiento: Con la capacidad de manejar múltiples instancias de modelos a través de varias GPU, la estrategia de enrutamiento de SageMaker asegura que el tráfico se distribuya de manera uniforme y eficiente a las instancias de modelos, evitando que una sola instancia se convierta en un cuello de botella.
  5. La estrategia de enrutamiento de SageMaker asegura que el tráfico se distribuya de manera uniforme y eficiente a las instancias de modelos, evitando que una sola instancia se convierta en un cuello de botella
  6. Acceso a GPUs de gama alta: SageMaker proporciona fácil acceso a instancias de GPU de gama alta, esenciales para ejecutar LLMs de forma eficiente. Esto es especialmente valioso dada la actual escasez de GPUs de gama alta en el mercado. La plataforma también admite el autoescalado de estas GPUs para satisfacer la demanda sin intervención manual.
  7. Iteración e implantación rápidas: Aunque no está directamente relacionada con la latencia, la capacidad de probar y desplegar rápidamente los cambios mediante los cuadernos SageMaker ayuda a reducir el ciclo de desarrollo general, lo que puede repercutir indirectamente en la latencia al acelerar la implementación de las mejoras de rendimiento.
  8. Los cuadernos SageMaker también permiten realizar pruebas de rendimiento de forma más rápida

Estas características ayudan colectivamente a optimizar el desempeño de los LLM al reducir la latencia y mejorar el rendimiento, lo que convierte a Amazon SageMaker en una solución sólida para administrar e implementar modelos de aprendizaje automático a gran escala.

¿Puede proporcionar un ejemplo de cómo Amazon SageMaker mejoró significativamente el desempeño del LLM?

El LLM de Einstein for Developers, un modelo de 7000 millones de parámetros, tenía problemas de rendimiento. Inicialmente, solo podía gestionar seis solicitudes por minuto, y cada solicitud tardaba más de 30 segundos en procesarse. Esto estaba lejos de ser eficiente y escalable. Sin embargo, tras integrar SageMaker junto con el motor FasterTransformer de NVIDIA, se produjo una mejora significativa. Ahora, el sistema gestiona unas 400 peticiones por minuto con una latencia reducida de aproximadamente siete segundos por petición, cada una de las cuales contiene unos 512 tokens.

SageMaker se ha convertido en una herramienta de gestión de la información de gran eficacia

Esta mejora supuso un gran avance, demostrando cómo las capacidades de SageMaker fueron fundamentales para optimizar el rendimiento del LLM.

Cambios de latencia y rendimiento con diferentes técnicas para los modelos Codegen1 y Codegen2.5.

¿Cuál fue el principal desafío al que se enfrentó su equipo a la hora de integrar Amazon SageMaker en su flujo de trabajo actual?

El principal desafío fue mejorar la plataforma SageMaker para incluir funcionalidades específicas que eran esenciales para nuestros proyectos. Por ejemplo, necesitábamos una compatibilidad robusta con FasterTransformer de NVIDIA para optimizar el rendimiento de nuestros modelos. Gracias a una fructífera colaboración con el equipo de SageMaker, integramos con éxito esta función, que inicialmente no estaba disponible

Además, identificamos una oportunidad para mejorar la eficiencia de los recursos alojando varios modelos lingüísticos de gran tamaño en una sola instancia de GPU. Nuestros comentarios condujeron al desarrollo de la función Componente de inferencia, que ahora nos permite a nosotros y a otros usuarios de SageMaker utilizar los recursos de la GPU de forma más eficaz. Estas mejoras fueron cruciales para adaptar la plataforma a nuestras necesidades específicas y han beneficiado significativamente nuestro flujo de trabajo

¿Cómo evaluó el equipo las mejoras en el rendimiento de LLM antes y después de la optimización con SageMaker?

Para evaluar el rendimiento de los modelos de lenguaje de gran tamaño (LLM), nos centramos en dos métricas clave: rendimiento y latencia.

  • El rendimiento se mide por el número de tokens que un LLM puede generar por segundo.
  • El rendimiento de un LLM se mide por el número de tokens que un LLM puede generar por segundo
  • Latencia viene determinada por el tiempo que se tarda en generar estos tokens para peticiones individuales.

Realizamos extensas pruebas de rendimiento y evaluaciones comparativas para realizar un seguimiento de estas métricas. Antes de utilizar SageMaker, nuestros modelos tenían una tasa de token por segundo más baja y latencias más altas. Con la optimización de SageMaker, observamos mejoras significativas tanto en el rendimiento como en la latencia, lo que también condujo a una reducción en el coste de servir, ahorrando en última instancia una cantidad considerable de dinero. Esta eficiencia de costes es otra medida crucial de la mejora del rendimiento.

Ponga esto donde quiera que aparezca su reproductor;

Pawan comparte lo que le mantiene en Salesforce.

¿Qué lecciones clave se aprendieron de la optimización de modelos en Amazon SageMaker para futuros proyectos?
  1. Manténgase actualizado: es crucial mantenerse al día con los motores de inferencia y las técnicas de optimización más recientes, ya que estos avances influyen significativamente en la optimización de modelos.
  2. Manténgase al día
  3. Estrategias de optimización a medida: emplee estrategias de optimización específicas para cada modelo, como la división en lotes y la cuantificación, con un manejo y una coordinación cuidadosos, ya que cada modelo puede requerir un enfoque a medida.
  4. Manténgase al día
  5. Implementar un alojamiento de modelos rentable: Céntrese en optimizar la asignación de los limitados recursos de la GPU para controlar los gastos. Técnicas como la virtualización pueden utilizarse para alojar varios modelos en una sola GPU, reduciendo así los costes.
  6. Implementar un alojamiento de modelos rentable
  7. Mantén el ritmo de las innovaciones: el campo de la inferencia de modelos evoluciona rápidamente con tecnologías como SageMaker, JumpStart y Bedrock. El desarrollo de estrategias para adoptar e integrar estas tecnologías es imperativo para los futuros esfuerzos de optimización.
  8. Las tecnologías de la información y la comunicación (TIC) son esenciales para el desarrollo de la sociedad de la información
Más información
  • ¿Hambre de más historias de Einstein? En este blog se explica cómo el equipo de Einstein desarrolló un plan para crear la nueva plataforma de IA unificada a partir de pilas heredadas aisladas
  • Mantente conectado: únete a nuestra Comunidad de talento
  • Consulta nuestros equipos de Tecnología y Producto para saber cómo puedes participar.

Entradas recomendadas