Qué son los tokens
Los tokens representan la unidad básica de procesamiento que utilizan los modelos de lenguaje para entender y generar texto. A diferencia de lo que podríamos pensar intuitivamente, estos modelos no procesan el texto palabra por palabra, sino que lo dividen en fragmentos más pequeños llamados tokens.
Un token puede ser una palabra completa, parte de una palabra, un carácter individual, o incluso espacios y signos de puntuación. Por ejemplo, la palabra "programación" podría dividirse en varios tokens como "program", "ación", mientras que palabras comunes como "el" o "de" suelen ser tokens únicos. Esta división no es arbitraria, sino que se basa en algoritmos de tokenización que optimizan la representación del lenguaje.
Implicaciones de los tokens en el procesamiento
La tokenización tiene implicaciones directas en cómo los modelos procesan la información y en los costes asociados. Cada modelo tiene un límite máximo de tokens que puede procesar en una sola petición, conocido como ventana de contexto. Por ejemplo, si un modelo tiene una ventana de 4,096 tokens, esto incluye tanto el texto de entrada como la respuesta generada.
Los tokens también determinan el coste económico de usar la API de OpenAI. Los precios se calculan por cada 1,000 tokens procesados, y es importante distinguir entre:
- Tokens de entrada (input tokens): El texto que enviamos al modelo
- Tokens de salida (output tokens): El texto que el modelo genera como respuesta
Los tokens de salida suelen tener un coste superior a los de entrada, ya que requieren más procesamiento computacional para ser generados.
Conteo de tokens con tiktoken
Para calcular el número de tokens antes de realizar una petición, podemos usar la biblioteca tiktoken, que replica el proceso de tokenización de OpenAI:
import tiktoken
# Obtener el codificador para el modelo específico
encoding = tiktoken.encoding_for_model("gpt-4.1")
# Contar tokens en un texto
texto = "Hola, ¿cómo estás programando hoy?"
num_tokens = len(encoding.encode(texto))
print(f"El texto contiene {num_tokens} tokens")
Esta herramienta es especialmente útil para estimar costes antes de realizar peticiones costosas o para asegurarnos de que no excedemos los límites del modelo.
Para poder usarla es necesario instalarla:
pip install tiktoken
Información de tokens en las respuestas
Cuando utilizamos la API Responses de OpenAI, cada respuesta incluye metadatos detallados sobre el uso de tokens. Esta información aparece en el campo usage
de la respuesta:
from openai import OpenAI
client = OpenAI()
response = client.responses.create(
model="gpt-4.1",
input="Explica qué es la programación orientada a objetos en una frase."
)
# Acceder a la información de tokens
usage = response.usage
print(f"Tokens de entrada: {usage.input_tokens}")
print(f"Tokens de salida: {usage.output_tokens}")
print(f"Total de tokens: {usage.total_tokens}")
# Mostrar el texto generado
print(f"Respuesta: {response.output_text}")
La estructura usage
proporciona información granular que incluye:
input_tokens
: Número de tokens en nuestra peticiónoutput_tokens
: Número de tokens en la respuesta generadatotal_tokens
: Suma total de tokens procesadosinput_tokens_details
: Información adicional como tokens en cachéoutput_tokens_details
: Detalles sobre tokens de razonamiento si aplica
Esta información es fundamental para monitorizar el consumo y optimizar el uso de la API, especialmente en aplicaciones que realizan múltiples peticiones o procesan grandes volúmenes de texto.
Fuentes y referencias
Documentación oficial y recursos externos para profundizar en OpenAI
Documentación oficial de OpenAI
Alan Sastre
Ingeniero de Software y formador, CEO en CertiDevs
Ingeniero de software especializado en Full Stack y en Inteligencia Artificial. Como CEO de CertiDevs, OpenAI es una de sus áreas de expertise. Con más de 15 años programando, 6K seguidores en LinkedIn y experiencia como formador, Alan se dedica a crear contenido educativo de calidad para desarrolladores de todos los niveles.
Más tutoriales de OpenAI
Explora más contenido relacionado con OpenAI y continúa aprendiendo con nuestros tutoriales gratuitos.
Aprendizajes de esta lección
- Comprender qué son los tokens y cómo se dividen los textos en fragmentos para su procesamiento.
- Conocer la importancia de la tokenización en el funcionamiento y coste de los modelos de lenguaje.
- Aprender a utilizar la biblioteca tiktoken para contar tokens en un texto.
- Entender cómo interpretar la información de tokens en las respuestas de la API de OpenAI.
- Saber cómo monitorizar y optimizar el uso de tokens para gestionar costes y límites de los modelos.