Ampliación del servicio de modelos LoRa ajustados

Diseñado para la velocidad: ~ 10 ms de latencia, incluso bajo carga
¡Una forma increíblemente rápida de crear, rastrear e implementar sus modelos!
- Gestiona más de 350 RPS en solo 1 vCPU, sin necesidad de ajustes
- Listo para la producción con soporte empresarial completo
En el ámbito del despliegue de aplicaciones de inteligencia artificial, ampliar el servicio de modelos ajustados se ha convertido en un desafío fundamental. Imagínese un escenario: se trata de una empresa emergente de SaaS que atiende a 500 clientes con necesidades diversas y que requiere adaptaciones precisas del modelo lingüístico (LLM) para obtener soporte interno y contenido de marketing personalizado. Esto implica la ingente tarea de ajustar alrededor de 1000 modelos.
Para abordar estas limitaciones, introduzca LoRa FineTung, una técnica que consiste en congelar el LLM principal y refinar selectivamente los pesos específicos para adaptarse a los datos actualizados. Este enfoque, eficiente y escalable, funciona con una fracción de los parámetros originales definidos por la configuración de LoRa.
Sin embargo, el verdadero desafío surge al implementar estos adaptadores de precisión de manera efectiva.
Configuración del experimento
Numerosos marcos de servicio de LLM de código abierto están trabajando activamente para incorporar adaptadores LoRa que sirvan, pero aún no se puede encontrar una solución integral. En este experimento, exploramos Lora X de Predibase, un marco prometedor que parece haber descifrado de manera eficiente el código para servir y escalar los adaptadores LoRa.
💡
Para obtener más información sobre LoRaX de Predibase, consulte su blog: LoRaX: ofrece cientos de LLM perfeccionados por el costo de uno
Características clave de Lora X
LoraX se destaca por sus tres pilares fundamentales de implementación:
- Carga dinámica del adaptador: Permite cargar justo a tiempo los pesos de LoRa ajustados, lo que garantiza que no se interrumpan las solicitudes simultáneas durante el tiempo de ejecución.
- Almacenamiento de peso en caché por niveles: Facilita el intercambio rápido de adaptadores LoRa entre solicitudes, lo que evita problemas de falta de memoria al transferir el peso de los adaptadores a la CPU y al disco.
- Procesamiento continuo por lotes de múltiples adaptadores: Emplea una política de programación justa para optimizar el rendimiento general del sistema, ampliando las estrategias de procesamiento por lotes continuo en varios conjuntos de adaptadores LoRa en paralelo.
Evaluación del desempeño con Lora X
En nuestro experimento, evaluamos exhaustivamente el rendimiento de LoRaX en la gestión de una amplia gama de adaptadores ajustados mediante el modelo TinyLlama LLM. A lo largo de nuestros experimentos, evaluamos su eficiencia al procesar numerosas solicitudes en varios adaptadores.
Requisitos previos para Lora X Configuración
Para replicar nuestros experimentos, siga estos requisitos previos para configurar LoraX en su servidor:
docker run\
--gpus todos\
--shm-tamaño 1 g\
-p 80 80:80\
-v $PWD/datos: /datos\
ghcr.io/predibase/lorax: más reciente\
--model-id tinyllama/tinyllama-1.1b-chat-v0.6 # modelo base usado para afinar
Además, instale el cliente LoRax para las llamadas de inferencia mediante:
pip instala lorax-client
Perspectivas de inferencia
El uso de LoRaX para servir modelos de LoRa ajustados con precisión proporcionó distintas ventajas debido a su capacidad de utilizar una sola GPU para el modelo LLM básico y, al mismo tiempo, cargar dinámicamente cada adaptador por solicitud. Este enfoque dinámico, que emplea una sola GPU y carga los adaptadores sobre la marcha, posiciona a LoRax como una solución óptima para atender a una multitud de modelos LoRa ajustados.
Ejemplo de código de inferencia:
desde lorax import Client
cliente = Cliente (» https://example.lorax.truefoundry.tech «, tiempo de espera = 10)
texto_generado = client.generate (
rápido,
do_sample=falso,
max_new_tokens=10,
adapter_id=adapter_id,
adapter_source="local»
) .texto_generado
Nuestros hallazgos experimentales demostraron de manera concluyente los beneficios sustanciales de emplear LoRa para servir modelos LoRa ajustados. Gracias a la carga dinámica del adaptador por solicitud y a la utilización eficaz de una sola GPU A100 para el modelo LLM básico, LoRaX optimizó notablemente el rendimiento.
Perspectivas de rendimiento
En nuestros experimentos recientes con la carga dinámica de 100 adaptadores, examinamos detenidamente sus características de rendimiento. La latencia inicial observada durante la primera solicitud se debió principalmente a la necesidad de cargar el modelo LLM básico en la memoria. Sin embargo, las solicitudes posteriores mostraron una reducción de la latencia debido a la capacidad de LoRax de intercambiar adaptadores rápidamente y realizar fusiones en tiempo real para obtener predicciones.

Anteriormente, analizamos el proceso de carga de modelos ajustados de Lora con HuggingFace PEFT en nuestros blogs. Sin embargo, nuestros experimentos pusieron de manifiesto problemas importantes relacionados con este enfoque:
1) Aumento de la latencia con más adaptadores en la memoria de la GPU:
El principal problema surgió cuando intentamos colocar más adaptadores en la memoria de la GPU. Esto provocó un aumento notable de la latencia. Con cada adaptador adicional, la latencia experimentó un aumento considerable, lo que repercutió en el rendimiento general.
2) Capacidad limitada en la memoria de la GPU:
Otra limitación crítica era el conjunto finito de adaptadores que podían caber en la memoria de la GPU. Esta restricción dificultaba la escalabilidad y planteaba un obstáculo a la hora de alojar un mayor número de adaptadores de forma simultánea.
Para ilustrar mejor las diferencias de rendimiento, considere las siguientes comparaciones:
Procesamiento de 70 fichas y generación de 10 fichas en una GPU A100:
HuggingFace PET: La latencia osciló entre 400 y 450 ms.
Lora X: Demostró una latencia promedio de 170 ms.
Impacto de los adaptadores en la latencia:
HuggingFace PET: La adición de 1000 adaptadores Lora de tinyllama al LLM base aumentó la latencia a 3500-4000 ms, lo que representa un aumento de aproximadamente el 700%.
Lora X: La latencia no se vio afectada de manera constante por la cantidad de adaptadores, gracias a su mecanismo de carga dinámica en la GPU, que garantiza una latencia estable incluso con un mayor número de modelos.
En resumen, si bien HuggingFace PEFT facilita la adaptación del modelo y la utilización de los adaptadores, se enfrenta a los desafíos de rendimiento a medida que aumenta la cantidad de adaptadores, lo que afecta notablemente a la latencia y la escalabilidad. Por el contrario, LoRaX destaca por su capacidad para cargar adaptadores de forma dinámica y ejecutar predicciones en tiempo real, lo que garantiza un rendimiento y una escalabilidad consistentes, incluso con una cantidad considerable de modelos Lora perfeccionados.
Conclusión
La destreza de LoRaX para gestionar de manera eficiente diversos modelos LoRa perfeccionados y, al mismo tiempo, mantener un modelo base coherente es un buen augurio para las empresas que buscan servicios de IA escalables y adaptados a las necesidades individuales de los clientes.
Al aprovechar las eficientes estrategias de carga de adaptadores de LoRa, las empresas pueden escalar sus servicios con confianza para abarcar miles de modelos LoRa ajustados específicamente, al tiempo que mantienen un modelo base unificado.
En resumen, LoRaX se perfila como un punto de inflexión en el servicio de adaptadores ajustados, ya que ofrece una solución escalable y optimizada para las empresas que buscan implementar diversos modelos de IA de manera efectiva.
True Foundry es un PaaS de implementación de aprendizaje automático sobre Kubernetes para acelerar los flujos de trabajo de los desarrolladores y, al mismo tiempo, permitirles una flexibilidad total a la hora de probar e implementar modelos, al tiempo que garantiza una seguridad y un control totales para el equipo de Infra. A través de nuestra plataforma, permitimos a los equipos de aprendizaje automático implementar y supervisar modela en 15 minutos con un 100% de confiabilidad, escalabilidad y la capacidad de revertirse en segundos, lo que les permite ahorrar costos y lanzar los modelos a la producción más rápido, lo que permite obtener un verdadero valor empresarial.
TrueFoundry AI Gateway ofrece una latencia de entre 3 y 4 ms, gestiona más de 350 RPS en una vCPU, se escala horizontalmente con facilidad y está listo para la producción, mientras que LitellM presenta una latencia alta, tiene dificultades para superar un RPS moderado, carece de escalado integrado y es ideal para cargas de trabajo ligeras o de prototipos.
La forma más rápida de crear, gobernar y escalar su IA



















.png)


.webp)




.webp)







