Antes de enviar una cadena para embeddings, puedes estimar cuántos tokens usará aplicando la biblioteca de tokenización tiktoken de OpenAI.
Esto es especialmente útil porque los modelos de embeddings (como text-embedding-3-small) tienen límites máximos de tokens que debes respetar.
---
Cómo contar tokens con Tiktoken
Puedes usar el paquete de Python tiktoken para calcular el número de tokens que generará una cadena.
Aquí tienes un fragmento de código de ejemplo:
import tiktoken
def num_tokens_from_string(string: str, encoding_name: str) -> int:
"""Devuelve el número de tokens de una cadena de texto."""
encoding = tiktoken.get_encoding(encoding_name)
num_tokens = len(encoding.encode(string))
return num_tokens
# Ejemplo de uso
num_tokens = num_tokens_from_string("tiktoken is great!", "cl100k_base")
print(num_tokens)Importante:
Para los modelos de embeddings de tercera generación (p. ej.,
text-embedding-3-smallotext-embedding-3-large), debes usar la codificación"cl100k_base".Distintos modelos pueden requerir codificaciones diferentes; si tienes dudas, consulta siempre la documentación del modelo.
---
Por qué importa el recuento de tokens
Si tu cadena supera el tamaño máximo de entrada del modelo, la solicitud de la API fallará.
Contar los tokens con precisión de antemano garantiza flujos de trabajo de embeddings más fluidos y evita errores durante el procesamiento.
---
