Enumera y cuenta tokens

El SDK de Vertex AI para Python (1.60.0 y posteriores) incluye un tokenizador integrado, que te permite enumerar y contar los tokens de una instrucción de forma local sin tener que realizar llamadas a la API. En esta página, se muestra cómo enumerar los tokens y sus IDs de tokens de una instrucción y cómo obtener un recuento total de tokens de una instrucción con el SDK de Vertex AI para Python.

Tokens y la importancia de enumerar y contar tokens

Los modelos de IA generativa dividen el texto y otros datos de una instrucción en unidades llamadas tokens para su procesamiento. La forma en que los datos de texto se convierten en tokens depende del tokenizador que se usa. Un token pueden ser caracteres, palabras o frases.

Cada modelo tiene una cantidad máxima de tokens que puede manejar en una instrucción y una respuesta. Conocer el recuento de tokens de tu instrucción te permite saber si superaste este límite o no. Además, el recuento de tokens también muestra los caracteres facturables de la instrucción, lo que te ayuda a estimar el costo.

Enumerar tokens muestra una lista de los tokens en los que se desglosa tu instrucción. Cada token de la lista está asociado con un ID de token, que te ayuda a solucionar problemas y analizar el comportamiento del modelo.

Modelos compatibles

En la siguiente tabla, se muestran los modelos que admiten la lista de tokens y el recuento de tokens:

Enumera tokens Cuenta tokens
gemini-1.5-flash-002 gemini-1.5-flash-002
gemini-1.5-pro-002 gemini-1.5-pro-002
gemini-1.0-pro-002
gemini-1.0-pro-vision-001

Obtén una lista de tokens e IDs de token para un prompt

En la siguiente muestra de código, se indica cómo obtener una lista de tokens e IDs de token para una instrucción. El mensaje solo debe contener texto. No se admiten los mensajes multimodales.

Gen AI SDK for Python

Instalar

pip install --upgrade google-genai
Para obtener más información, consulta la documentación de referencia del SDK.

Establece variables de entorno para usar el SDK de Gen AI con Vertex AI:

# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values
# with appropriate values for your project.
export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT
export GOOGLE_CLOUD_LOCATION=us-central1
export GOOGLE_GENAI_USE_VERTEXAI=True

from google import genai
from google.genai.types import HttpOptions

client = genai.Client(http_options=HttpOptions(api_version="v1"))
response = client.models.compute_tokens(
    model="gemini-2.0-flash-001",
    contents="What's the longest word in the English language?",
)

print(response)
# Example output:
# tokens_info=[TokensInfo(
#    role='user',
#    token_ids=[1841, 235303, 235256, 573, 32514, 2204, 575, 573, 4645, 5255, 235336],
#    tokens=[b'What', b"'", b's', b' the', b' longest', b' word', b' in', b' the', b' English', b' language', b'?']
#  )]

Obtén el recuento de tokens y los caracteres facturables de una instrucción

En la siguiente muestra de código, se indica cómo obtener el recuento de tokens y la cantidad de caracteres facturables de una instrucción. Se admiten los mensajes multimodales y solo de texto.

Gen AI SDK for Python

Instalar

pip install --upgrade google-genai
Para obtener más información, consulta la documentación de referencia del SDK.

Establece variables de entorno para usar el SDK de Gen AI con Vertex AI:

# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values
# with appropriate values for your project.
export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT
export GOOGLE_CLOUD_LOCATION=us-central1
export GOOGLE_GENAI_USE_VERTEXAI=True

from google import genai
from google.genai.types import HttpOptions

client = genai.Client(http_options=HttpOptions(api_version="v1"))

prompt = "Why is the sky blue?"

# Send text to Gemini
response = client.models.generate_content(
    model="gemini-2.0-flash-001", contents=prompt
)

# Prompt and response tokens count
print(response.usage_metadata)

# Example output:
#  cached_content_token_count=None
#  candidates_token_count=311
#  prompt_token_count=6
#  total_token_count=317