Saltar al contenido
Fenifut

Curiosidades, datos raros y cosas que pasaron de verdad

Portada / Noticias

La palabra que GPT-3 no podía decir (y por qué no era un fantasma)

Le pedías que repitiera SolidGoldMagikarp y el modelo se rompía. La explicación tardó años en aparecer y es mejor que cualquier teoría paranormal.

La palabra que GPT-3 no podía decir (y por qué no era un fantasma)

Había una palabra que GPT-3 no podía decir.

No es que se negara. Es que no podía. Le pedías que la repitiera —solo repetirla, nada más— y el modelo se ponía a soltar frases sin sentido, a hablar de cosas que nadie había mencionado, a insistir en palabras que no venían a cuento. A veces decía cosas bastante inquietantes sobre sí mismo.

La palabra era SolidGoldMagikarp.

Y no, no es una broma. Es uno de los fallos más raros que se le han encontrado nunca a un modelo de lenguaje, lo descubrieron dos investigadores en 2023 y la explicación es mucho mejor que cualquier teoría paranormal.

Cómo se encuentra algo así

Jessica Rumbelow y Matthew Watkins estaban hurgando en las tripas de GPT-3. Concretamente en su vocabulario, que es una lista fija de trocitos de texto con la que el modelo lo construye todo.

Buscando agrupaciones extrañas se toparon con un racimo de cadenas que no pintaban nada ahí: SolidGoldMagikarp, TheNitromeFan, cloneembedreportprint. Cosas que parecen nombres de usuario de un foro de 2011.

Porque eran exactamente eso.

Al meterlas en el modelo, aquello se rompía. Le preguntas a GPT-3 qué significa «SolidGoldMagikarp» y empieza a hablarte de la palabra «distribute». Sin venir a cuento. Como si le hubieras preguntado por un vecino que no existe y se pusiera a describirte uno inventado para salir del paso.

La que daba más miedo

De todas ellas, la que provocaba reacciones más fuertes era petertodd.

Esa sí tiene dueño conocido: casi con total seguridad viene de Peter Todd, desarrollador de Bitcoin, que usa ese mismo nombre en Reddit y en GitHub. El hombre no hizo absolutamente nada. Simplemente escribía en internet.

Y con esa palabra el modelo se desbocaba de una forma rara hasta para este asunto. Gente que lo probó obtuvo respuestas agresivas, divagaciones larguísimas, personalidades inventadas. Durante unos meses, en ciertos rincones de internet, «petertodd» se convirtió en algo parecido a una palabra maldita.

Y ahora la parte aburrida, que es la buena

Aquí viene el giro que lo explica todo, y no hay fantasma dentro de la máquina.

Un modelo de lenguaje no lee letras. Lee tokens: trozos de texto sacados de un vocabulario cerrado que se fabrica antes de entrenar nada. Para fabricarlo se coge un montón de texto y se mira qué secuencias se repiten más.

Ese vocabulario salió en buena parte de un volcado de Reddit. Y en Reddit hay hilos donde la misma gente escribe el mismo nombre miles de veces: hilos de contar números, por ejemplo, donde unos pocos usuarios dejan decenas de miles de mensajes. Sus nombres aparecían tantas veces que el sistema decidió que merecían ser una palabra entera.

Hasta ahí, todo normal.

El problema vino después. El modelo de verdad se entrenó con un corpus distinto, donde esos nombres casi no aparecían.

Así que quedó una casilla en el vocabulario con la etiqueta puesta y nada dentro. El modelo sabía que esa palabra existía, pero no había visto jamás qué significaba, en qué frases vivía ni con qué se relacionaba.

Cuando le obligabas a usarla, tiraba de lo único que tenía: nada. Y rellenaba el hueco con lo que pillara.

No era un fantasma. Era un agujero.

Por qué esto es más interesante de lo que parece

Lo bonito del asunto es que nadie programó ese comportamiento. No está en ningún sitio. Salió de un desajuste entre dos listas de datos que nadie comparó, y estuvo ahí durante años sin que nadie lo notara, porque a nadie se le ocurre escribirle a una máquina «repite SolidGoldMagikarp».

Apareció cuando dos personas se pusieron a buscar rarezas a propósito.

Y ese es el patrón que se repite con estos sistemas: los fallos más gordos no están en lo que hacen mal cuando les pides algo normal. Están en los bordes, en los casos que nadie probó, en las palabras huecas que nadie dijo nunca.

Los modelos nuevos ya no se rompen con esas cadenas concretas. Las arreglaron. Lo que no se ha arreglado es el mecanismo: todo modelo tiene un vocabulario, todo vocabulario se construye antes que el modelo, y en algún sitio de esa lista hay palabras que casi nadie usa.

Por cierto: si quieres comprobar qué tenía de especial el pobre TheNitromeFan, era un usuario de un hilo donde la gente se dedicaba a contar. Uno, dos, tres, cuatro. Miles de veces. Durante años.

De ahí salió una de las palabras que rompían la inteligencia artificial más avanzada del mundo.

Sigue

Dentro de tu cartucho de Pokémon había un reloj funcionando, y se lo comió la pila