Simon Willison ha publicado ttok 1.0 este 9 de octubre. Es una herramienta de terminal para contar tokens y recortar texto. Su novedad principal puede afectar a una integración sin que cambiemos una sola frase: utiliza un tokenizador distinto por defecto.

Si tu agente decide cuánto texto enviar a partir de ese conteo, conviene revisar el ajuste antes de actualizar. Hemos ejecutado una prueba pequeña: el mismo texto devuelve 23 tokens con el nuevo valor por defecto y 30 al seleccionar el tokenizador anterior. Eso cambia una medición local; no demuestra un ahorro en la factura de una API.

Qué cambia en la versión 1.0

El anuncio del autor y las notas de la versión explican el cambio: ttok pasa de cl100k_base a o200k_base, el tokenizador que su documentación asocia a GPT-5. La opción por defecto es ahora --model gpt-5. El comando --list-models también muestra los prefijos que reconoce la biblioteca tiktoken.

Un tokenizador divide el texto en piezas que el modelo puede procesar. Dos tokenizadores pueden repartir la misma frase de forma distinta. Si necesitas mantener el comportamiento anterior, la documentación del proyecto indica que puedes seleccionar --model gpt-3.5-turbo.

Elegir ese nombre no ejecuta GPT-3.5 ni GPT-5: selecciona la forma de contar. Para entender la diferencia entre texto y tokens, tienes este artículo de aprendizaje.

Una prueba local que puedes reproducir

Hemos probado ttok 1.0 con Python 3.13.7 y tiktoken 0.14.0. El paquete publicado requiere Python 3.10 o posterior. En un entorno virtual, estas versiones se pueden instalar así:

python -m pip install "ttok==1.0" "tiktoken==0.14.0"

Guardamos un texto sintético en entrada.txt, en UTF-8 y sin salto de línea final:

from pathlib import Path

texto = (
    "La factura está pendiente de aprobación. "
    "El agente puede preparar una propuesta, "
    "pero necesita confirmación humana antes de pagar."
)
Path("entrada.txt").write_text(texto, encoding="utf-8")

Después ejecutamos:

ttok -i entrada.txt
ttok -i entrada.txt --model gpt-3.5-turbo
Ajuste usado en ttok 1.0 Resultado local
Por defecto: o200k_base 23 tokens
Selección anterior: cl100k_base 30 tokens

Es una comprobación funcional de una frase, no una comparación del rendimiento de modelos. Tampoco hemos ejecutado aquí una versión antigua de ttok: las dos mediciones corresponden a la versión 1.0 con ajustes diferentes. Otros textos, versiones o saltos de línea pueden producir resultados distintos.

Recortar a doce tokens puede quitar una condición importante

Probamos también este comando:

ttok -i entrada.txt -t 12

El resultado exacto fue:

La factura está pendiente de aprobación. El agente puede preparar una

El recorte conserva el principio y pierde el final, incluida la exigencia de confirmación humana. La herramienta ha respetado el límite indicado, pero no ha preservado el significado completo de la instrucción.

Nuestro criterio para un agente empresarial es separar las instrucciones obligatorias del texto documental que pueda recortarse. En un RAG, un sistema que recupera documentos para responder, preferimos seleccionar menos fragmentos completos antes que cortar todo el contexto a ciegas. Esa decisión exige comprobar también que siguen presentes las condiciones y excepciones necesarias. Aquí explicamos cómo repartir la ventana de contexto.

Qué revisar antes de incorporarlo a un proceso

Fija la versión de la herramienta y el tokenizador en la configuración. Mantén algunas entradas de referencia para detectar cambios en sus conteos y en los fragmentos que sobreviven al recorte. Reserva espacio para instrucciones, historial, herramientas y respuesta: contar únicamente un archivo no equivale a medir una petición completa.

ttok usa tiktoken; sus resultados no deben tratarse como conteos exactos de Claude o Gemini. El autor también advierte de la falta de confirmación oficial que tenía sobre la equivalencia con GPT-6. No damos por validada esa equivalencia para cualquier entrada.

La prueba ejecutada no llamó a una API de inferencia. Eso no significa que toda la instalación funcione sin red: descargar paquetes y cargar inicialmente los recursos del tokenizador puede requerir conexión.

Esta actualización es útil para medir y preparar texto. La decisión que sigue correspondiendo a nuestra aplicación es qué información puede descartarse y qué debe llegar completa al modelo.

Fuentes

Sigue explorando