Atención es todo lo que necesitas

Hace unas semanas conté, junto a Manuel, cómo el teclado del móvil adivina la siguiente palabra: no te entiende, solo ha contado qué suele venir detrás de qué. Si te perdiste aquella pieza, está aquí: el predictor del móvil. Hoy quiero dar un paso más, porque aquel artículo se quedó con una pregunta sin responder, y la respuesta es uno de los inventos que hacen que una IA escriba como escribe.
La pregunta era esta. El predictor se desvía: empieza una frase con sentido y, a los pocos pasos, se va por las ramas. ¿Por qué se pierde, si cada palabra suelta parecía la correcta?
Una frase que se va por las ramas
Hagamos la prueba mental despacio. Pongamos que el predictor del móvil solo mira la última palabra que escribiste, que es lo que hacen muchos teclados. Arrancamos:
- "El coche…". Después de "coche", lo más normal es "corre". Bien.
- "El coche corre…". Detrás de "corre", "por". Bien.
- "El coche corre por…". Tras "por", "la". Bien.
- "El coche corre por la…". Y aquí, ¿qué viene detrás de "la"? Pues cualquier cosa. La carretera, la mañana, la tele, la suerte.
Fíjate en lo que ha pasado. Cada paso, mirado solo, era razonable. Pero la máquina, al llegar a "la", ya no se acuerda de que hay un coche corriendo. Solo ve "la", la última palabra, y desde ahí cualquier final encaja igual de bien. Por eso, paso a paso, la frase se desboca.
Y no es lo mismo mirar una palabra que mirar tres. Si la máquina mira solo la última, el desastre llega antes y se ve más claro. Cuantas menos palabras recuerda, antes se le olvida de qué iba la cosa.
Mirar solo lo último es como continuar un cuento con todo el texto tapado salvo la última frase. Encajas una palabra, sí, pero no tienes ni idea de quién era el protagonista.
La salida fácil, la que parece evidente, es darle más memoria: que en vez de la última palabra mire las dos últimas, o las tres. Y ayuda, claro. Pero ojo, porque esa solución, "mirar más", esconde una trampa que vamos a destapar enseguida. Porque el problema de fondo no es cuántas palabras miras. Es a cuáles haces caso.
No es mirar más, es mirar lo que importa
Aquí está la idea de todo el artículo, así que vamos con calma.
Cuando tú lees "El coche corre por la…" y tienes que adivinar el final, no repartes tu cabeza por igual entre las seis palabras. Hay una que decide. Hay un coche que corre, y eso te dice que detrás de "la" toca algo por donde corren los coches: la carretera, la autopista. Las demás palabras ("por", "la") están ahí, pero pesan poco. Tu cabeza, sin que te des cuenta, le hace más caso a unas palabras que a otras. Eso, dicho con palabras de toda la vida, es prestar atención a lo que importa.
Y eso mismo, hecho por una máquina, es lo que se llama atención. Conviene clavar la diferencia, porque es justo donde casi todo el mundo se confunde:
- El predictor mejora mirando más: amplía la ventana, pasa de 1 a 2 a 3 palabras hacia atrás. Es memoria en bruto, las últimas que sean.
- La atención mejora mirando mejor: para cada palabra que va a escribir, mira hacia atrás todo lo escrito y reparte su atención, dándole más a las que de verdad deciden, estén donde estén.
No es lo mismo recordar más palabras que saber a cuál hacer caso. La diferencia es enorme, y se ve de golpe con un ejemplo en el que "mirar más" no sirve de nada. Porque la palabra relevante no siempre está cerca. A veces está al principio del todo, seis palabras atrás, y por mucho que amplíes la ventana de "las últimas", nunca la alcanzas.
Eso no hay que creérmelo de palabra. Lo puedes ver con tus propios ojos.
La trampa del precio
He puesto el juego a propósito en la frase más tramposa que se me ocurrió, y con la máquina mirando solo 1 palabra atrás, que es el autocompletar de siempre. La frase es:
El precio de las entradas ha subido otra vez.
Mira bien lo que va a pasar. La máquina tiene que decidir el verbo: ¿"ha subido" o "han subido"? Y en modo autocompletar, mirando hacia atrás, lo que tiene pegado justo antes es "entradas", en plural. Así que apostaría, con todo el aplomo del mundo, por "han subido". Y estaría mal.
Porque las "entradas" no son las que deciden la siguiente palabra. La que de verdad la determina es "el precio", en singular, al principio del todo. Lo que subió fue el precio (de las entradas, sí, pero el precio), y por eso toca "ha subido", no "han subido". La palabra que de verdad fija lo que viene después está lejos, y la que tienes pegada al lado te está engañando.
Y aquí viene el golpe, el que da sentido a toda la pieza. En el juego, la máquina puede mirar 1, 2 o 3 palabras hacia atrás. Pruébalo: ve subiendo de 1 a 3. Verás que da igual: ni mirando 1, ni 2, ni 3 palabras hacia atrás la máquina llega hasta "precio". Está demasiado lejos, y lo único que tiene cerca es "entradas", que la engaña. Mirar más no la salva. Por muchas palabras recientes que añadas, la decisiva se te queda siempre fuera del alcance.
Ese es el motivo por el que "darle más memoria al predictor" no es la solución de verdad. Es un parche. El problema no se arregla mirando más palabras: se arregla mirando la palabra que importa.
Ahora enciende la atención
Ahora pulsa "toda la frase". Es el momento bonito del juego.
Ahora vuelve al verbo y mira a quién atiende la máquina. Verás que el grueso de su atención ya no se va a "entradas", la vecina ruidosa, sino que viaja hasta el principio y se posa en "precio". Ha ido a buscar la palabra que de verdad decide, esté donde esté. Y con eso, acierta: "ha subido".
Eso es la atención en una imagen. No ha ganado memoria. Ha ganado puntería.
Te invito a tocar las otras dos frases, porque cada una enseña una cosa distinta:
- En "El coche corre por la carretera", fíjate en cómo, para colocar "carretera", la atención reparte el peso entre "coche" y "corre": necesita la frase entera para saber que va de algo por donde corren los coches.
- En "El perro no cruzó la calle porque estaba cansado", pregúntate quién estaba cansado. ¿El perro o la calle? Toca "cansado" y mira a dónde va la atención: se planta en "perro", al principio, no en "calle", que está al lado. Otra vez, la que importa está lejos y la atención va a por ella.
Una advertencia honesta, que esto es divulgación y no quiero venderte humo: los porcentajes que ves en el juego los he puesto yo a mano, para que ilustren dependencias reales de nuestro idioma (la concordancia del "precio", la referencia del "perro"). No salen de un modelo de verdad calculando. Es una ilustración jugable de la idea, no una radiografía de una IA por dentro. Pero la idea que ilustra, esa sí es exactamente la que usan las IA que escriben.
Por qué esto cambia todo
El viaje ha sido corto, pero el salto es grande. Esto que acabas de ver, multiplicado por millones y aplicado a cada palabra que genera, es buena parte de lo que separa al pobre autocompletar de tu teclado de una IA que te redacta una carta entera sin perder el hilo. No es que tenga más memoria. Es que, en cada paso, sabe a qué palabras de todo lo escrito tiene que hacer caso.
Y fíjate en un detalle que no es casualidad: la atención siempre mira hacia atrás. Igual que cuando tú escribes, decides la próxima palabra a la vista de todo lo que ya llevas puesto, nunca de lo que aún no existe.
No es magia: debajo hay matemáticas concretas repartiendo ese foco. Y si quieres asomarte a verlas, sigue un palmo más.
Por dentro: cómo se reparte la atención
Lo de arriba es la idea, y con ella ya puedes irte tranquilo. Lo que sigue es para quien le pueda la curiosidad y quiera ver el mecanismo por debajo, sin fórmulas.
¿Cómo se reparte esa atención, sin magia? Para cada palabra que toca escribir, se compara esa posición con todas las palabras anteriores, una a una, y de cada comparación sale un número: cuánto importa esa palabra de atrás para lo que viene ahora. Esa lista de números se pasa por un cálculo que la convierte en porcentajes que suman 100 (justo las barras que has visto en el juego), y con esos porcentajes se mezclan las palabras anteriores para decidir la siguiente.
Y eso de "comparar con todas las anteriores" tiene un precio, que conviene no esconder: cuanto más largo es el texto, más comparaciones, y crecen mucho más deprisa que el propio texto. Por eso la atención no puede ser infinita: hay un tope de cuánto alcanza a abarcar de una vez, lo que se llama su ventana de contexto. Cuando una conversación se alarga muchísimo, la IA empieza a "olvidar" el principio, no por desgana, sino porque ya no le cabe dentro de esa ventana. Y no es un problema propio de las máquinas, ni de esta tecnología (los grandes modelos de lenguaje, los famosos LLM) en concreto: a ti te pasaría igual. Nadie podría prestar atención de verdad a una sola frase tan larga que tardara tres horas en oírse, palabra por palabra; al llegar al final habrías perdido el hilo del principio. La atención, la de un humano y la de una máquina, no da para todo. Y quizá por eso mismo funciona: fijarse de verdad en lo que importa es, antes que nada, poder dejar fuera casi todo lo demás.
Y aquí está lo bonito, lo que en el juego no se ve: esas comparaciones, que yo te he puesto a mano, en una IA de verdad no las escribe nadie. Y este es justo el salto que separa programar de entrenar. En la programación de toda la vida, alguien tiene que escribir la regla: "si la palabra de antes está en plural, pon el verbo en plural". Aquí no. Nadie escribe esas reglas: se aprenden solas, a fuerza de leer muchísimo texto, hasta dar con qué palabras suelen importar para cuáles. Es la diferencia entre dar instrucciones y dar ejemplos, que conté en qué es el machine learning.
Y esto tampoco hace falta creérselo de palabra. He montado un segundo juego donde ese aprendizaje ocurre delante de ti: un mini-modelo, en tu navegador, intenta adivinar la siguiente palabra, falla, ajusta y, fallo a fallo, sus flechas dejan de mirar lo reciente y aprenden solas a saltar a la palabra que manda, sin que nadie le diga dónde fijarse. Está en Entrena la atención.
Y no es un detalle menor, es la moraleja de varias décadas. Durante mucho tiempo se intentó enseñar a las máquinas a entender el lenguaje a base de reglas, escritas a mano por expertos, una por una. Con poco éxito: el idioma tiene tantas excepciones que la lista de reglas no se acababa nunca. Lo que de verdad funcionó fue casi lo contrario: darle a leer cantidades enormes de texto y ponerla a un juego tonto, adivinar la siguiente palabra, millones y millones de veces. De tanto practicar ese juego, sin que nadie le explicara una sola regla de gramática, acabó aprendiendo a qué prestar atención. Y no solo eso: de practicar sin descanso algo tan simple como adivinar la palabra siguiente fueron brotando capacidades que nadie le había pedido (resumir, traducir, seguir una instrucción), algo tan llamativo que da de sobra para otro artículo. Resultó más efectivo que décadas de reglas escritas a mano, y por eso es el camino que se siguió, con todo lo que arrastra: una máquina que escribe sorprendentemente bien sin que sepamos del todo qué aprendió, ni qué errores o sesgos se trajo de ese texto que leyó.
Y esto es solo la primera mirada. Una IA de verdad no lanza una, sino muchas a la vez, cada una atenta a un tipo distinto de pista, y las apila en capa sobre capa, hasta tejer relaciones que una sola mirada jamás alcanzaría. Pero esa ya es la puerta siguiente, y la cruzaremos en otra pieza. Por hoy basta con quedarse con esto: cuando una IA te escribe algo que parece entenderte, no te está entendiendo. Está, en cada palabra, decidiendo a cuál de todas las anteriores hacer caso. Eso es la atención. Y resultó ser, casi, todo lo que necesitaba.
