Skip to main content

Decodificación Especulativa y Modelos Borrador

Tecnología de aceleración de hardware para la inferencia de grandes modelos de lenguaje, aumentando la velocidad de 2 a 3 veces sin pérdida de calidad mediante la verificación paralela de predicciones de un modelo borrador rápido.

1. Visión general del concepto y problema sistémico

La generación de texto por grandes modelos de lenguaje (LLM) sufre de un cuello de botella hardware fundamental: limitación de ancho de banda de memoria (Memory-Bandwidth Bound):

  • Las GPUs tienen una enorme capacidad de cálculo (TFLOPs), pero durante la generación secuencial de un token a la vez, los bloques de cálculo están inactivos el 95% del tiempo esperando que los pesos del modelo se transfieran desde la VRAM.
  • Esto limita la velocidad de los grandes modelos a un rango de 25 a 40 tokens por segundo, lo cual es demasiado lento para ciclos de agente prolongados.

Decodificación Especulativa (Speculative Decoding) resuelve elegantemente este problema mediante la combinación de dos modelos: un modelo borrador pequeño (Draft Model, por ejemplo, 1B–3B) y el modelo grande objetivo (Target Model, por ejemplo, 70B).

2. Taxonomía arquitectónica y modelo mental

┌─────────────────────────────────────────────────────────────┐
│               PIPELINE DE DECODIFICACIÓN ESPECULATIVA       │
├─────────────────────────────────────────────────────────────┤
│ 1. GENERACIÓN DEL BORRADOR (Modelo pequeño 1B trabaja con   │
│    caché de GPU):                                           │
│    • Genera rápidamente una hipótesis con K=5 tokens:      │
│      ["const", " ", "user", " =", " "]                     │
│    • Toma solo 5 milisegundos                               │
├─────────────────────────────────────────────────────────────┤
│                          │                                  │
│                          ▼ UN PASO DEL MODELO GRANDE       │
├─────────────────────────────────────────────────────────────┤
│ 2. VERIFICACIÓN DEL OBJETIVO (Modelo grande 70B en un ciclo):│
│    • Verifica todos los 5 tokens en paralelo con una sola   │
│      llamada a VRAM                                        │
│    • Resultado de la verificación:                          │
│      [Token 1: OK] [Token 2: OK] [Token 3: OK] [Token 4: OK]│
│      [Token 5: RECHAZAR -> Reemplazar por " {"]            │
├─────────────────────────────────────────────────────────────┤
│ 3. AUMENTO DE VELOCIDAD DE SALIDA:                          │
│    • En 1 ciclo de VRAM se generaron 4.5 tokens válidos     │
│    • Aceleración real: 2.5x – 3.2x TPS                     │
└─────────────────────────────────────────────────────────────┘

3. Pipeline técnico y mecánica interna

01. Aceleración de ciclos de código de agentes en vLLM

Ejecutar el servidor vLLM con el parámetro de decodificación especulativa:

vllm serve meta-llama/Llama-3.3-70B-Instruct \
  --speculative-model meta-llama/Llama-3.2-1B-Instruct \
  --num-speculative-tokens 5 \
  --gpu-memory-utilization 0.95

La velocidad de generación de código aumenta de 35 a 95 tokens por segundo sin cambios en el código del cliente.

02. Medusa y Eagle (Especulación sin un modelo borrador separado)

Arquitecturas de vanguardia (Medusa Heads), donde en lugar de un modelo separado se utilizan varias capas adicionales de salida (Decoding Heads) en el mismo modelo objetivo, lo que ahorra memoria de GPU.

4. Escenarios prácticos de ingeniería en producción

01. Aceleración de ciclos de código de agentes en vLLM

Ejecutar el servidor vLLM con el parámetro de decodificación especulativa:

vllm serve meta-llama/Llama-3.3-70B-Instruct \
  --speculative-model meta-llama/Llama-3.2-1B-Instruct \
  --num-speculative-tokens 5 \
  --gpu-memory-utilization 0.95

La velocidad de generación de código aumenta de 35 a 95 tokens por segundo sin cambios en el código del cliente.

02. Medusa y Eagle (Especulación sin un modelo borrador separado)

Arquitecturas de vanguardia (Medusa Heads), donde en lugar de un modelo separado se utilizan varias capas adicionales de salida (Decoding Heads) en el mismo modelo objetivo, lo que ahorra memoria de GPU.

5. Errores comunes, trampas y seguridad

  • Degradación de la Tasa de Aceptación: Si el modelo borrador difiere significativamente en estilo o datos de entrenamiento del modelo objetivo, el modelo grande rechazará el 80% de los tokens propuestos. La aceleración desaparecerá y el tiempo de inferencia incluso aumentará. El modelo borrador debe ser de la misma familia (por ejemplo, Llama 1B para Llama 70B).
  • Costos de VRAM para el segundo modelo: El modelo borrador ocupa 2 a 4 GB adicionales de memoria de video, lo que puede ser crítico en tarjetas gráficas con un límite de 24 GB.
/ Preguntas frecuentesSchema.org FAQPage

FAQ: Decodificación Especulativa y Modelos Borrador

No, la precisión es matemáticamente idéntica a la del modelo grande original. El modelo grande verifica completamente la distribución de probabilidades de los tokens del modelo borrador y rechaza inmediatamente cualquier token que no se ajuste a su propia lógica.
/ Enlaces internos
Todos los términos