La API CountTokens calcula el número de tokens de entrada antes de enviar una solicitud a la API de Gemini.
Usa la API CountTokens para evitar que las solicitudes superen la ventana de contexto del modelo y calcula los costes potenciales en función de los caracteres o tokens facturables.
La API CountTokens puede usar el mismo parámetro contents
que las solicitudes de inferencia de la API Gemini.
Modelos admitidos
- Versión preliminar de Gemini 2.5 Flash Image (versión preliminar)
- Gemini 2.5 Flash-Lite
- Gemini 2.0 Flash con generación de imágenes (vista previa)
- Vertex AI Model Optimizer (experimental)
- Gemini 2.5 Pro
- Gemini 2.5 Flash
- Gemini 2.0 Flash
- Gemini 2.0 Flash-Lite
Lista de parámetros
Esta clase consta de dos propiedades principales: role
y parts
. La propiedad role
denota al individuo que produce el contenido, mientras que la propiedad parts
contiene varios elementos, cada uno de los cuales representa un segmento de datos dentro de un mensaje.
Parámetros | |
---|---|
|
Opcional: Identidad de la entidad que crea el mensaje. Asigna a la cadena uno de los siguientes valores:
El valor En las conversaciones que no son de varias interacciones, este campo se puede dejar en blanco o sin definir. |
|
Lista de partes ordenadas que componen un único mensaje. Las distintas partes pueden tener diferentes tipos MIME de IANA. |
Part
Tipo de datos que contiene contenido multimedia que forma parte de un mensaje Content
de varias partes.
Parámetros | |
---|---|
|
Opcional: Una petición de texto o un fragmento de código. |
|
Opcional: Datos insertados en bytes sin procesar. |
|
Opcional: Datos almacenados en un archivo. |
Blob
Blob de contenido. Si es posible, envíalo como texto en lugar de bytes sin formato.
Parámetros | |
---|---|
|
Tipo MIME de IANA de los datos. |
|
Bytes sin procesar. |
FileData
Datos basados en URIs.
Parámetros | |
---|---|
|
Tipo MIME de IANA de los datos. |
|
El URI de Cloud Storage del archivo que almacena los datos. |
system_instruction
Este campo es para system_instructions
proporcionados por el usuario. Es igual que contents
, pero con una compatibilidad limitada de los tipos de contenido.
Parámetros | |
---|---|
|
Tipo MIME de IANA de los datos. Este campo se ignora internamente. |
|
Solo texto. Instrucciones que los usuarios quieren enviar al modelo. |
FunctionDeclaration
Representación estructurada de una declaración de función, tal como se define en la especificación OpenAPI 3.0, que representa una función para la que el modelo puede generar entradas JSON.
Parámetros | |
---|---|
|
Nombre de la función a la que se debe llamar. |
|
Opcional: Descripción y finalidad de la función. |
|
Opcional: Describe los parámetros de la función en el formato de objeto de esquema JSON de OpenAPI: especificación de OpenAPI 3.0. |
|
Opcional: Describe la salida de la función en el formato de objeto de esquema JSON de OpenAPI: especificación de OpenAPI 3.0. |
Ejemplos
Obtener el recuento de tokens a partir de una petición de texto
En este ejemplo se cuentan los tokens de una sola petición de texto:
REST
Para obtener el recuento de tokens y el número de caracteres facturables de una petición mediante la API Vertex AI, envía una solicitudPOST
al endpoint del modelo de la editorial.
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- LOCATION: la región en la que se procesará la solicitud. Entre las opciones disponibles se incluyen las siguientes:
Haz clic para ver una lista parcial de las regiones disponibles
us-central1
us-west4
northamerica-northeast1
us-east4
us-west1
asia-northeast3
asia-southeast1
asia-northeast1
- PROJECT_ID: tu ID de proyecto.
- MODEL_ID: ID del modelo multimodal que quieras usar.
- ROLE:
el rol en una conversación asociado al contenido. Es obligatorio especificar un rol incluso en los casos prácticos de una sola interacción.
Entre los valores aceptados se incluyen los siguientes:
USER
: especifica el contenido que has enviado.
- TEXT: las instrucciones de texto que se deben incluir en la petición.
Método HTTP y URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:countTokens
Cuerpo JSON de la solicitud:
{ "contents": [{ "role": "ROLE", "parts": [{ "text": "TEXT" }] }] }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:countTokens"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:countTokens" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la siguiente.
Python
Instalar
pip install --upgrade google-genai
Para obtener más información, consulta la documentación de referencia del SDK.
Define variables de entorno para usar el SDK de IA generativa 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=global export GOOGLE_GENAI_USE_VERTEXAI=True
Go
Consulta cómo instalar o actualizar Go.
Para obtener más información, consulta la documentación de referencia del SDK.
Define variables de entorno para usar el SDK de IA generativa 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=global export GOOGLE_GENAI_USE_VERTEXAI=True
Node.js
Instalar
npm install @google/genai
Para obtener más información, consulta la documentación de referencia del SDK.
Define variables de entorno para usar el SDK de IA generativa 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=global export GOOGLE_GENAI_USE_VERTEXAI=True
Java
Consulta cómo instalar o actualizar Java.
Para obtener más información, consulta la documentación de referencia del SDK.
Define variables de entorno para usar el SDK de IA generativa 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=global export GOOGLE_GENAI_USE_VERTEXAI=True
Obtener el recuento de tokens de una petición multimedia
En este ejemplo se cuentan los tokens de una petición que usa varios tipos de contenido multimedia.
REST
Para obtener el recuento de tokens y el número de caracteres facturables de una petición mediante la API Vertex AI, envía una solicitudPOST
al endpoint del modelo de la editorial.
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- LOCATION: la región en la que se procesará la solicitud. Entre las opciones disponibles se incluyen las siguientes:
Haz clic para ver una lista parcial de las regiones disponibles
us-central1
us-west4
northamerica-northeast1
us-east4
us-west1
asia-northeast3
asia-southeast1
asia-northeast1
- PROJECT_ID: .
- MODEL_ID: ID del modelo multimodal que quieras usar.
- ROLE:
el rol en una conversación asociado al contenido. Es obligatorio especificar un rol incluso en los casos prácticos de una sola interacción.
Entre los valores aceptados se incluyen los siguientes:
USER
: especifica el contenido que has enviado.
- TEXT: las instrucciones de texto que se deben incluir en la petición.
- FILE_URI:
URI o URL del archivo que se va a incluir en la petición. Entre los valores aceptados se incluyen los siguientes:
- URI del segmento de Cloud Storage: el objeto debe ser de lectura pública o estar en el mismo proyecto Google Cloud que envía la solicitud. En
gemini-2.0-flash
ygemini-2.0-flash-lite
, el límite de tamaño es de 2 GB. - URL HTTP: la URL del archivo debe ser de lectura pública. Puedes especificar un archivo de vídeo, un archivo de audio y hasta 10 archivos de imagen por solicitud. Los archivos de audio, vídeo y documentos no pueden superar los 15 MB.
- URL del vídeo de YouTube: el vídeo de YouTube debe ser propiedad de la cuenta que has usado para iniciar sesión en la Google Cloud consola o debe ser público. Solo se admite una URL de vídeo de YouTube por solicitud.
Cuando especifiques un
fileURI
, también debes especificar el tipo de contenido multimedia (mimeType
) del archivo. Si Controles de Servicio de VPC está habilitado, no se admite especificar una URL de archivo multimedia parafileURI
. - URI del segmento de Cloud Storage: el objeto debe ser de lectura pública o estar en el mismo proyecto Google Cloud que envía la solicitud. En
- MIME_TYPE:
el tipo de contenido multimedia del archivo especificado en los campos
data
ofileUri
. Entre los valores aceptados se incluyen los siguientes:Haz clic para desplegar los tipos de MIME
application/pdf
audio/mpeg
audio/mp3
audio/wav
image/png
image/jpeg
image/webp
text/plain
video/mov
video/mpeg
video/mp4
video/mpg
video/avi
video/wmv
video/mpegps
video/flv
Método HTTP y URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:countTokens
Cuerpo JSON de la solicitud:
{ "contents": [{ "role": "ROLE", "parts": [ { "file_data": { "file_uri": "FILE_URI", "mime_type": "MIME_TYPE" } }, { "text": "TEXT } ] }] }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:countTokens"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:countTokens" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la siguiente.
Python
Instalar
pip install --upgrade google-genai
Para obtener más información, consulta la documentación de referencia del SDK.
Define variables de entorno para usar el SDK de IA generativa 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=global export GOOGLE_GENAI_USE_VERTEXAI=True
Go
Consulta cómo instalar o actualizar Go.
Para obtener más información, consulta la documentación de referencia del SDK.
Define variables de entorno para usar el SDK de IA generativa 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=global export GOOGLE_GENAI_USE_VERTEXAI=True
Node.js
Instalar
npm install @google/genai
Para obtener más información, consulta la documentación de referencia del SDK.
Define variables de entorno para usar el SDK de IA generativa 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=global export GOOGLE_GENAI_USE_VERTEXAI=True
Java
Consulta cómo instalar o actualizar Java.
Para obtener más información, consulta la documentación de referencia del SDK.
Define variables de entorno para usar el SDK de IA generativa 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=global export GOOGLE_GENAI_USE_VERTEXAI=True