Transformer-Lite: Implementación Eficiente de Modelos de Lenguaje de Gran Escala en GPUs de Teléfonos Móviles
Transformer-Lite: High-efficiency Deployment of Large Language Models on Mobile Phone GPUs
March 29, 2024
Autores: Luchang Li, Sheng Qian, Jie Lu, Lunxi Yuan, Rui Wang, Qin Xie
cs.AI
Resumen
El Modelo de Lenguaje de Gran Escala (LLM, por sus siglas en inglés) se utiliza ampliamente para tareas como asistentes inteligentes, resumen de texto, traducción y multimodalidad en teléfonos móviles. Sin embargo, los métodos actuales para la implementación de LLM en dispositivos mantienen una velocidad de inferencia lenta, lo que resulta en una experiencia de usuario deficiente. Para facilitar la implementación eficiente de LLM en las GPU de los dispositivos, proponemos cuatro técnicas de optimización: (a) un enfoque basado en expresiones simbólicas para admitir la inferencia de modelos con formas dinámicas; (b) optimizaciones de operadores y configuración de prioridades de ejecución para mejorar la velocidad de inferencia y reducir el retraso en el teléfono; (c) un método de cuantización FP4 denominado M0E4 para reducir la sobrecarga de desquantización; (d) una técnica basada en sub-tensores para eliminar la necesidad de copiar la caché KV después de la inferencia del LLM. Además, implementamos estos métodos en nuestro motor de inferencia móvil, Transformer-Lite, que es compatible con procesadores Qualcomm y MTK. Evaluamos el rendimiento de Transformer-Lite utilizando LLMs con diversas arquitecturas y parámetros que van desde 2B hasta 14B. Específicamente, logramos velocidades de prellenado y decodificación de 121 tokens/s y 14 tokens/s para ChatGLM2 6B, y 330 tokens/s y 30 tokens/s para el modelo más pequeño Gemma 2B, respectivamente. En comparación con FastLLM basado en CPU y MLC-LLM basado en GPU, nuestro motor alcanza una aceleración de más de 10 veces en la velocidad de prellenado y de 2 a 3 veces en la velocidad de decodificación.
English
The Large Language Model (LLM) is widely employed for tasks such as
intelligent assistants, text summarization, translation, and multi-modality on
mobile phones. However, the current methods for on-device LLM deployment
maintain slow inference speed, which causes poor user experience. To facilitate
high-efficiency LLM deployment on device GPUs, we propose four optimization
techniques: (a) a symbolic expression-based approach to support dynamic shape
model inference; (b) operator optimizations and execution priority setting to
enhance inference speed and reduce phone lagging; (c) an FP4 quantization
method termed M0E4 to reduce dequantization overhead; (d) a sub-tensor-based
technique to eliminate the need for copying KV cache after LLM inference.
Furthermore, we implement these methods in our mobile inference engine,
Transformer-Lite, which is compatible with both Qualcomm and MTK processors. We
evaluated Transformer-Lite's performance using LLMs with varied architectures
and parameters ranging from 2B to 14B. Specifically, we achieved prefill and
decoding speeds of 121 token/s and 14 token/s for ChatGLM2 6B, and 330 token/s
and 30 token/s for smaller Gemma 2B, respectively. Compared with CPU-based
FastLLM and GPU-based MLC-LLM, our engine attains over 10x speedup for the
prefill speed and 2~3x speedup for the decoding speed.Summary
AI-Generated Summary