Cette page vous explique comment obtenir le nombre de jetons et le nombre de caractères facturables pour une requête à l'aide de l'API countTokens
.
Modèles compatibles
Les modèles multimodaux suivants permettent d'obtenir une estimation du nombre de jetons de requête :
gemini-1.5-flash-002
gemini-1.5-pro-002
gemini-1.0-pro-002
gemini-1.0-pro-vision-001
Pour en savoir plus sur les versions de modèle, consultez la page Versions et cycle de vie des modèles Gemini.
Obtenir le nombre de jetons pour une requête
Vous pouvez obtenir le nombre de jetons et le nombre de caractères facturables d'une requête à l'aide de l'API Vertex AI.
Python
Pour savoir comment installer ou mettre à jour le SDK Vertex AI pour Python, consultez la section Installer le SDK Vertex AI pour Python. Pour en savoir plus, consultez la documentation de référence de l'API Python.
Java
Avant d'essayer cet exemple, suivez les instructions de configuration pour Java décrites dans le guide de démarrage rapide de Vertex AI à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI Java.
Pour vous authentifier auprès de Vertex AI, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Avant d'essayer cet exemple, suivez les instructions de configuration pour Node.js décrites dans le guide de démarrage rapide de Vertex AI à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI Node.js.
Pour vous authentifier auprès de Vertex AI, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Go
Avant d'essayer cet exemple, suivez les instructions de configuration pour Go décrites dans le guide de démarrage rapide de Vertex AI à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Vertex AI Go.
Pour vous authentifier auprès de Vertex AI, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
REST
Pour obtenir le nombre de jetons et le nombre de caractères facturables d'une requête à l'aide de l'API Vertex AI, envoyez une requête POST au point de terminaison du modèle de diffuseur.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- LOCATION : région dans laquelle traiter la requête. Les options disponibles sont les suivantes :
Cliquer pour développer une liste partielle des régions disponibles
us-central1
us-west4
northamerica-northeast1
us-east4
us-west1
asia-northeast3
asia-southeast1
asia-northeast1
- PROJECT_ID : l'ID de votre projet.
- MODEL_ID : ID du modèle multimodal que vous souhaitez utiliser.
- ROLE : rôle dans une conversation associée au contenu. La spécification d'un rôle est requise, même dans les cas d'utilisation à un seul tour.
Les valeurs acceptées incluent les suivantes :
USER
: spécifie le contenu que vous envoyez.
- TEXT : instructions textuelles à inclure dans la requête.
- NAME : nom de la fonction à appeler.
- DESCRIPTION : description et objectif de la fonction.
Méthode HTTP et URL :
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:countTokens
Corps JSON de la requête :
{ "contents": [{ "role": "ROLE", "parts": [{ "text": "TEXT" }] }], "system_instruction": { "role": "ROLE", "parts": [{ "text": "TEXT" }] } "tools": [{ "function_declarations": [ { "name": "NAME", "description": "DESCRIPTION", "parameters": { "type": "OBJECT", "properties": { "location": { "type": "TYPE", "description": "DESCRIPTION" } }, "required": [ "location" ] } } ] }] }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
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
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$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
Vous devriez recevoir une réponse JSON semblable à la suivante.
Console
Pour obtenir le nombre de jetons pour une requête à l'aide de Vertex AI Studio dans la console Google Cloud, procédez comme suit:
- Dans la section "Vertex AI" de la console Google Cloud, accédez à la page Vertex AI Studio.
- Cliquez sur Ouvrir Freeform ou Ouvrir Chat.
- Le nombre de jetons est calculé et affiché au fur et à mesure que vous saisissez du texte dans le volet Requête. Il inclut le nombre de jetons dans tous les fichiers d'entrée.
- Pour en savoir plus, cliquez sur <nombre> jetons afin d'ouvrir le tokenizer de la requête.
- Pour afficher les jetons dans la requête de texte, qui sont surlignés avec différentes couleurs pour marquer la limite de chaque ID de jeton, cliquez sur ID de jeton en texte. Les jetons multimédias ne sont pas acceptés.
- Pour afficher les ID de jeton, cliquez sur ID de jeton.
Pour fermer le volet de l'outil de tokenisation, cliquez sur X ou en dehors du volet.
Exemple de commande curl pour du texte avec une image ou une vidéo :
MODEL_ID="gemini-1.0-pro-vision"
PROJECT_ID="my-project"
TEXT="Provide a summary with about two sentences for the following article."
REGION="us-central1"
curl \
-X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://${REGION}-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/${REGION}/publishers/google/models/${MODEL_ID}:countTokens -d \
$'{
"contents": [{
"role": "user",
"parts": [
{
"file_data": {
"file_uri": "gs://cloud-samples-data/generative-ai/video/pixel8.mp4",
"mime_type": "video/mp4"
}
},
{
"text": "'"$TEXT"'"
}]
}]
}'
Exemple de commande curl pour le texte uniquement :
MODEL_ID="gemini-1.0-pro-vision"
PROJECT_ID="my-project"
TEXT="Provide a summary with about two sentences for the following article."
REGION="us-central1"
curl \
-X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://${REGION}-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/${REGION}/publishers/google/models/${MODEL_ID}:countTokens -d \
$'{
"contents": [{
"role": "user",
"parts": [{
"text": "'"$TEXT"'"
}]
}]
}'
Tarifs et quotas
L'utilisation de l'API CountTokens
n'implique aucuns frais ni quotas. Le quota maximal pour l'API CountTokens
est de 3 000 requêtes par minute.
Étapes suivantes
- Découvrez comment tester les requêtes de chat.
- Découvrez comment tester les requêtes de texte.