¿Qué son TOKEN’S y cómo funcionan en un LLM?

Paulo Tintaya Code
Datapath
Published in
6 min readMar 5, 2024

Los Modelos de Lenguaje Grande (LLM -> Large language model) como Bard, GPT-4 y LaMDA están revolucionando la forma en que interactuamos con las máquinas. Estos modelos son capaces de generar texto, traducir idiomas, escribir diferentes tipos de contenido creativo e incluso responder preguntas de forma informativa. Para lograr estas procesos, los LLM se basan en una unidad fundamental: el token.

Imagen 1: LLM populares. Fuente: TowardsAI.net.

¿Qué son los tokens?

Un token es la unidad básica de información que un LLM puede procesar. Puede ser una palabra, un símbolo, un carácter o incluso una oración completa. Los tokens se utilizan para representar el lenguaje de una manera que el modelo pueda entender y manipular.

Tal como en la imagen 2, podemos ver como se convierte una frase en tokens separados, asi teniendo un conteo de cada uno.

Imagen 2: Herramienta de cálculo de tokens en una frase. Fuente: Elaboración propia.

¿Cómo funcionan los tokens en un LLM?

Los LLM se entrenan con grandes cantidades de datos de texto. Durante el entrenamiento, el modelo aprende a asociar cada token con una representación matemática llamada “vector”. Los vectores son como coordenadas en un espacio de alta dimensionalidad, donde cada coordenada representa una característica del token.

Como se aprecia en la imagen 3, podemos ver cómo se asocian etiquetas para cada palabra, si fuese un verbo, o hasta una institución financiera.

Imagen 3: Asociación de cada token. Fuente: Meditate.com.

Por ejemplo, un token que representa la palabra “perro” podría tener un vector con coordenadas que indican su significado (animal, doméstico, canino), su sonido (vocalización, ladrido), su forma (peludo, de cuatro patas) y otras características relevantes.

Al inicio del proceso, se encuentra el Tokenizador (convirtiendo “palabras” en “tokens”) y la conversión de Tokens (convirtiendo “tokens” en “vectores de tokens”).

Imagen 4: Proceso de transformación de palabras a tokens. Fuente: LessWrong-NickyP blog.

En este proceso podemos separarlo en los siguientes pasos:

  1. Se recibe el texto de entrada.
  2. El texto se divide en N diferentes “partes” llamadas identificadores de tokens.
  3. Los N identificadores de tokens se convierten en N vectores utilizando la matriz de incrustación.
  4. Los N vectores se transfieren al resto del transformador.

Uso de los tokens en un LLM

Cuando un LLM genera texto, primero selecciona una secuencia de tokens que representan el significado que desea transmitir. Luego, utiliza los vectores de esos tokens para generar una secuencia de palabras que sean gramaticalmente correctas y que transmitan el significado deseado.

Por ejemplo, como cuando usamos una sentencia incompleta “The sky is ” en base a probabilidades este modelo de predicción de la siguiente palabra, lo completaría con alguna de las opciones mas probables, “The sky is blue”.

Imagen 5: Flujo de trabajo general de un LLM que predice la siguiente palabra. Fuente: Blogs Nvidia.com.

Todo esto mediante el uso de token, ya que es la unidad básica de un LLM.

¿Cómo funciona el pricing de OpenAI basado en tokens?

OpenAI utiliza un modelo de precios basado en tokens para medir el uso de sus servicios. En este esquema, se factura según la cantidad de tokens procesados en las solicitudes. Entender cómo se cuentan los tokens es esencial para comprender y controlar los costos asociados con el uso de modelos de lenguaje de OpenAI.

Aca los tokens son una forma de calcular el costo de usar los servicios de OpenAI, como GPT-4. Cada vez que envías una solicitud a la API de OpenAI, se cuentan los tokens en tu solicitud. Los tokens son unidades de medida que representan las palabras y símbolos en el texto.

La tarifa de OpenAI se basa en la cantidad de tokens que consumes. Por ejemplo, si envías una solicitud con 10 tokens, pagarías menos que si envías una solicitud con 100 tokens, ya que estás utilizando más recursos de la API.

Es importante tener en cuenta que tanto la entrada como la salida de la API contribuyen al recuento total de tokens. Por lo tanto, debes considerar tanto el texto que proporcionas como la respuesta generada al calcular los costos.

Aca veremos el listado del pricing de algunos modelos de Open AI:

  • GPT 4 Turbo:
Imagen 6: Precios por 1M de tokens en GPT 4 Turbo. Fuente: Open AI pricing page.
  • GPT-4:
Imagen 7: Precios por 1M de tokens en GPT 4. Fuente: Open AI pricing page.
  • GPT-3.5 Turbo
Imagen 8: Precios por 1M de tokens en GPT 3.5 Turbo. Fuente: Open AI pricing page.

¿Cómo se calcula la cantidad de tokens de una oración?

El cálculo de tokens implica contar cada palabra, espacio y carácter especial en una oración. Ciertos elementos, como las palabras compuestas, pueden contar como múltiples tokens. Tener claridad sobre este proceso es crucial para una estimación precisa del consumo de tokens en tus aplicaciones.

OpenAI incluso nos brinda una herramienta para calcular justamente estos token que podamos llegar a usar:

Imagen 9: Tokenizer tool de OpenAI. Fuente: Elaboración propia.

Esta herramienta la podrás encontrar disponible en:

https://platform.openai.com/tokenizer

Aunque de la misma forma existen librerías de python como Tiktoken. La cual nos facilita la integración con la API de OpenAI. Te permite tokenizar texto de manera rápida y precisa, lo que resulta crucial para optimizar tus proyectos de procesamiento del lenguaje natural (PLN).

¿Qué hace TikToken?

  • Tokenización rápida y precisa: Divide el texto en unidades más pequeñas, llamadas tokens, que son interpretables por los modelos de lenguaje de OpenAI.
  • Compatibilidad con diferentes modelos: Funciona con modelos como GPT-3 y GPT-4, permitiéndote aprovechar al máximo sus capacidades.
  • Fácil de usar: Ofrece una interfaz sencilla que facilita su integración en tus proyectos de Python.

Encontraras una guia de como usar en el siguiente colab. Pero básicamente el proceso que se realiza es el siguiente:

Conclusiones

Los tokens son una parte fundamental del funcionamiento de los LLM. Al comprender cómo funcionan los tokens, podemos entender mejor cómo estos modelos generan texto y cómo podemos utilizarlos para realizar diferentes tareas. Por lo que es importante entender cómo estos se generan, y como aprovecharlos de la mejor manera mediante la comprensión y generación de buenos prompts.

Próximos Pasos

Si te interesa aprender más sobre los LLM y los tokens, puedes consultar los siguientes recursos:

  • Introducción a los Modelos de Lenguaje:
  • El Aprendizaje Profundo para el Procesamiento del Lenguaje Natural:
  • Transformers: A Neural Network Architecture for Language Understanding:

Referencias Bibliográficas

Gracias por leerme,

¿Quieres seguir aprendiendo y conectarte con nuestra comunidad? Te invitamos a unirte a nuestras redes sociales. ¡Síguenos en Instagram y LinkedIn para estar al tanto de las últimas noticias, tutoriales y recursos sobre tecnología y aprendizaje automático!

Datapath

Acelerando el talento LATAM en data, cloud, analytics e inteligencia artificial

Síguenos en nuestras redes:

DISCORD: https://go.datapath.ai/Discord_IALatam

Linkedin: https://go.datapath.ai/Linkedin

Instagram: https://go.datapath.ai/Instagram

Facebook: https://go.datapath.ai/Facebook

Tiktok: https://go.datapath.ai/Tiktok

--

--