Este es un sitio oficial de la ODERSA. Así es como puede saberlo

El dominio oficial

La dirección de este sitio termina en odersa.org. Cada servicio de la asociación está en un subdominio de odersa.org y en ningún otro lugar. Si la dirección que aparece en la barra de su navegador no termina en odersa.org, este sitio no es nuestro.

Gratuito, y sin cuenta

Todo está abierto desde el primer momento. Sin registro, sin cuenta, sin contraseña, sin suscripción, sin publicidad. Nada se reserva a quien paga, porque aquí no se paga nada.

Ningún dato recopilado

Este sitio no le sigue la pista: ni rastreadores, ni cookies de seguimiento, ninguna herramienta de medición incorporada en estas páginas, y nada medido en su dispositivo. Nuestro alojamiento cuenta los accesos de forma agregada, como hace cualquier servidor que responde: un total, nunca un perfil. No hace falta que nos crea: abra las herramientas de desarrollo de su navegador, pestaña Red, y recargue la página. Verá la lista completa de lo que el sitio pide. Todo viene de odersa.org, nada sale a otra parte.

Contenidos libres

Los contenidos se publican bajo licencia CC BY 4.0. Puede copiarlos, traducirlos, imprimirlos y redistribuirlos, tanto para sus clases como para su gente, con una única condición: citar a la ODERSA.

El precio de un idioma

Una misma frase puede producir hasta 15 veces más tokens según el idioma en que esté escrita. No es un detalle de estilo: es una decisión de ingeniería, con consecuencias medibles.

Hacer la misma pregunta a un modelo de lenguaje, en dos idiomas distintos, no cuesta lo mismo de calcular. No es una cuestión de longitud de las palabras ni de cortesía: es una diferencia medida, documentada, y viene de una decisión de ingeniería tomada mucho antes de que nadie hiciera ninguna pregunta.

En qué se convierte un texto antes de entrar en el modelo

Un modelo de lenguaje no lee palabras. Lee tokens: fragmentos de texto, más cortos que una palabra o a veces más largos, troceados por un programa llamado tokenizador antes de que el texto entre en el cálculo. El detalle de ese troceado depende de un vocabulario fijo, aprendido una vez para siempre sobre un corpus de textos muy grande. Cada palabra tiene su propio número de tokens, y ese número es lo que el modelo factura, en tiempo de cálculo y en espacio en su memoria de trabajo.

Un mismo contenido, sumas muy distintas

Un estudio de 2023 midió esa diferencia sobre un conjunto de tokenizadores realmente usados por los modelos de lenguaje. Su constatación: un mismo contenido, traducido a idiomas distintos, puede producir hasta 15 veces más tokens en el idioma más desfavorecido que en el más favorecido. Incluso los tokenizadores que trocean a nivel de carácter o de byte, que en teoría evitan ese problema, conservan una diferencia medida en más de 4 veces según los pares de idiomas.

15×

la diferencia de tokens medida para un mismo contenido, entre el idioma más favorecido y el menos favorecido, en los casos más desfavorables (Petrov et al., 2023).

Más tokens para decir lo mismo no es un detalle estético. Es más cálculo en cada respuesta, y por tanto más lentitud al generarla y más coste al hacerla funcionar en un servicio facturado por token. Es también una ventana de contexto, la memoria de trabajo limitada de un modelo, que se llena más rápido: para un mismo número de tokens autorizados, un texto en un idioma desfavorecido contiene menos contenido realmente útil.

Por qué esta decisión no es neutral

El método de troceado más extendido se llama BPE, byte pair encoding. No se inventó para el lenguaje. Philip Gage lo describe en 1994 como un método general de compresión de archivos informáticos: detecta el par de bytes más frecuente en unos datos, lo sustituye por un byte sin usar, y repite la operación hasta agotar la ganancia. Nada que ver, en origen, con una lengua humana.

En 2016, Rico Sennrich, Barry Haddow y Alexandra Birch retoman la idea para un problema preciso de traducción automática: ¿qué hacer con una palabra rara, ausente del vocabulario aprendido por un modelo? Su respuesta trocea la palabra en fragmentos más corrientes, ya conocidos por el modelo. El método funciona bien, y desde entonces lo retoma la casi totalidad de los grandes modelos de lenguaje.

Un vocabulario de subpalabras se aprende sobre un corpus, una vez, antes del entrenamiento del propio modelo. Un corpus mayoritariamente anglófono aprende un vocabulario optimizado para el inglés: los fragmentos más corrientes en ese idioma se convierten en tokens únicos, cortos, poco numerosos. Una palabra de un idioma menos representado en ese corpus acaba troceada en más fragmentos, simplemente porque sus propias repeticiones frecuentes no han tenido la misma oportunidad de ser vistas durante el aprendizaje del vocabulario. No es una propiedad del lenguaje. Es el rastro de un corpus.

Lo que eso cambia, concretamente

Un servicio facturado por token cuesta, para un contenido equivalente, más caro a quien escribe en un idioma desfavorecido por el tokenizador. La respuesta también tarda más en aparecer, puesto que un modelo produce sus tokens uno detrás de otro, a una velocidad más o menos constante: más tokens que producir, más espera. Y la ventana de contexto, ese número fijo de tokens que un modelo puede leer o escribir de golpe, contiene menos texto útil: un documento, un historial de conversación, una instrucción larga caben peor en ella.

Ninguno de estos efectos viene de que un idioma sea más complejo que otro. Vienen de un vocabulario aprendido una vez, sobre un corpus dado, nunca recalculado en función de quién lo usa después. Los autores del estudio de 2023 proponen una vía: concebir, desde el principio, tokenizadores que no favorezcan estructuralmente a un idioma más que a otro.

Fuentes

Este artículo se publica bajo licencia CC BY 4.0: cópielo, tradúzcalo, vuelva a publicarlo citando a la ODERSA.

Volver al blog