Calculadora de parámetros activos de MoE
Datos de entrada
| Expertos totales | 8 |
|---|---|
| Expertos activos (top-k) | 2 |
| Parámetros por experto | 7 |
| Parámetros compartidos | 1 |
Calculadora de parámetros activos de MoE
Calcula el número total y el número activo de parámetros de un modelo de mezcla de expertos a partir del número de expertos, el enrutamiento top-k, el tamaño por experto y los pesos compartidos, separando la huella de memoria del cómputo por token.
Datos de entrada
Modelo
Resultados
Introduce un valor para ver los resultados.
Detalles
Los parámetros activos de MoE
Un modelo de mezcla de expertos arrastra un par de cifras llamativo: un número total de parámetros grande que describe cuánto puede contener, y un número activo mucho más pequeño que describe cuánto trabajo realiza por token. A menudo se confunden, pero responden preguntas distintas: uno fija la factura de memoria, el otro la factura de cómputo. Esta calculadora los separa a partir del número de expertos, el enrutamiento top-k, el tamaño por experto y los pesos compartidos.
Cómo se construye una mezcla de expertos
En un transformer denso, cada token pasa por todos los pesos. Una mezcla de expertos sustituye el bloque feed-forward de una capa por muchos expertos paralelos y añade un pequeño enrutador que, para cada token, elige solo los top-k de ellos. El resto del modelo —la atención, el enrutador, las incrustaciones y a veces un experto compartido que siempre se ejecuta— permanece común a todos los tokens. Así, el recorrido de un token toca los pesos compartidos y solo el puñado de expertos a los que fue enrutado, mientras que los demás expertos quedan inactivos para ese token.
Esto desacopla dos magnitudes que se mueven juntas en un modelo denso. La capacidad crece con el número de expertos, porque más expertos pueden almacenar más conocimiento especializado. El cómputo crece solo con los expertos activos, porque solo esos hacen aritmética sobre un token dado.
Los dos recuentos
Con expertos totales, activos por token, parámetros por experto y parámetros compartidos, los recuentos total y activo son
TAr=s+E⋅p=s+k⋅p=TAdonde es el total que determina la huella de memoria, es el recuento activo que determina el cómputo por token y es la fracción de los pesos que toca cada token.
Ejemplo resuelto
Considérese un modelo con ocho expertos de siete mil millones de parámetros cada uno, que enruta dos por token, sobre mil millones de parámetros compartidos:
TAr=1+8×7=57 mil millones=1+2×7=15 mil millones=5715≈0,263=26,3%El modelo contiene 57 mil millones de parámetros pero gasta cómputo como si fuera un modelo de 15 mil millones de parámetros en cada token: aproximadamente una cuarta parte de los pesos están activos a la vez. Ese es el atractivo: la capacidad de un modelo de 57 mil millones con un coste por token cercano al de uno de 15 mil millones.
La memoria sigue al total
El inconveniente es que el ahorro está en el cómputo, no en la memoria. Como cualquier experto puede ser elegido para cualquier token, y un lote de tokens se reparte entre muchos expertos, todos deben residir a la vez: el modelo no puede predecir qué expertos necesitará un token futuro. Así, la huella de memoria escala con el recuento total , mientras que solo el cómputo escala con el recuento activo . Un modelo de mezcla de expertos es, por tanto, grande de alojar pero barato de ejecutar, el equilibrio opuesto al de un modelo denso de igual coste por token.
El recuento total que rige el lado de la memoria puede construirse a partir de la arquitectura con la Calculadora del número de parámetros de un transformer, y la memoria necesaria para servir realmente esos pesos se aborda en la Calculadora de VRAM para inferencia de LLM.
Preguntas frecuentes (FAQ)
¿Por qué usar una mezcla de expertos?
Una mezcla de expertos permite que un modelo aumente su número de parámetros —y por tanto su capacidad de almacenar conocimiento— sin un incremento equivalente del cómputo gastado en cada token. El enrutador envía cada token solo a un pequeño número de expertos, de modo que el trabajo en coma flotante por token sigue a los parámetros activos en lugar del total.
Esto hace posible entrenar y servir un modelo con muchos más parámetros que un modelo denso del mismo coste por token.
¿Cuál es la diferencia entre parámetros totales y activos?
Los parámetros totales cuentan cada peso del modelo: las capas compartidas más todos los expertos. Los parámetros activos cuentan solo los pesos usados en un único token: las capas compartidas más los pocos expertos que selecciona el enrutador. El número total de parámetros determina la huella de memoria, porque todos los expertos deben estar disponibles para poder ser elegidos.
El número activo determina el cómputo y la latencia por token, porque solo los expertos enrutados realizan trabajo.
Si solo se ejecutan unos pocos expertos por token, ¿por qué la memoria escala con el total?
Cualquier experto puede ser seleccionado para cualquier token, y a lo largo de un lote de tokens se usan muchos expertos distintos, así que todos deben residir en memoria a la vez.
El modelo no puede saber de antemano qué expertos necesitará un token futuro. Como resultado, la huella de memoria escala con el número total de parámetros, aunque el cómputo de un solo token escale únicamente con el número activo. Esta es la disyuntiva central del enfoque: cómputo barato, pero los pesos completos siguen teniendo que mantenerse.
Aviso legal
Esta es una estimación de primer orden que asume expertos de tamaño uniforme y trata los pesos compartidos como siempre activos. Ignora el desequilibrio de enrutamiento, la propia red del enrutador y cualquier duplicación por paralelismo de expertos entre dispositivos. Úsala para comparar diseños, no como una contabilidad exacta.