search
IA3 min lectura

Mixture of Experts: cómo 30.000 millones de parámetros solo usan 3.000 millones por token

Pablo IB

TL;DR: Un modelo MoE tiene muchos parámetros pero solo usa una fracción por token. Eso permite que modelos de 30B “piensen” como si fueran de 3B, pero con más conocimiento disponible. La trampa: todos los parámetros deben estar en memoria, aunque no se usen todos a la vez.


El problema

Un modelo tradicional (dense) procesa todos sus parámetros para cada token que genera. Un modelo de 14B procesa 14B por token. Uno de 30B, 30B. Más parámetros = más calidad, pero también más memoria.

Con 16GB VRAM, el límite práctico es ~14B en Q4 (cuantización de 4 bits). Si quieres más calidad, necesitas más VRAM. O necesitas MoE.


Cómo funciona MoE

Un transformer tiene capas. Cada capa tiene un bloque feed-forward (FFN) — la parte que almacena “conocimiento”. En un modelo dense, hay un FFN por capa.

En MoE, cada capa tiene varios FFN en paralelo. Cada uno es un “experto”. Y un router decide qué expertos activar para cada token.

Modelo dense (14B):
  Token → [FFN 14B] → output

Modelo MoE (Gemma 4 26B, 3.8B activos):
  Token → Router → [Experto A (1.9B)] → output
                   [Experto B (1.9B)] → output
                   [Experto C (1.9B)]  (no activado)
                   ...
                   (128 expertos total, 2 activos)

El router es una pequeña red neuronal que aprende qué expertos son mejores para qué tipo de token. Tokens de código → expertos de código. Tokens de razonamiento → expertos de razonamiento.

El resultado: Solo 3B parámetros se procesan por token. Pero esos 3B cambian dinámicamente según el contenido.


Los modelos MoE que importan para 16GB

ModeloParams totalesParams activosDisco Q4VRAM usadaExpertosActivos
Gemma 4 26B-A4B26B3.8B~16 GB~15 GB1282
Qwen3-Coder-30B30.5B3B~17 GB~14.5 GB1288
Qwen3.5-122B122B10B~33 GBCPU offload12810
Qwen3.6-35B-A3B35B3B~16 GB~22 GB*2568+1

*Requiere más de 16GB — solo entero en RTX 5090.

Patrón: La mayoría usa 128 expertos, activando 2-10 según modelo. Cada token pasa por ~1.5-6% de los expertos disponibles.


La trampa

Los parámetros activos son pocos. Pero los parámetros totales deben estar todos en memoria.

ModeloActivaEn memoriaDiferencia
Dense 14B14B14B1x
MoE 30B (3B activos)3B30B10x

Procesas como un modelo de 3B, pero ocupas como uno de 30B. La velocidad de generación es comparable a un 3B, pero necesitas la VRAM de un 30B.

En la práctica con 16GB VRAM:

ModeloCabe entero?Velocidad
Dense 14B (qwen3:14b)✅ Sí~50 tok/s
MoE 30B (coder-30b)⚠️ Offload 3.8 GB7.2 tok/s

El dense es más rápido. El MoE tiene más conocimiento disponible (30B vs 14B en memoria). La pregunta es: ¿necesitas ese conocimiento extra?


¿Cuándo usar MoE vs dense?

SituaciónUsaPor qué
Chat rápido, preguntasDense (e4b, qwen3:14b)Más rápido
Coding complejo, refactorMoE (coder-30b)Más conocimiento
Contexto largo (>32K)Dense pequeñoOffload destruye velocidad
Razonamiento pesadoMoE grandeMás params = mejor razonamiento
GPU con poca VRAM (8GB)Dense pequeño (e4b)MoE no cabe

El futuro: MoE cada vez más extremo

La tendencia es clara:

AñoModeloTotalActivoRatio
2024Mixtral 8x7B47B13B28%
2025Qwen3 235B235B22B9%
2025Gemma 4 26B26B4B15%
2026Qwen3-Coder-480B480B35B7%

Los modelos crecen en parámetros totales pero los activos se mantienen bajos. Eso significa: más conocimiento, mismo cómputo. Pero misma memoria.

El Qwen3-Coder-480B con solo 35B activos compite con Claude Sonnet-4 y GPT-4.1 en benchmarks de coding. No puedes correrlo en 16GB. Pero la arquitectura demuestra que el futuro no es “modelos más grandes que procesan más”. Es “modelos más grandes que eligen mejor”.


Anterior: El precipicio VRAM Siguiente: CUDA 13, Blackwell y el gap consumer/data center