15 puntos por xguru 2024-06-17 | 4 comentarios | Compartir por WhatsApp
  • ¿Cuánto cuesta alojar directamente un modelo de lenguaje grande (LLM)?
  • Si se aloja el modelo Llama-3 8B-Instruct en EKS, cuesta alrededor de $17 por cada millón de tokens
  • Si se usa ChatGPT para la misma tarea, cuesta $1 por cada millón de tokens
  • Si se autoalojan los equipos, el costo por millón de tokens baja a menos de $0.01 y se tarda unos 5.5 años en llegar al punto de equilibrio
    • Cálculo basado en 4x GPU NVidia Tesla T4 y otros costos de hardware ($3800) + costo mensual (electricidad y otros) de $100

Proceso para determinar el hardware óptimo

  • Entorno de prueba: todas las pruebas se ejecutaron en un clúster de EKS

  • Primer intento: instancia AWS g4dn.2xlarge con GPU Nvidia Tesla T4.

    • Especificaciones: 1 NVidia Tesla T4, 32GB de memoria, 8 vCPUs.
    • Resultado: no fue posible ejecutar la versión de 8B ni la de 70B parámetros de Llama 3.
    • Problema: se produjo OOM (Out of Memory) y el tiempo de respuesta fue de unos 10 minutos.
  • Segundo intento: instancia AWS g4dn.16xlarge con 4 GPU Nvidia Tesla T4.

    • Especificaciones: 4 NVidia Tesla T4, 192GB de memoria, 48 vCPUs.
    • Resultado: el tiempo de respuesta se redujo a menos de 10 segundos.

Implementación inicial

  • Método de implementación: se copió y usó el código de Llama-3 de Hugging Face.
  • Cálculo de costos:
    • Costo de usar una instancia g5dn.12xlarge: $3.912 por hora.
    • Al calcular el costo mensual, el costo fue de aproximadamente $167.17 por cada millón de tokens.
    • Costo de ChatGPT 3.5 Turbo: $1 por cada millón de tokens.

Solución del problema

  • Identificación del problema: se descubrió que el método anterior era incorrecto y se usó vLLM.
  • Resultado de la mejora:
    • Se instalaron ray y vllm para alojar el servidor de API.
    • Con la opción —tensor-parallel-size 4 se usaron las 4 GPU.
    • Resultado: el tiempo de respuesta mejoró de forma importante hasta 2044ms.
    • Al calcular los costos, el costo fue de aproximadamente $17 por cada millón de tokens.

Enfoque alternativo

  • Alojamiento en hardware propio:
    • Hardware necesario: 4x GPU NVidia Tesla T4, alrededor de $700 en eBay.
    • Incluyendo otros costos, el costo total de instalación es de unos $3,800.
    • Costo mensual de energía: alrededor de $50.
    • El costo mensual total se calcula en unos $100.
    • Se tarda unos 66 meses (5.5 años) en llegar al punto de equilibrio.

Conclusión

  • Ventaja: alojar en hardware propio puede reducir costos.
  • Desventaja: requiere administrar el hardware y escalarlo
    • Como asumir una utilización del 100% no es realista, es necesario evaluar según la situación real.

4 comentarios

 
iolothebard 2024-06-17

No se trata de montar el modelo,
sino de hacer solo inferencia con Llama 8B, así que el equipo es excesivo.
Con una GPU de 24 GB (3090 o 4090) es suficiente (2~3 millones), y con una factura de electricidad mensual de unos 30 mil won también alcanza.
Ahora que lo escribo, veo que ya está mencionado abajo jaja

 
wedding 2024-06-17

5.5 años sí que es bastante..

 
ragingwind 2024-06-17

¿Con 8B se puede lograr algo más que nivel juguete?

 
xguru 2024-06-17

Opiniones en Hacker News

  • Alojar el hardware por cuenta propia en lugar de usar AWS reduce mucho los costos.
    • Usar 4 NVidia Tesla T4 cuesta alrededor de $3,800.
    • Para el modelo Llama 3 8b, basta con una sola GPU 3090 o 4090.
    • Comprar GPUs en eBay puede ayudar a reducir costos.
  • El modelo Llama 8B cuesta en AWS Bedrock $0.40 por 1M de tokens de entrada y $0.60 por tokens de salida, por lo que es más barato que los modelos de OpenAI.
    • También hay que considerar el tiempo y el costo de montar y dar mantenimiento al servidor.
  • Precio de Jetstream + Maxtext
    • El precio con compromiso a 3 años usando TPU v5e es de $0.25 por 1M de tokens.
    • El precio on-demand es de alrededor de $0.45 por 1M de tokens.
    • Se pueden ver más detalles en la sesión de Google Next 2024.
  • Se espera una caída en el valor de mercado de NVIDIA
    • El valor de mercado de NVIDIA podría bajar a medida que el rendimiento de los LLM se estanque y los LLM se vuelvan comerciales.
    • La demanda de cómputo para entrenamiento también caerá más rápido de lo esperado.
  • Problemas en el análisis de costos
    • Ejecutar con batch size 1 provoca errores importantes en el análisis de costos.
    • Sale entre 100 y 1000 veces más caro que lo que cobran los proveedores de API.
  • Costo de ejecutar un modelo 8B
    • Una 3090 y un sistema básico bastan para ejecutar un modelo 8B sin problema.
    • La diferencia de costos entre OpenAI y AWS es grande ($1 vs $17).
    • En la práctica, AWS podría ser más barato.
  • Problemas para entender los costos
    • No es adecuado entender los costos a partir de solicitudes síncronas individuales.
    • ChatGPT procesa muchas solicitudes en paralelo.
    • Solicitudes más grandes, solicitudes concurrentes y el encolado de solicitudes pueden reducir mucho los costos.
  • Costo de acceso a los LLM
    • El costo de acceso a los LLM es muy bajo.
    • Dado el avance tecnológico, los ingenieros deberían alegrarse de que el costo sea tan bajo.
  • La T4 es una tarjeta de hace 6 años; sería más apropiado compararla con 3090, 4090, A10, A100, etc.