A API CountTokens calcula o número de tokens de entrada antes de enviar um pedido à API Gemini.
Use a API CountTokens para evitar que os pedidos excedam a janela de contexto do modelo e estime os potenciais custos com base nos carateres ou tokens faturáveis.
A API CountTokens pode usar o mesmo parâmetro contents que os pedidos de inferência da API Gemini.
Modelos suportados
- Gemini 3 Pro Modelo de pré-visualização
- Gemini 3 Pro Image Modelo de pré-visualização
- Gemini 2.5 Pro
- Gemini 2.5 Flash Modelo de pré-visualização
- Gemini 2.5 Flash-Lite Modelo de pré-visualização
- Gemini 2.5 Flash Image
- Gemini 2.5 Flash
- Gemini 2.5 Flash-Lite
- Gemini 2.0 Flash com geração de imagens Modelo de pré-visualização
- Gemini 2.0 Flash
- Gemini 2.0 Flash-Lite
Lista de parâmetros
Esta classe é constituída por duas propriedades principais: role e parts. A propriedade role
denota o indivíduo que produz o conteúdo, enquanto a propriedade parts
contém vários elementos, cada um representando um segmento de dados numa mensagem.
| Parâmetros | |
|---|---|
|
Opcional: A identidade da entidade que cria a mensagem. Defina a string para uma das seguintes opções:
O valor Para conversas que não envolvem várias interações, este campo pode ser deixado em branco ou não definido. |
|
Uma lista de partes ordenadas que compõem uma única mensagem. As diferentes partes podem ter diferentes tipos MIME da IANA. |
Part
Um tipo de dados que contém conteúdo multimédia que faz parte de uma mensagem Content multipartes.
| Parâmetros | |
|---|---|
|
Opcional: Um comando de texto ou um fragmento do código. |
|
Opcional: Dados inline em bytes não processados. |
|
Opcional: Dados armazenados num ficheiro. |
Blob
Blob de conteúdo. Se possível, envie isto como texto em vez de bytes não processados.
| Parâmetros | |
|---|---|
|
Tipo MIME IANA dos dados. |
|
Bytes não processados. |
FileData
Dados baseados em URI.
| Parâmetros | |
|---|---|
|
Tipo MIME IANA dos dados. |
|
O URI do Cloud Storage para o ficheiro que armazena os dados. |
system_instruction
Este campo destina-se a system_instructions fornecidos pelo utilizador. É igual ao contents, mas com um apoio técnico limitado dos tipos de conteúdo.
| Parâmetros | |
|---|---|
|
Tipo MIME IANA dos dados. Este campo é ignorado internamente. |
|
Apenas texto. Instruções que os utilizadores querem transmitir ao modelo. |
FunctionDeclaration
Uma representação estruturada de uma declaração de função, conforme definido pela especificação OpenAPI 3.0, que representa uma função para a qual o modelo pode gerar entradas JSON.
| Parâmetros | |
|---|---|
|
O nome da função a chamar. |
|
Opcional: Descrição e finalidade da função. |
|
Opcional: Descreve os parâmetros da função no formato de objeto de esquema JSON OpenAPI: especificação OpenAPI 3.0. |
|
Opcional: Descreve a saída da função no formato de objeto de esquema JSON OpenAPI: especificação OpenAPI 3.0. |
Exemplos
Obtenha a contagem de tokens a partir de um comando de texto
Este exemplo contabiliza os tokens de um único comando de texto:
REST
Para obter a contagem de tokens e o número de carateres faturáveis de um comando através da API Vertex AI, envie um pedidoPOST para o ponto final do modelo do publicador.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- LOCATION: a região para processar o pedido. As opções
disponíveis incluem o seguinte:
Clique para expandir uma lista parcial das regiões disponíveis
us-central1us-west4northamerica-northeast1us-east4us-west1asia-northeast3asia-southeast1asia-northeast1
- PROJECT_ID: o seu ID do projeto.
- MODEL_ID: o ID do modelo multimodal que quer usar.
- ROLE:
A função numa conversa associada ao conteúdo. É necessário especificar uma função, mesmo em exemplos de utilização de uma única interação.
Os valores aceitáveis incluem o seguinte:
USER: especifica o conteúdo enviado por si.
- TEXT: As instruções de texto a incluir no comando.
Método HTTP e URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:countTokens
Corpo JSON do pedido:
{
"contents": [{
"role": "ROLE",
"parts": [{
"text": "TEXT"
}]
}]
}
Para enviar o seu pedido, escolha uma destas opções:
curl
Guarde o corpo do pedido num ficheiro com o nome request.json,
e execute o seguinte 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
Guarde o corpo do pedido num ficheiro com o nome request.json,
e execute o seguinte 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
Deve receber uma resposta JSON semelhante à seguinte.
Python
Instalação
pip install --upgrade google-genai
Para saber mais, consulte a documentação de referência do SDK.
Defina variáveis de ambiente para usar o SDK de IA gen com o 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
Saiba como instalar ou atualizar o Go.
Para saber mais, consulte a documentação de referência do SDK.
Defina variáveis de ambiente para usar o SDK de IA gen com o 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
Instalação
npm install @google/genai
Para saber mais, consulte a documentação de referência do SDK.
Defina variáveis de ambiente para usar o SDK de IA gen com o 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
Saiba como instalar ou atualizar o Java.
Para saber mais, consulte a documentação de referência do SDK.
Defina variáveis de ambiente para usar o SDK de IA gen com o 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
Obtenha a contagem de tokens a partir do comando de conteúdo multimédia
Este exemplo contabiliza os tokens de um comando que usa vários tipos de suportes.
REST
Para obter a contagem de tokens e o número de carateres faturáveis de um comando através da API Vertex AI, envie um pedidoPOST para o ponto final do modelo do publicador.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- LOCATION: a região para processar o pedido. As opções
disponíveis incluem o seguinte:
Clique para expandir uma lista parcial de regiões disponíveis
us-central1us-west4northamerica-northeast1us-east4us-west1asia-northeast3asia-southeast1asia-northeast1
- PROJECT_ID: .
- MODEL_ID: o ID do modelo multimodal que quer usar.
- ROLE:
A função numa conversa associada ao conteúdo. É necessário especificar uma função, mesmo em exemplos de utilização de uma única interação.
Os valores aceitáveis incluem o seguinte:
USER: especifica o conteúdo enviado por si.
- TEXT: As instruções de texto a incluir no comando.
- FILE_URI:
O URI ou o URL do ficheiro a incluir no comando. Os valores aceitáveis incluem o seguinte:
- URI do contentor do Cloud Storage: o objeto tem de ser legível publicamente ou residir no mesmo projeto Google Cloud que está a enviar o pedido. Para
gemini-2.0-flashegemini-2.0-flash-lite, o limite de tamanho é de 2 GB. - URL HTTP: o URL do ficheiro tem de ser legível publicamente. Pode especificar um ficheiro de vídeo, um ficheiro de áudio e até 10 ficheiros de imagem por pedido. Os ficheiros de áudio, os ficheiros de vídeo e os documentos não podem exceder os 15 MB.
- URL do vídeo do YouTube: o vídeo do YouTube tem de ser propriedade da conta que usou para iniciar sessão na Google Cloud consola ou ser público. Apenas é suportado um URL de vídeo do YouTube por pedido.
Quando especifica um
fileURI, também tem de especificar o tipo de suporte (mimeType) do ficheiro. Se o VPC Service Controls estiver ativado, a especificação de um URL de ficheiro multimédia parafileURInão é suportada. - URI do contentor do Cloud Storage: o objeto tem de ser legível publicamente ou residir no mesmo projeto Google Cloud que está a enviar o pedido. Para
- MIME_TYPE:
o tipo de suporte do ficheiro especificado nos campos
dataoufileUriOs valores aceitáveis incluem o seguinte:Clique para expandir os tipos MIME
application/pdfaudio/mpegaudio/mp3audio/wavimage/pngimage/jpegimage/webptext/plainvideo/movvideo/mpegvideo/mp4video/mpgvideo/avivideo/wmvvideo/mpegpsvideo/flv
Método HTTP e URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:countTokens
Corpo JSON do pedido:
{
"contents": [{
"role": "ROLE",
"parts": [
{
"file_data": {
"file_uri": "FILE_URI",
"mime_type": "MIME_TYPE"
}
},
{
"text": "TEXT
}
]
}]
}
Para enviar o seu pedido, escolha uma destas opções:
curl
Guarde o corpo do pedido num ficheiro com o nome request.json,
e execute o seguinte 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
Guarde o corpo do pedido num ficheiro com o nome request.json,
e execute o seguinte 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
Deve receber uma resposta JSON semelhante à seguinte.
Python
Instalação
pip install --upgrade google-genai
Para saber mais, consulte a documentação de referência do SDK.
Defina variáveis de ambiente para usar o SDK de IA gen com o 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
Saiba como instalar ou atualizar o Go.
Para saber mais, consulte a documentação de referência do SDK.
Defina variáveis de ambiente para usar o SDK de IA gen com o 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
Instalação
npm install @google/genai
Para saber mais, consulte a documentação de referência do SDK.
Defina variáveis de ambiente para usar o SDK de IA gen com o 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
Saiba como instalar ou atualizar o Java.
Para saber mais, consulte a documentação de referência do SDK.
Defina variáveis de ambiente para usar o SDK de IA gen com o 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
O que se segue?
- Saiba mais sobre a API Gemini.