¿Qué son los tokens?
Los tokens son los bloques de construcción del texto que procesan los modelos de OpenAI. Pueden ser tan cortos como un solo carácter o tan largos como una palabra completa, según el idioma y el contexto. Los espacios, la puntuación y las palabras parciales contribuyen al recuento de tokens. Así es como la API segmenta internamente tu texto antes de generar una respuesta.
Reglas prácticas útiles para el inglés:
1 token ≈ 4 caracteres
1 token ≈ ¾ de una palabra
100 tokens ≈ 75 palabras
1–2 frases ≈ 30 tokens
1 párrafo ≈ 100 tokens
~1.500 palabras ≈ 2.048 tokens
La tokenización puede variar según el idioma. Por ejemplo, «Cómo estás» (español para «How are you») contiene 5 tokens para 10 caracteres. El texto que no está en inglés suele producir una proporción mayor de tokens por carácter, lo que puede afectar a los costes y los límites.
Ejemplos
Aquí tienes algunas muestras de texto del mundo real con sus recuentos aproximados de tokens:
La cita de Wayne Gretzky «Fallas el 100 % de los tiros que no haces» = 11 tokens
La Carta de OpenAI = 476 tokens
La Declaración de Independencia de EE. UU. = 1.695 tokens
Cómo se calculan los recuentos de tokens
Cuando envías texto a la API:
El texto se divide en tokens.
El modelo procesa esos tokens.
La respuesta se genera como una secuencia de tokens y luego se convierte de nuevo en texto.
El uso de tokens se registra en varias categorías:
Tokens de entrada – tokens de tu solicitud.
Tokens de salida – tokens generados en la respuesta.
Tokens en caché – tokens reutilizados del historial de conversación (a menudo se facturan a una tarifa reducida).
Tokens de razonamiento – en algunos modelos avanzados, se incluyen internamente «pasos de pensamiento» adicionales antes de producir el resultado final.
Estos recuentos aparecen en los metadatos de respuesta de tu API y se usan para la facturación y el seguimiento del uso.
Para explorar más a fondo la tokenización, puedes usar nuestra herramienta interactiva Tokenizer, que te permite calcular el número de tokens y ver cómo se divide el texto en tokens.
Como alternativa, si quieres tokenizar texto de forma programática, usa Tiktoken como un tokenizador BPE rápido utilizado específicamente para los modelos de OpenAI.
Límites de tokens
Cada modelo tiene un límite máximo combinado de tokens (entrada + salida). Los modelos actuales de alta capacidad admiten hasta cientos de miles de tokens en contexto, aunque los límites prácticos pueden variar según la versión del modelo y tu nivel de uso.
Si superas el límite, puedes:
Acortar o reformular prompts.
Dividir textos largos en fragmentos más pequeños.
Resumir o preprocesar las entradas antes de enviarlas.
Precios por token
El uso de la API se cobra por token y varía según el modelo y según si los tokens son de entrada, de salida o en caché. Consulta la página de precios de OpenAI para ver las tarifas actuales. Algunos modelos de razonamiento pueden usar más tokens internamente, pero buscan mejorar la eficiencia reduciendo el número de tokens necesarios por tarea completada.
Explorar los tokens
La API trata las palabras según su contexto en los datos del corpus. Los modelos toman el prompt, convierten la entrada en una lista de tokens, procesan el prompt y convierten los tokens predichos de nuevo en las palabras que vemos en la respuesta.
Lo que para nosotros pueden parecer dos palabras idénticas puede generarse en tokens diferentes según cómo estén estructuradas dentro del texto. Considera cómo la API genera valores de token para la palabra «red» en función de su contexto dentro del texto:
En el primer ejemplo anterior, el token «2266» para « red» incluye un espacio inicial (nota: estos son ID de token de ejemplo con fines de demostración).
El token «2296» para « Red» (con un espacio inicial y empezando con mayúscula) es diferente del token «2266» para « red» con una letra minúscula.
Cuando «Red» se usa al principio de una frase, el token generado no incluye un espacio inicial. El token «7738» es diferente de los dos ejemplos anteriores de la palabra.
Observaciones:
Cuanto más probable/frecuente es un token, menor es el número de token que se le asigna:
El token generado para el punto es el mismo («13») en las 3 frases. Esto se debe a que, contextualmente, el punto se usa de forma bastante similar en todos los datos del corpus.
El token generado para «red» varía según su posición dentro de la frase:
Minúscula en mitad de una frase: « red» - (token: «2266»)
Mayúscula en mitad de una frase: « Red» - (token: «2297»)
Mayúscula al principio de una frase: «Red» - (token: «7738»)
