Optimización de Inferencia
Técnicas para reducir el costo, la latencia y los recursos necesarios para ejecutar modelos de lenguaje en producción, desde cuantización hasta serving distribuido.
¿Qué es?
La optimización de inferencia abarca las técnicas para hacer que los LLMs sean más rápidos, baratos y eficientes en producción. Mientras que el entrenamiento ocurre una vez, la inferencia ocurre millones de veces — pequeñas mejoras tienen impacto masivo.
Técnicas principales
Cuantización
Reducir la precisión numérica de los pesos del modelo:
- FP16: de 32-bit a 16-bit flotante (estándar)
- INT8: 8-bit entero (~2x reducción de memoria)
- INT4/GPTQ/AWQ: 4-bit (~4x reducción, mínima pérdida de calidad)
KV Cache
Almacenar los key-value pairs de capas de atención para no recalcularlos en cada token generado. Esencial para generación autoregresiva eficiente.
Batching
- Static batching: agrupar múltiples requests en un batch
- Continuous batching: agregar/remover requests dinámicamente del batch
- Speculative decoding: un modelo pequeño genera candidatos que el grande verifica
Serving distribuido
- Tensor parallelism: dividir el modelo entre múltiples GPUs
- Pipeline parallelism: diferentes capas en diferentes GPUs
- Expert parallelism: para modelos Mixture-of-Experts (MoE)
Frameworks de serving
| Framework | Características |
|---|---|
| vLLM | PagedAttention, continuous batching |
| TensorRT-LLM | Optimización NVIDIA, alta performance |
| Ollama | Local, fácil de usar |
| llama.cpp | CPU inference, cuantización agresiva |
Métricas clave
- TTFT (Time to First Token): latencia hasta el primer token generado
- TPS (Tokens Per Second): velocidad de generación
- Throughput: requests por segundo del sistema
- Costo por token: precio de inferencia por token generado
Serverless inference
Servicios como AWS Bedrock y APIs de proveedores eliminan la gestión de infraestructura. Se paga por token consumido, ideal para cargas variables.
¿Por qué importa?
En producción, la inferencia ocurre millones de veces. Cada milisegundo de latencia y cada token procesado tiene un costo. Las técnicas de optimización — cuantización, KV cache, batching — son la diferencia entre un sistema de IA viable económicamente y uno que quiebra el presupuesto.
Referencias
- Efficient Large Language Model Inference — Survey de técnicas de optimización.
- vLLM: Easy, Fast, and Cheap LLM Serving — Kwon et al., 2023.
- Efficient LLM Inference Survey — Zhou et al., 2024. Survey de técnicas de optimización de inferencia.