MODELOS DE LENGUAJE, PASO A PASO

Cómo genera texto un LLM, token a token.

La frase Al abrir la puerta, vio un… admite varias continuaciones. Un modelo puede empezar por gato en una ejecución y por mapa en otra. El laboratorio permite seguir el cálculo de cada elección. La guía explica cómo se representa el texto, de dónde salen las probabilidades y qué decide la estrategia de generación.

Probar el laboratorio Ir a la guía

LABORATORIO INTERACTIVO

Elige cómo se genera el siguiente token

Cada pulsación de Siguiente token añade una pieza al texto y abre una nueva distribución de candidatos. Para comparar dos continuaciones, selecciona Muestreo con temperatura 2 y top-p 1, guarda una secuencia y vuelve al mismo inicio. Los controles afectan a la próxima elección. Si quieres repetir las primeras decisiones, inicia una nueva continuación.

4 candidatos disponibles para el sorteo. Puede repetirse una elección aunque haya otras opciones.

Secuencia actual

Al abrir la puerta, vio un

Contexto que consulta el modelo vio · un

Distribución para el siguiente token
TokenLogitBaseCon TSelección
gato1,6145,5 %45,5 %45,5 %
mapa1,127,3 %27,3 %27,3 %
espejo0,6918,2 %18,2 %18,2 %
robot09,1 %9,1 %9,1 %

Lee la tabla de izquierda a derecha. El logit parte de los recuentos asociados a los dos últimos tokens. Base convierte esa puntuación en probabilidad con temperatura 1. Con T muestra el reparto después de ajustar la temperatura. Selección indica qué probabilidad se usa en el sorteo tras top-p. Si eliges Greedy, el laboratorio desactiva ambos controles y asigna la elección al candidato mejor puntuado.

Documentación de referencia sobre estrategias de generación
DEL TEXTO A LA DISTRIBUCIÓN

La generación paso a paso

01 / El bucle de generación

Una predicción que se convierte en la siguiente entrada

En el artículo de reconocimiento de dígitos bastaba con elegir entre diez clases. Al completar Al abrir la puerta, vio un…, esa primera elección resuelve solo una parte del problema. Si el modelo selecciona gato, todavía falta decidir qué viene después. El procedimiento de decodificación añade el token elegido al texto y solicita otra predicción con la secuencia ampliada.

  1. Contexto inicialvio · un
  2. Token elegidogato
  3. Siguiente contextoun · gato
  4. Nuevos candidatosdormido · sentado · que · gris
Al añadir gato, el par de consulta pasa de vio · un a un · gato. La nueva lista de candidatos se obtiene con ese segundo par.

El segundo paso depende del primero. Tras un · gato pueden aparecer dormido o sentado. Tras un · mapa, en cambio, cobran sentido doblado o antiguo. La generación autorregresiva consiste en construir la secuencia de este modo, usando lo ya generado para calcular el siguiente paso.

El ciclo se detiene cuando aparece un token de fin de secuencia o se alcanza el límite configurado. En el laboratorio se puede ver un punto al final de la frase y, un paso después, el token de fin. El punto forma parte del texto. El token especial indica al programa que ha terminado la generación.

02 / Tokens y vocabulario

Qué unidades procesa el modelo

Para un modelo de lenguaje, Un gato invisible. llega como una secuencia de identificadores numéricos. El tokenizador determina dónde se separa el texto y asigna a cada pieza un identificador de su vocabulario. Según el diseño de ese vocabulario, una pieza puede abarcar una palabra, varias letras o un signo. También puede incluir un espacio. Al generar, el proceso se invierte y los identificadores vuelven a convertirse en texto.

Prueba dos segmentaciones

Palabras y signos · 6 tokens

  • Un
  • ␣
  • gato
  • ␣
  • invisible
  • .

Piezas con fusiones · 7 tokens

  • Un
  • ␣
  • gato
  • ␣
  • in
  • visible
  • .

En ambas filas, ␣ representa un espacio. La segunda aplica una lista fija de fusiones y separa invisible en in y visible. Si se elimina el prefijo, la pieza visible se conserva. Sustituirla por puerta permite ver otro ejemplo de fusión.

En el ejercicio, la segunda segmentación reutiliza visible cuando aparece dentro de invisible. La idea de aprender fusiones frecuentes a partir de un corpus se ilustra en el trabajo de Sennrich y sus colaboradores sobre BPE. Aquí las fusiones están elegidas de antemano para que se pueda seguir el proceso. El modelo del laboratorio principal utiliza otra regla, que separa palabras y signos y omite los espacios.

Una consecuencia práctica es que la longitud de una frase depende de quién la tokenice. El recuento de piezas que aparece aquí describe este ejercicio. Para saber cuánto espacio ocupa una entrada en la ventana de un modelo concreto, se necesita el tokenizador de ese modelo.

03 / Logits y softmax

De una puntuación a una probabilidad

Antes de que aparezca gato en la pantalla, el modelo produce un vector con una puntuación por token de su vocabulario. Esas puntuaciones son los logits. Su valor aislado puede ser negativo o superar uno. Softmax permite interpretarlos conjuntamente como probabilidades al aplicar una exponencial a cada puntuación y dividir cada resultado por la suma.

P(i) = exp(zᵢ / T) / Σⱼ exp(zⱼ / T)

La temperatura T cambia el contraste entre las puntuaciones antes de calcular softmax. Con T = 1 se obtiene la distribución base. Si T es menor que uno y positiva, el token mejor puntuado concentra una proporción mayor. Si T supera uno, el reparto se hace más uniforme. En ambos casos, el orden de los candidatos se conserva.

La misma puntuación con dos temperaturas
TokenT = 1T = 0,5
gato57,1 %76,2 %
mapa28,6 %19 %
espejo14,3 %4,8 %
Los logits ln(4), ln(2) y ln(1) producen pesos de 4, 2 y 1 con temperatura uno. Al bajar la temperatura a 0,5, se duplican los logits y los pesos pasan a 16, 4 y 1. La barra de gato crece al repartir la probabilidad entre esos nuevos pesos.

Para calcular los logits del laboratorio basta con conocer cuántas veces apareció cada candidato después de los dos últimos tokens. Tomamos el logaritmo de ese recuento y, con temperatura uno, softmax devuelve su frecuencia relativa. En un LLM, la puntuación procede de una proyección aprendida que opera sobre la representación de la última posición.

04 / Greedy, muestreo y top-p

Cómo se elige el próximo token

Si se elige greedy, cada paso se resuelve tomando el token mejor puntuado. El mismo contexto y el mismo criterio de desempate producen la misma elección. Ese criterio mira el paso inmediato. Una opción inicialmente menos probable puede conducir a una secuencia cuya probabilidad conjunta sea mayor.

El muestreo abre la elección a varios candidatos. El procedimiento top-p, estudiado por Holtzman y sus colaboradores como nucleus sampling, comienza por el token más probable y suma probabilidades hasta alcanzar un umbral. Después reparte el cien por cien de la probabilidad entre los candidatos que siguen disponibles, en proporción al peso que tenían antes del recorte.

Recorte de candidatos con top-p = 0,75
TokenAntes del filtroTras normalizar
gato50 %66,7 %
mapa25 %33,3 %
espejo15 %0 %
robot10 %0 %
La suma de gato y mapa alcanza el umbral de 0,75. Espejo y robot quedan fuera del sorteo. Al repartir la probabilidad entre las dos opciones restantes, gato pasa de 0,50 a 0,50 ÷ 0,75, aproximadamente el 66,7 %.

El orden de estas operaciones ayuda a interpretar lo que ocurre al mover los controles. Primero se aplica la temperatura, luego se calcula qué opciones cubren el umbral de top-p. Si el primer token basta para alcanzarlo, el sorteo solo tiene una opción. Conviene mirar la columna Selección para saber si el próximo paso admite variación.

05 / Contexto y atención causal

Qué puede consultar cada posición

Cuando un Transformer causal procesa una secuencia, cada posición reúne información de otras posiciones mediante la atención. En la formulación de Vaswani y sus colaboradores, el decodificador aplica una máscara que restringe ese cálculo. Así, al preparar la predicción del próximo token, cada posición solo puede utilizar el contexto disponible hasta ese punto.

Qué posiciones puede consultar cada token
Desdevioungato.
vioSíNoNoNo
unSíSíNoNo
gatoSíSíSíNo
.SíSíSíSí
La fila indica desde dónde se consulta y la columna, qué posición se consulta. Los permisos forman un triángulo porque cada posición puede acceder a sí misma y a las anteriores.

Leamos la fila de gato. Se permite consultar vio, un y el propio gato. La columna del punto está bloqueada porque corresponde a una posición posterior. Los valores Sí y No describen esos permisos. El peso asignado a cada posición permitida se calcula en el modelo y puede variar entre capas, cabezas y secuencias.

En la demostración, un · gato basta para buscar un recuento. Un Transformer puede utilizar posiciones más alejadas que estén dentro de su ventana de contexto y que su patrón de atención permita consultar. Esto explica cómo una indicación al comienzo de una entrada puede influir en una predicción posterior.

06 / Experimentos y límites

Qué se puede comprobar en el laboratorio

  1. Repite una decisión. Con la frase de la puerta, selecciona Greedy y registra el primer token. Al reiniciar y repetir el paso, aparece la misma elección. La línea de contexto permite ver qué par de tokens se consulta a continuación.
  2. Observa el recorte. Reinicia, elige Muestreo y fija la temperatura en uno. Compara la columna Selección con top-p en 1 y en 0,10. Al reducir el umbral, la columna Base permanece igual y el sorteo queda limitado al primer candidato.
  3. Compara continuaciones. Selecciona Muestreo con temperatura 2 y top-p 1. Avanza varios pasos, guarda la continuación y repite desde la misma frase. Si las dos coinciden, prueba de nuevo. La comparación muestra cómo una diferencia temprana cambia los candidatos de los pasos posteriores.

Tras vio · un, el corpus del laboratorio contiene cinco ejemplos con gato, tres con mapa, dos con espejo y uno con robot. Por eso la probabilidad base del primer candidato es 5/11. Conforme se añaden tokens, el modelo consulta otros recuentos del mismo corpus y puede recombinar fragmentos que comparten contexto.

Al evaluar un sistema real conviene identificar qué se ha modificado. Si se cambia la temperatura, se conservan las puntuaciones del modelo para ese contexto y se ajusta su reparto antes de elegir el token. Si se entrena un adaptador LoRA, puede cambiar el cálculo que produce esas puntuaciones. Comparar ambas intervenciones exige fijar la configuración que queda fuera del experimento.