Un desarrollador ha publicado una herramienta web que permite visualizar de forma interactiva cómo funciona el mecanismo de atención en los grandes modelos de lenguaje (LLM) basados en transformadores. La aplicación, construida con React y Transformers.js, muestra cómo el modelo decide qué tokens anteriores influyen en la generación de cada nuevo token durante la fase de inferencia.
La visualización calcula el peso de atención, lo escala por la magnitud del vector de valor y agrega los resultados entre todas las cabezas de atención y capas del modelo, representando la influencia de cada token previo mediante la opacidad. Al pasar el cursor sobre un token generado, se iluminan los tokens pasados que más han contribuido a su producción.
El proyecto incluye varios ejemplos pregenerados que ilustran patrones reveladores. En el prompt "Office Move Summary", al situarse sobre fragmentos copiados literalmente (direcciones, fechas), se observa que el modelo toma la información casi en su totalidad del texto fuente. En "Debugging an Average Function", un modelo de tan solo 600 millones de parámetros reproduce funciones completas con mínimas modificaciones. Otro ejemplo muestra cómo la palabra "remain" se nutre simultáneamente de fragmentos de dos frases distintas para sintetizar su significado.
Desde el punto de vista técnico, el autor explica que Transformers.js trabaja con archivos .onnx cuyo grafo de cómputo está implementado en WebAssembly, lo que dificulta acceder a valores internos. Para sortear esta limitación, modificó el archivo .onnx y subió un modelo instrumentado a Hugging Face, con el que la aplicación puede extraer los datos necesarios para la visualización.
