Cómo varía la tokenización de subpalabras entre inglés, código y texto CJK
Los tokenizadores BPE modernos (como la familia o200k_base de OpenAI, el tokenizador Claude 5 de Anthropic y los vocabularios SentencePiece de Gemini) dividen el texto en subpalabras en lugar de palabras por espacios. El texto en inglés promedia entre 3.8 y 4.2 caracteres por token, mientras que claves JSON, sangrías, trazas de pila y URLs acercan la densidad a 2.5–3.2 caracteres por token.
Los textos en chino, japonés y coreano suelen requerir entre 0.6 y 1.1 tokens por carácter, y el nuevo tokenizador Claude 5 de Anthropic puede generar un 25%–30% más de tokens que Sonnet 4.6 en código denso o entradas multilingües.
| Tipo de contenido de entrada | Densidad típica de tokens | Recomendación presupuestaria |
|---|---|---|
| Texto en inglés estándar | ~0.75 tokens / palabra (~4 caract. / token) | Seguro para cálculo inicial; añade 10% de margen |
| TypeScript / Python / JSON Schemas | 1 token cada 2.5–3.3 caracteres | Minifica esquemas repetidos y elimina comentarios |
| Chino / Japonés / Coreano (CJK) | ~0.7–1.1 tokens por carácter | Verifica usage.prompt_tokens con una llamada real |
| Transcripciones multiturno de agentes | Se acumula en cada turno de herramienta | Coloca instrucciones fijas al inicio para maximizar caché |