Antes de significar nada, el texto se parte. Y no se parte en palabras: se parte en subpalabras, pedazos que el modelo ya vio muchas veces durante su entrenamiento. Por eso «maestra» puede ser una sola pieza y «anticonstitucionalidad» puede ser cinco.
Toca cualquier pieza para seguirla por las demás estaciones. La línea punteada marca los pedazos que no son una palabra completa; el borde rojo, los que el modelo nunca vio y tuvo que deletrear.
Ninguna lista alcanza. Un idioma inventa palabras todos los días: nombres propios, errores de dedo, «wasapear». Si el modelo solo conociera palabras enteras, cualquier palabra nueva sería un hueco.
La morfología se aprovecha. Si «maestr» y «-a» son piezas distintas, el modelo reutiliza lo que sabe de «maestro», «maestros» y «maestra» sin memorizarlas por separado.
El espacio va pegado. En casi todos los modelos, el espacio anterior forma parte de la pieza. Por eso «gato» al principio de una frase y « gato» en medio son piezas distintas, con identificadores distintos.
Palabras larguísimas, inventadas, con acentos o con emojis. Mira cuántas piezas hacen falta y cuáles caen a deletreo por bytes.
Cada pieza tiene un número de identificación. Ese número no significa nada por sí mismo: solo dice en qué renglón de una tabla gigante hay que buscar. Ese renglón es el vector. La tabla se llama matriz de embeddings y es lo primero que el modelo aprende.
El identificador se convierte en un vector de ceros con un solo uno —eso se llama one-hot—, y al multiplicarlo por la matriz lo único que sobrevive es el renglón que le toca. Multiplicar por una matriz, aquí, es exactamente lo mismo que buscar en una tabla.
Aquí están las tres líneas que arman el universo de un vector: tres ejes perpendiculares, uno por dimensión. La flecha sale del origen y la punta es la palabra. Las líneas punteadas bajan de la punta a cada eje: eso es exactamente de dónde salen los tres números.
Puedes arrastrar con el ratón para girarlo, y cambiar qué tres dimensiones se dibujan.
Cada renglón es una pieza; cada columna, una dimensión. Así se ve el pedazo de la matriz que contiene tu frase.
La pregunta «¿qué tan parecidas son estas dos palabras?» se responde con geometría. Y no se mide la distancia entre los puntos: se mide el ángulo entre las flechas. A eso se le llama similitud coseno.
La longitud de un vector tiende a crecer con la frecuencia de la palabra: las palabras muy comunes acaban con flechas largas. Si midiéramos con regla, «el» y «de» parecerían distintas de todo solo por ser largas.
El ángulo ignora la longitud y se queda con la dirección, que es donde vive el significado. Por eso casi todo el mundo —buscadores, sistemas de recuperación, comparadores de documentos— usa coseno.
Si el significado es geometría, entonces se puede hacer aritmética con él. La dirección que va de «hombre» a «mujer» es aproximadamente la misma que va de «rey» a «reina». Es el resultado que hizo famosos a los embeddings, y también el que más se exagera.
Se excluyen las tres palabras de la pregunta. El vector que sale suele quedar pegadísimo a «rey», porque apenas se movió. Si no se excluyen los tres términos originales, la respuesta es casi siempre uno de ellos. Aquí puedes desactivar la exclusión y verlo.
Funciona en unas relaciones y en otras no. Género y número salen bien. Capitales, tiempos verbales y relaciones causales salen mucho peor. La aritmética no es una propiedad garantizada del espacio: es un accidente afortunado en algunas direcciones.
Los vectores viven en cientos de dimensiones. Nuestros ojos llegan a tres. Cada vez que alguien te enseña «el mapa de las palabras», te está enseñando una sombra aplanada de algo que no cabe en la hoja. Y hay muchas sombras posibles del mismo objeto.
Arrastra el mapa para girarlo tú, y toca cualquier palabra para abrir su lectura: su familia, sus vecinas medidas y qué tan sociable es. Toca después una segunda palabra y las compara.
La proyección principal busca el plano donde las palabras quedan lo más separadas posible, y te dice qué porcentaje de la variación original sobrevivió. El resto se perdió al aplanar.
La sombra al azar toma dos direcciones cualesquiera. Fíjate bien: las palabras cambian de lugar, algunas que estaban juntas se separan, y sin embargo ningún vector se movió. Lo que cambió fue desde dónde miras.
Buscar los vecinos más cercanos de una palabra es la operación que sostiene la búsqueda por significado, los sistemas de recomendación y la recuperación de documentos. Es simple de calcular y fácil de malinterpretar.
Cada barra es un rango de similitud; la altura, cuántos pares caen ahí. Si la montaña está corrida a la derecha, el espacio es «estrecho»: casi todo se parece a casi todo.
Aquí está el salto que separa a los modelos viejos de los actuales. Un embedding estático le da a «banco» un solo vector para siempre, promediando el asiento y el dinero en un punto que no es ninguno de los dos. Un embedding contextual calcula un vector nuevo cada vez, según las palabras que la rodean.
El punto hueco es el vector estático de la palabra. Los llenos son sus vectores contextuales, uno por frase. La flecha muestra hacia dónde lo jaló cada contexto.
Cada frase produce un vector distinto para la misma palabra.se movió
Los vectores de una frase, así solos, forman una bolsa sin orden: «el perro mordió al gato» y «el gato mordió al perro» serían idénticos. Hay que sumarle a cada pieza una firma de su posición. Y después, cada pieza decide de cuáles otras copiar significado.
Cada posición recibe un patrón único de ondas: las de la izquierda oscilan rápido y distinguen posiciones vecinas; las de la derecha, lentísimas, distinguen el principio del final de un texto largo.
Cada pieza produce tres proyecciones distintas de sí misma: una consulta —lo que anda buscando—, una clave —lo que ofrece— y un valor —lo que entrega si la eligen. El peso entre dos piezas es el producto de la consulta de una con la clave de la otra.
Bájala y la atención se vuelve un foco: casi todo el peso se va a una sola pieza. Súbela y se vuelve una lámpara difusa que reparte parejo. Es el mismo mecanismo que en la salida se llama «creatividad».
Si «hombre → mujer» es una dirección en el espacio, se puede proyectar cualquier palabra sobre esa dirección y ver hacia qué lado cae. Eso no es una interpretación: es un número. Y es la forma honesta de mostrarle a un grupo que el sesgo no es una acusación vaga.
Sí dice: que en el texto con el que se entrenó, estas palabras aparecían más cerca de un extremo que del otro. Es un hecho sobre el corpus.
No dice: que el modelo «crea» algo, ni que una palabra sea de un género. El espacio no tiene opiniones; tiene estadística.
Cuando una herramienta «lee tus PDF y contesta solo desde ellos», por dentro hace esto: parte los documentos en trozos, convierte cada trozo en un vector, convierte tu pregunta en otro vector, y devuelve los trozos cuyo ángulo con la pregunta es menor. Nada más. Y nada menos.
Fíjate en que encuentra trozos que no comparten ni una palabra con tu pregunta. Eso es lo que la búsqueda por palabras exactas nunca pudo hacer.
Si el trozo está mal cortado —a la mitad de una idea, o con tres temas revueltos— su vector es un promedio de cosas distintas y no se parece bien a nada. La mayoría de los fracasos de estos sistemas son fallas de recorte, no del modelo.
Si la respuesta no está en ningún trozo, el sistema igual devuelve los tres más parecidos, porque siempre hay tres más parecidos. Que devuelva algo no significa que ese algo conteste.
Si la pregunta es vaga, el vector de la pregunta cae en medio de todo y los resultados salen tibios.
Aquí el vector de cada trozo es el promedio de los vectores de sus palabras: la forma más simple que existe, y suficiente para ver el mecanismo. Un sistema real usa un modelo que lee el trozo completo y produce un solo vector, con lo que el orden de las palabras sí cuenta.
Esta aplicación calcula de verdad todo lo que enseña: el coseno, la proyección principal, la analogía, el reparto de atención, la codificación posicional y la búsqueda. Ninguna barra está dibujada a mano. Pero hay tres cosas que conviene decir en voz alta antes de proyectarla.
Son 16 dimensiones construidas para esta clase, no las 768 de un modelo real. Se diseñaron para que la geometría se comporte como en un espacio verdadero —y por eso la analogía sale—, pero no salieron de entrenar con miles de millones de palabras.
Lo que sí es real: todas las operaciones. Cambiar estos vectores por los de un modelo real no cambiaría una línea del código.
Se usa un vocabulario pequeño con sufijos frecuentes del español y deletreo por bytes para lo desconocido. Un tokenizador real aprende sus fusiones a partir de datos y tiene decenas de miles de piezas.
Lo que sí es real: el comportamiento. Palabra larga, más piezas. Palabra rara, deletreo. Español, más caro que inglés.
Un modelo real tiene entre 12 y 96 capas y varias cabezas en paralelo, cada una mirando una relación distinta: una la concordancia, otra el sujeto del verbo, otra la puntuación.
Sus matrices Wq, Wk y Wv tampoco están entrenadas: aquí se construyeron de modo que la consulta y la clave se respondan, para que el reparto se vea moverse. En un modelo real esos números salen del entrenamiento.
Lo que sí es real: el cálculo. Consulta por clave, escalado por √d, softmax con temperatura, suma pesada de valores. Es la operación, sin adornos.
Ya viste cómo una máquina convierte lenguaje en geometría. El ejercicio del diplomado pone eso a trabajar: el mismo prompt en dos entornos —con los documentos oficiales cargados y sin ninguno— y en dos versiones, bien hecho y mal hecho. Ceros y unos, tokens y el mapa de lo que activó cada uno. Al final descargas tu hoja.
Abrir el ejercicio: Con corpus y sin corpus