Setup. El panel superior pinta, en log–log, los FLOPs de una pasada hacia delante de un Transformer de L capas y dimensión d sobre un contexto de T tokens, separados en sus dos términos: el cuadrático de la atención (dorado) y el lineal de proyecciones y MLP (tinta). La línea gris es el total. El panel inferior muestra qué fracción del cómputo se lleva la atención según T. El lector traduce a tiempo y a euros en una H100 (4·1014 FLOP/s útiles, 3 €/h).
Juega. Piensa en un caso BBVA: pasar contratos hipotecarios enteros (T ≈ 60k tokens) por un modelo de d = 4096. Mira dónde cae respecto del cruce. Luego piensa en historiales clínicos de años o en logs de transacciones: T ≈ 106. Ningún ajuste de d razonable te salva de la pendiente 2.
Lee así. En log–log las potencias son rectas y el exponente es la pendiente: la atención sube 2 décadas de coste por década de contexto; el resto, 1. Toda recta de pendiente 2 acaba cruzando a cualquier recta de pendiente 1: la única pregunta es dónde, y la respuesta es T = 2d.
Mensaje. El Transformer no "falla" en contextos largos: se vuelve económicamente inviable. Las tres rutas del día (atención lineal, SSM y MoE) atacan este coste desde ángulos distintos sin renunciar a la calidad.
Términos. T: longitud de la secuencia en tokens. d: dimensión interna del modelo. L: número de capas. FLOP: operación de coma flotante; una multiplicación+suma son 2 FLOPs. prefill: procesar el contexto completo antes de generar el primer token.
Setup. El canvas pinta, en log–log, la memoria del KV-cache en GB según el contexto T, para tu configuración (L, d, precisión). La línea discontinua horizontal son los 80 GB de una NVIDIA H100; la línea fina gris es la otra precisión, para comparar. El punto dorado es tu T actual y el lector da los GB exactos, el badge de si cabe, y el Tmáx despejado.
Juega. Caso Netflix: un asistente que mantiene en contexto el historial completo de visionado y soporte de un usuario (T ≈ 200k). Caso Inditex: pasar todas las incidencias logísticas de una temporada (T ≈ 500k). Comprueba cuántas GPUs de 80 GB exige cada escenario solo en cache, por usuario activo.
Lee así. La pendiente de la recta es 1 (lineal en T): no es el muro cuadrático de la slide anterior, pero es un coste que persiste durante toda la generación y se multiplica por cada conversación abierta. El prefill paga FLOPs una vez; el KV-cache paga VRAM todo el rato.
Mensaje. En producción, el coste de servir LLMs es tanto memoria como cómputo. Mamba ataca exactamente este frente: su "KV-cache" es un estado de tamaño constante, independiente de T.
Términos. KV-cache: almacén de los vectores K y V ya calculados, para no recomputarlos al generar cada token. VRAM: memoria de la GPU. FP16/FP32: números de 2 o 4 bytes. GQA: grouped-query attention, varias cabezas de Q comparten un mismo par K,V.
Setup. Genero Q, K, V gaussianos para una secuencia de juguete de T tokens con dimensión d y calculo la atención de verdad de las dos maneras: arriba, la matriz softmax(QK⊤/√d) exacta; abajo, la matriz implícita normalizada φ(Qi)·φ(Kj)/zi del orden lineal con φ = ELU+1. Ambas filas suman 1 (compruébalo en el lector). El color usa la rampa dorada: más oscuro = más atención.
Juega. El lector cuenta las multiplicaciones reales de cada orden (2T²d vs 2Td²) y mide el error entre las salidas O = AV de ambos métodos. Busca el régimen donde el ahorro es grande y el error tolerable: ese es el nicho de Performer, Linear Transformer y RetNet (streaming en edge, poca VRAM, tokens/seg en CPU como KPI).
Lee así. La asociatividad (AB)C = A(BC) no cambia el resultado cuando no hay softmax en medio; el softmax es lo único que obliga a materializar la matriz T×T. Quitarlo (aproximarlo con φ) es comprar libertad de orden a cambio de capacidad de foco.
Mensaje. La atención lineal es la primera de las tres rutas del día: misma interfaz que la atención, coste lineal en T, y un trade-off de precisión explícito y medible — lo acabas de medir tú.
Términos. φ (feature map): transformación de q y k tal que φ(q)·φ(k) ≈ exp(q·k/√d). ELU+1: x+1 si x>0, ex si x≤0; garantiza positividad. rango: la matriz lineal implícita tiene rango ≤ d, el softmax no tiene esa restricción. RetNet/Performer: variantes con decaimiento exponencial y kernels aleatorios.
Setup. Ejecuto la recurrencia de verdad para dos canales escalares con ā distintos, b̄ = 0.5, C = 1. Panel superior: la respuesta al impulso kₖ = C ākb̄, es decir, cuánto pesa en el estado un token de hace k pasos. Panel inferior: la trayectoria ht sobre la secuencia del ejemplo del deck (x₁ = 2, x₂ = 1, x₃ = 3, después silencio): se ve cómo el estado absorbe cada entrada y luego se desvanece geométricamente.
Juega. Forecast de demanda Inditex: un canal con ā ≈ 0.99 captura la tendencia de temporada (memoria larga); otro con ā ≈ 0.6 captura el pico de esta semana (memoria corta). El slider te deja sentir ese dial: ā ES el dial de memoria del modelo.
Lee así. La contribución de x₁ = 2 a h₃ es b̄·x₁·ā² = 0.5·2·0.81 = 0.81 (con ā = 0.9): el lector la calcula para tu ā actual. Esa cifra es el deck hecho slider: el estado comprime toda la historia con decaimiento exponencial āk.
Mensaje. Un SSM es una RNN lineal con estado de tamaño fijo N: coste O(T·N) en tiempo y O(N) en memoria. Para T = 106 y N = 16 son 1.6·107 operaciones, contra 1012 del Transformer denso. Lo que le falta — decidir QUÉ recordar — es exactamente lo que añade Mamba en la siguiente slide.
Términos. ht: estado oculto, N números que resumen la historia. &Abar;, &Bbar;, C: transición, entrada y lectura (discretizadas). N: tamaño del estado, fijo (16–64), independiente de T. respuesta al impulso: peso de un token según su antigüedad.
Setup. Secuencia de juguete de 28 tokens: ruido gaussiano de amplitud σruido con DOS tokens importantes (valor 3, barras doradas en el panel superior) en las posiciones 7 y 20. Pienso en churn telco: la "señal" son dos eventos críticos (una reclamación grave, una bajada de consumo) en medio de semanas de actividad anodina. Ejecuto en vivo dos recurrencias: el SSM de Δ fijo (tinta) y el selectivo con Δ(xt) (dorado), y descompongo el estado final en la autoría exacta de cada token (wi = b̄ixi∏j>iāj).
Juega. El experimento clave es el paso 4 del guion: con Δ fijo, memoria larga implica sordera y escritura ávida implica amnesia. La selectividad rompe ese acoplamiento porque el dial se mueve token a token.
Lee así. El panel superior también pinta Δt (puntos sobre cada token, eje derecho implícito): verás que solo se dispara en los tokens importantes. Eso ES la selectividad: B y Δ como funciones de la entrada, igual que las matrices At, Bt, Ct del deck.
Mensaje. Mamba escala a contextos de 106 tokens (genoma, libros, registros médicos) porque une el coste O(N) del SSM con la capacidad de decidir qué guardar. Pierde, en cambio, cuando hay que comparar dos posiciones lejanas con precisión quirúrgica: ahí la memoria literal del Transformer sigue mandando.
Términos. Δt: paso de discretización por token; la "apertura de puerta". selectividad: &Abar;t, &Bbar;t, Ct funciones de xt. LTI: sistema lineal invariante en el tiempo. scan asociativo: paralelización del prefijo acumulado en GPU.
Setup. Genero una entrada aleatoria de T = 60 tokens y calculo yt de las dos maneras: ejecutando la recurrencia ht = āht−1 + b̄xt paso a paso (línea tinta) y aplicando la convolución con el kernel implícito kj = ājb̄ (puntos dorados). El panel superior muestra ese kernel y su "memoria efectiva" 1/(1−ā) pasos.
Juega. El slider de ā es el mismo de la slide SSM, pero ahora lo ves como diseñador de filtros: ā cerca de 1 = filtro de tendencia (forecast de demanda mensual); ā bajo = filtro de novedad (detección de picos en transacciones). Dos lecturas del mismo escalar.
Lee así. El lector compara costes reales: la recurrencia hace 2 multiplicaciones por token (O(N) con N = 1 aquí); la convolución ingenua haría ~T/2 por token, pero en entrenamiento se hace UNA vez para toda la secuencia vía FFT en O(T log T), que en GPU es masivamente paralelo. Por eso S4 entrena como una CNN e infiere como una RNN.
Mensaje. Recurrencia y convolución son dos algoritmos para la misma función. Esa dualidad da a los SSM lo mejor de ambos mundos: entrenamiento paralelo (como el Transformer) e inferencia con estado constante (como una RNN), sin KV-cache que crezca.
Términos. kernel implícito: filtro kj = C&Abar;j&Bbar; generado por los parámetros, no almacenado. convolución causal: yt solo usa entradas pasadas. FFT: transformada rápida de Fourier, convoluciona en O(T log T). memoria efectiva: 1/(1−ā), escala temporal del filtro.
Setup. Un token de juguete x ∈ ℝ² (en un modelo real sería el vector de dimensión d del token) y un router real: z = Wgx con Wg ∈ ℝK×2 aleatoria, softmax encima, top-r y renormalización — todo calculado en vivo. El mapa pinta, para cada punto del plano, qué experto ganaría (rampa dorada por índice); las barras de abajo muestran el softmax completo (contorno gris) y los gates finales tras top-r (relleno dorado).
Juega. Versión negocio del mapa: en un asistente bancario, unos expertos acaban especializados en lenguaje jurídico, otros en números y tablas, otros en conversación general. El token "EURIBOR" cae en una región; el token "hola" en otra. Tú estás moviendo el token por el espacio de representaciones.
Lee así. El lector muestra los dos invariantes que el cálculo debe cumplir: el softmax completo suma 1.000 y los gates renormalizados tras top-r también. Si r = 1 (Switch Transformer), el ganador se lleva gate = 1 y la frontera entre regiones es una decisión dura.
Mensaje. MoE no elimina parámetros: los organiza para que trabajen por turnos. El router es la pieza que convierte un modelo enorme en uno barato por token — y también la pieza frágil que hay que vigilar (slide de balanceo).
Términos. Ek: experto, un MLP independiente. gk(x): peso de routing (0 si no está en el top-r). Wg: matriz del router. K: expertos totales (8–256). r: activos por token (típicamente 2). Switch: la variante r = 1.
Setup. El canvas es un mapa log–log de parámetros totales (eje x) contra activos por token (eje y). La diagonal discontinua es el mundo denso (activos = totales); cada punto gris es un modelo real con cifras públicas: Mixtral 8×7B (56B/14B), DeepSeek-V3 (671B/37B), Llama-3-405B denso (405B/405B) y la estimación filtrada de GPT-4 (~1.8T/~280B, no confirmada). El punto dorado es TU configuración de los sliders, con la fórmula Ptotal = K|E|, Pactivos = r|E| calculada en vivo (los modelos reales añaden además parámetros compartidos de atención, por eso sus activos no son exactamente r|E|).
Juega. El lector traduce a dinero: FLOPs por token generado (≈ 2Pactivos), euros por millón de tokens en una H100 a 3 €/h, y la VRAM mínima para tener el modelo cargado. Diseña el MoE que tu presupuesto cloud soporta y mira qué capacidad total te llevas a cambio.
Lee así. Moverse en horizontal (más K) es comprar conocimiento pagando solo VRAM; moverse en vertical (más r) es comprar calidad por token pagando FLOPs. Los diseñadores de Mixtral y DeepSeek eligieron puntos muy distintos del mismo plano.
Mensaje. MoE separa el número total de parámetros del coste por token: la clave de la eficiencia moderna. Democratiza el entrenamiento de modelos gigantes — ya no hace falta presupuesto de big tech para competir.
Términos. Ptotal: parámetros cargados en memoria. Pactivos: parámetros que procesan cada token concreto. |E|: tamaño de un experto. FP8/FP16: precisiones de entrenamiento e inferencia. denso: modelo donde activos = totales.
Setup. 360 tokens sintéticos en 2D (tres clusters: piensa en consultas de banca, jurídico y conversación general llegando a un MoE de BBVA) y dos routers idénticos al inicio que entreno en vivo con la MISMA dinámica (especialización winner-take-all tipo k-means online sobre Wg): la simulación tinta sin pérdida de balanceo y la dorada añadiendo el gradiente exacto de Laux con tu λ. Arriba: histograma de uso fe de cada experto en ambas simulaciones, con la línea uniforme 1/K. Abajo: los tokens coloreados por el experto que se los queda en la simulación dorada, con los vectores We marcados.
Juega. El botón "entrenar" ejecuta 50 pasos reales de la dinámica (asignación top-1, actualización del ganador, gradiente de balanceo). No hay curvas precocinadas: cada reinicio con otra semilla produce otra historia de colapso.
Lee así. El lector da el uso máximo y mínimo, el recuento de expertos muertos (fe < 2%) en cada simulación y el valor actual de K·ΣfePe (que vale 1 en el reparto perfecto). Verás que el dorado se acerca a 1 y el tinta se aleja.
Mensaje. El router es la pieza frágil de MoE: sin un término de balanceo, parte de la capacidad que pagas en VRAM muere. Todo MoE serio (Switch, Mixtral, DeepSeek) entrena con una Laux de este tipo, y DeepSeek-V3 llegó a sustituirla por sesgos ajustados dinámicamente: balancear sin contaminar el gradiente principal.
Términos. fe: fracción de tokens enrutados a e. Pe: probabilidad media del router hacia e. experto muerto: fe ≈ 0 de forma persistente. λ: peso de la pérdida auxiliar frente a la de la tarea. winner-take-all: dinámica donde el ganador refuerza su ventaja.
| familia | FLOPs/token | cache/estado | VRAM total | GPUs 80 GB | €/1M tok | tokens/mes |
|---|
Setup. Tres modelos concretos con cifras realistas: un Transformer denso de 70B (L = 80, d = 8192), un MoE tipo DeepSeek (671B totales, 37B activos, L = 61, d = 7168) y un SSM tipo Mamba de 7B (L = 64, d = 4096, N = 16). El canvas pinta € por millón de tokens generados según el contexto T (log–log), con tu T marcado; la tabla recalcula con tus sliders todas las columnas usando las fórmulas del panel: FLOPs por token, memoria de cache o estado, VRAM total, GPUs de 80 GB necesarias, coste por millón de tokens (H100 a 3 €/h, 4·1014 FLOP/s útiles) y tokens servibles con tu presupuesto mensual. La celda dorada marca al ganador de cada columna.
Juega. Tres escenarios del curso: chatbot de churn telco (T ≈ 4k → gana el denso por simplicidad), asistente generalista BBVA con RAG (T ≈ 32k, mucho volumen → el MoE da máxima calidad por euro) y análisis de historiales clínicos completos (T ≈ 1M → solo Mamba o un híbrido lo sirven a coste sano).
Lee así. Ninguna fila gana todas las columnas, y esa es la lección: el coste de entrenamiento favorece al MoE, la memoria por petición a Mamba, la calidad por defecto al denso. La elección es un argumento de KPI, no de moda.
Mensaje. Las alternativas no sustituyen al Transformer: lo complementan cuando una dimensión concreta (contexto, latencia, coste) deja de admitir el modelo denso. En el proyecto AI-first, eliges familia justificando el KPI — exactamente lo que acabas de hacer con los sliders.
Términos. prefill/generación: procesar el contexto vs producir tokens nuevos. híbrido (Jamba): alterna bloques Transformer y Mamba. Griffin/StripedHyena: otras mezclas (atención local + recurrencias; convoluciones largas). KPI: la métrica de negocio que decide la arquitectura.
En una frase. El Bloque I termina donde empezó la ingeniería de 2026: la arquitectura ya no es un dogma sino un menú, y el criterio de elección es siempre el mismo — qué dimensión del coste (pares de tokens, memoria de contexto, parámetros por token) limita TU caso de negocio, y qué familia la convierte en lineal.