Inteligencia artificial
El Futuro de la Inferencia sin Servidor para Modelos de Lenguaje Grande

Los avances recientes en modelos de lenguaje grande (LLM) como GPT-4, PaLM han llevado a capacidades transformadoras en tareas de lenguaje natural. Los LLM se están incorporando en diversas aplicaciones como chatbots, motores de búsqueda y asistentes de programación. Sin embargo, servir LLM a gran escala sigue siendo un desafío debido a sus sustanciales requisitos de GPU y memoria.
Los enfoques para superar esto generalmente se dividen en dos categorías principales:
- Técnicas de Compresión de Modelo
Estas técnicas apuntan a reducir el tamaño del modelo mientras mantienen la precisión. Los enfoques comunes incluyen:
- Podado – Eliminar parámetros redundantes o menos importantes del modelo. Esto crea un modelo esparsos con menos parámetros.
- Cuantización – Usar números de menor precisión como int8 o bfloat16 para representar pesos en lugar de fp32 o fp16. Esto reduce la huella de memoria.
- Destilación de Conocimiento – Entrenar un modelo “estudiante” más pequeño para imitar a un modelo “maestro” grande. Luego se utiliza el modelo más pequeño para la inferencia.
- Ejecución Selectiva
En lugar de modelos comprimidos, estas técnicas ejecutan selectivamente solo partes del modelo por inferencia:
- Activaciones esparsas – Saltar la computación en activaciones cero.
- Computación condicional – Ejecutar solo ciertas capas condicionadas a la entrada.
En el lado complementario con respecto al lado de arquitectura de software; para permitir una implementación más rápida de LLM, los investigadores han propuesto sistemas de inferencia sin servidor. En arquitecturas sin servidor, los LLM se alojan en clústeres de GPU compartidos y se asignan dinámicamente según la demanda. Esto permite una utilización eficiente de las GPU y reduce los costos para los desarrolladores. Las implementaciones prominentes incluyen Amazon SageMaker, Microsoft Azure ML y opciones de código abierto como KServe.
A pesar de la promesa de LLM sin servidor, los sistemas existentes exhiben retrasos de latencia que degradan la experiencia del usuario en aplicaciones interactivas:
- Descargas de puntos de control costosas: Los LLM tienen huellas de memoria grandes, a menudo de gigabytes a terabytes de tamaño. Descargar puntos de control desde almacenamiento remoto es tiempo consumido, toma más de 20 segundos incluso con redes optimizadas.
- Carga de puntos de control ineficiente: Incluso con almacenamiento local SSD, cargar puntos de control en memoria de GPU tarda decenas de segundos debido a factores como la deserialización de tensor y la asignación. Esto agrega retrasos significativos más allá del tiempo de inicio del contenedor.
Para abordar estos problemas, los investigadores de MIT CSAIL propusieron ServerlessLLM, un sistema innovador que logra inferencia sin servidor de baja latencia para LLM. ServerlessLLM mejora la localidad explotando la capacidad y ancho de banda abundantes pero subutilizados en almacenamiento de servidor de varios niveles para la implementación de LLM.
Innovaciones clave en ServerlessLLM ServerlessLLM incorpora varios diseños novedosos para reducir los tiempos de carga de LLM en entornos sin servidor:
- Carga rápida de puntos de control
- Formato de punto de control optimizado para carga que permite lecturas secuenciales rápidas y direcciones de tensor eficientes en memoria.
- Tubería de carga de puntos de control de varios niveles que maximiza la utilización del ancho de banda a través de la red, SSD, DRAM y memoria de GPU mediante técnicas como I/O directo, transferencia de memoria fijada y paralelismo.
- Migración en vivo para inferencia impulsada por localidad
- Migración basada en tokens que solo transmite tokens de prompt esenciales sobre la red, evitando la transferencia lenta de instantáneas.
- Migración de dos fases que permite inferencia ininterrumpida al recomputar estados de caché en el servidor de destino de forma asíncrona antes de transferir tokens finales.
- Asignación de servidor optimizada para la latencia
- Modelos precisos para estimar tiempos de carga de puntos de control desde cada nivel y tiempos de migración para un servidor.
- Programador consciente de la localidad que selecciona servidores que minimizan la latencia de inicio esperada utilizando los modelos anteriores.
Estas optimizaciones permiten que ServerlessLLM reduzca los tiempos de carga de LLM en 4-8 veces y los tiempos de inicio de extremo a extremo en más de 25 veces en comparación con sistemas existentes como PyTorch, TensorFlow y KServe.
Profundicemos en cómo ServerlessLLM logra estos ganancias de rendimiento significativas.
Acelerando la Carga de Puntos de Control
El primer obstáculo importante abordado por ServerlessLLM es la alta latencia de carga de puntos de control de LLM desde el almacenamiento hasta la memoria de GPU.
Para permitir una carga rápida de puntos de control, ServerlessLLM introduce:
- Formato de punto de control optimizado para carga
Los puntos de control estándar utilizados por frameworks como PyTorch están diseñados para el entrenamiento de modelos y depuración. Pero para la inferencia sin servidor, los puntos de control son de solo lectura y se acceden repetidamente.
Para optimizar para este uso intensivo de lectura, ServerlessLLM convierte los puntos de control en un formato con dos propiedades clave:
- Lectura secuencial en bloques: Los tensores se agrupan en archivos binarios por GPU, facilitando lecturas secuenciales grandes.
- Dirección de tensor eficiente: Un índice asigna nombres de tensor a desplazamientos de memoria, permitiendo la restauración directa en memoria sin deserialización.
- Tubería de carga de puntos de control de varios niveles
ServerlessLLM aprovecha la arquitectura en capas de los servidores de GPU, con medios de almacenamiento como SSD y redes que conectan a las GPU a través de PCIe, NVMe, etc.
El sistema incorpora una tubería de varios niveles para maximizar la utilización del ancho de banda en todos los niveles:
- Los fragmentos de datos en memoria se asignan usando memoria fijada para una transferencia de GPU rápida.
- Se utiliza I/O directo para lecturas de SSD eficientes sin sobrecargas de caché.
- Se leen diferentes fragmentos de almacenamiento en paralelo mediante varios hilos.
- La coordinación entre etapas se realiza a través de colas de tareas asíncronas.
Juntos, esto permite saturar la capacidad de ancho de banda incluso de los niveles más rápidos como NVMe RAID. Los experimentos revelan que ServerlessLLM logra una carga 6-8 veces más rápida que PyTorch/TensorFlow, reduciendo los tiempos de inicio para LLM grandes de más de un minuto a menos de 10 segundos.
Inferencia de LLM Impulsada por Localidad a través de Migración en Vivo
Con la carga acelerada, ServerlessLLM enfrenta un nuevo desafío: cómo aprovechar los puntos de control precargados para la localidad sin interrumpir las inferencias en curso en servidores ocupados.
ServerlessLLM introduce una técnica novedosa: migración en vivo de la inferencia de LLM a través de servidores de GPU. Esto permite transferir la ejecución de forma transparente a servidores con puntos de control locales disponibles.
Habilitadores clave de la migración en vivo de LLM:
- Migración basada en tokens
En lugar de crear una instantánea del estado del modelo completo, ServerlessLLM solo migra los tokens de prompt mínimos sobre la red. Esto transfiere órdenes de magnitud menos datos que las instantáneas.
- Migración de dos fases
El servidor de destino precomputa de forma asíncrona los estados de caché a partir de los tokens de prompt. Una vez listo, el servidor de origen transfiere los tokens finales antes de liberar los recursos. Esto evita paradas en la inferencia.
Los experimentos revelan que la migración basada en tokens reduce los tiempos de migración de decenas de segundos a menos de un segundo incluso para secuencias largas. La migración en vivo es crucial para prevenir retrasos de cola al lograr una asignación impulsada por la localidad.
Programación de Modelo Optimizada para la Latencia
Para minimizar la latencia de extremo a extremo, ServerlessLLM mejora el programador para optimizar la selección de servidor considerando la localidad. Esto implica:
- Estimador de tiempo de carga detallado
Los modelos predicen los tiempos de carga desde la red, cachés de SSD y memoria para cada servidor utilizando métricas como retrasos de cola, tamaños de modelo y ancho de banda medido.
- Predicción precisa de tiempo de migración
El programador estima los tiempos de migración para los servidores utilizando el número de tokens de prompt y salida. Rastrea el progreso de la inferencia de forma asíncrona para evitar sobrecargas.
- Asignación consciente de la localidad
Para cada solicitud de inferencia, el programador evalúa los tiempos de carga y migración estimados en todos los servidores. Selecciona el servidor que minimiza la latencia de inicio esperada.
El programador también mantiene colas de tareas de servidor y aprovecha un almacén consistente para la tolerancia a fallos. Juntos, estas innovaciones reducen las sobrecargas de programación mientras maximizan los beneficios de la localidad.
Evaluación del Rendimiento de ServerlessLLM
Experimentos exhaustivos evalúan la efectividad de extremo a extremo de ServerlessLLM en comparación con sistemas existentes utilizando modelos y cargas de trabajo del mundo real como OPT-175B y trazas modeladas a partir de trazas de Azure.
Resultados clave:
- Microbenchmarks: ServerlessLLM acelera la carga de puntos de control en 3,6-8,2 veces en comparación con PyTorch/TensorFlow. Satura completamente el ancho de banda de almacenamiento, incluso para el NVMe RAID de última generación.
- Programación: ServerlessLLM reduce la latencia de asignación en 4-12 veces en comparación con la programación aleatoria, destacando los beneficios de la conciencia de localidad. La migración en vivo evita retrasos de cola.
- Servicio de extremo a extremo: Para modelos grandes como OPT-30B, ServerlessLLM mejora la latencia del percentil 99 en 28-200 veces en comparación con sistemas como KServe y Ray Serve. También mejora la eficiencia de los recursos.
Estos aumentos sustanciales demuestran la capacidad de ServerlessLLM para superar los cuellos de botella en las implementaciones sin servidor existentes y desbloquear el poder de los LLM para servicios interactivos.
Las optimizaciones introducidas en ServerlessLLM, como la carga de varios niveles, la migración en vivo y la programación impulsada por la latencia, pueden ayudar a informar el diseño de futuras arquitecturas sin servidor. La capacidad del sistema para reducir los tiempos de carga y de inicio desbloquea la implementación escalable de modelos de lenguaje grande para aplicaciones prácticas.
Mirando Hacia Adelante: Desafíos en Curso
Si bien es un gran avance, ServerlessLLM representa solo el primer paso en la optimización de la inferencia sin servidor para LLM masivos. Permanecen varios problemas abiertos, incluyendo:
- Predecir la demanda de modelo en tiempo real para guiar la provisión y la precarga
- Colocar inteligentemente los puntos de control en los servidores para maximizar los aciertos de caché
- Escalabilidad eficiente de los algoritmos de programación para manejar clústeres más grandes
- Garantizar la equidad en la asignación de recursos entre modelos y desarrolladores
- Generalizar innovaciones como la migración en vivo a otras cargas de trabajo sin servidor
Abordar estas áreas puede ayudar a construir sobre la promesa de LLM sin servidor y hacer sus capacidades aún más accesibles. Más allá de las optimizaciones a nivel de sistema, reducir la huella de carbono excesiva y los daños potenciales de los modelos grandes también sigue siendo una prioridad urgente.
ServerlessLLM demuestra que existe un gran espacio para la innovación en las arquitecturas sin servidor de próxima generación para cargas de trabajo de IA. A medida que los LLM siguen creciendo en tamaño y popularidad, soluciones como ServerlessLLM que desbloquean su escalabilidad serán aún más impactantes. La confluencia de la investigación de sistemas y aprendizaje automático puede introducir nuevos paradigmas en el servicio, intercambio y escalado de modelos de IA de forma segura y sostenible.











