Le paiement à l'usage Flex est une option économique pour accéder aux modèles Gemini pour les charges de travail non critiques qui peuvent tolérer des temps de réponse plus longs et une limitation plus élevée. Le paiement à l'usage Flex offre une remise de 50 % par rapport au paiement à l'usage standard.
Quand utiliser le paiement à l'usage Flex ?
Le paiement à l'usage Flex est idéal pour les tâches synchrones, tolérantes à la latence et non critiques qui ne sont pas urgentes. Voici quelques exemples de cas d'utilisation :
- Analyse hors connexion de fichiers texte, de documents, d'images, audio et vidéo
- Évaluation de la qualité du modèle
- Annotation et libellisation des données
- Traduction de documents
- Création d'un catalogue de produits
Modèles et emplacements compatibles
Les modèles Gemini en aperçu
suivants sont compatibles avec le paiement à l'usage Flex uniquement dans le point de terminaison global. Le paiement à l'usage Flex n'est pas compatible avec les points de terminaison régionaux ni multirégionaux.
Limite de charge utile des requêtes
Les requêtes de paiement à l'usage Flex ont une limite de taille de charge utile totale de 20 Mo. Pour les charges utiles dépassant 20 Mo, fournissez plutôt un URI Cloud Storage.
Utiliser le paiement à l'usage Flex
Pour envoyer des requêtes à l'API Gemini à l'aide du paiement à l'usage Flex, vous devez inclure l'en-tête X-Vertex-AI-LLM-Shared-Request-Type dans votre requête. Vous pouvez utiliser le paiement à l'usage Flex de deux manières :
- Utilisez le quota de débit provisionné (si disponible), puis utilisez le paiement à l'usage Flex.
- Utilisez uniquement le paiement à l'usage Flex.
Les requêtes qui utilisent le paiement à l'usage Flex ont une latence prévue plus longue que le paiement à l'usage standard.
Vous pouvez définir le délai avant expiration de la requête sur un maximum de 30 minutes.
Utiliser le paiement à l'usage Flex tout en utilisant le débit provisionné par défaut
Pour utiliser tout quota de débit provisionné disponible avant d'utiliser le paiement à l'usage Flex, incluez l'en-tête X-Vertex-AI-LLM-Shared-Request-Type: flex dans vos requêtes, comme illustré dans les exemples suivants.
Python
Installer
pip install --upgrade google-genai
Pour en savoir plus, consultez la documentation de référence du SDK.
Définissez des variables d'environnement pour utiliser le SDK Gen AI avec 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
Initialisez votre client GenAI pour utiliser le paiement à l'usage Flex. Une fois cette étape effectuée, vous n'aurez plus besoin d'apporter d'autres modifications à votre code pour interagir avec l'API Gemini à l'aide du paiement à l'usage Flex sur le même client.
from google import genai from google.genai.types import HttpOptions client = genai.Client( vertexai=True, project='your_project_id', location='global', http_options=HttpOptions( api_version="v1", headers={ "X-Vertex-AI-LLM-Shared-Request-Type": "flex" }, # timeout = 600000 # Timeout in milliseconds ) )
REST
Une fois que vous avez configuré votre environnement, vous pouvez utiliser REST pour tester un prompt textuel. L'exemple suivant envoie une requête au point de terminaison du modèle de l'éditeur.
Avant d'utiliser les données de requête, effectuez les remplacements suivants.
PROJECT_ID: Votre ID de projet.MODEL_ID: ID du modèle pour lequel vous souhaitez initialiser le paiement à l'usage Flex.PROMPT_TEXT: instructions textuelles à inclure dans le prompt. JSON.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-H "X-Server-Timeout: 600" \
-H "X-Vertex-AI-LLM-Shared-Request-Type: flex" \
"https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/MODEL_ID:generateContent" -d \
$'{
"contents": {
"role": "model",
"parts": { "text": "PROMPT_TEXT" }
}
}'
Vous devriez recevoir une réponse JSON semblable à la suivante.
{
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"text": "Response to sample request."
}
]
},
"finishReason": "STOP"
}
],
"usageMetadata": {
"promptTokenCount": 3,
"candidatesTokenCount": 900,
"totalTokenCount": 1957,
"trafficType": "ON_DEMAND_FLEX",
"thoughtsTokenCount": 1054
}
}
- Utilisez la
generateContentméthode pour demander que la réponse soit renvoyée une fois qu'elle a été entièrement générée. Pour réduire la perception de la latence auprès d'un public humain, affichez la réponse progressivement à mesure qu'elle est générée à l'aide de la méthodestreamGenerateContent. - L'ID du modèle multimodal se trouve à la fin de l'URL avant la méthode
(par exemple,
gemini-2.5-flash). Cet exemple peut également s'appliquer à d'autres modèles. - Lorsque vous utilisez un point de terminaison d'API régional (par exemple,
us-central1), la région de l'URL du point de terminaison détermine l'emplacement où la requête est traitée. Tout emplacement en conflit dans le chemin d'accès à la ressource est ignoré.
Utiliser uniquement le paiement à l'usage Flex
Pour utiliser uniquement le paiement à l'usage Flex, incluez les en-têtes X-Vertex-AI-LLM-Request-Type: shared et X-Vertex-AI-LLM-Shared-Request-Type: flex dans vos requêtes, comme illustré dans les exemples suivants.
Python
Installer
pip install --upgrade google-genai
Pour en savoir plus, consultez la documentation de référence du SDK.
Définissez des variables d'environnement pour utiliser le SDK Gen AI avec 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
Initialisez votre client GenAI pour utiliser le paiement à l'usage Flex. Une fois cette étape effectuée, vous n'aurez plus besoin d'apporter d'autres modifications à votre code pour interagir avec l'API Gemini à l'aide du paiement à l'usage Flex sur le même client.
from google import genai from google.genai.types import HttpOptions client = genai.Client( vertexai=True, project='your_project_id', location='global', http_options=HttpOptions( api_version="v1", headers={ "X-Vertex-AI-LLM-Request-Type": "shared", "X-Vertex-AI-LLM-Shared-Request-Type": "flex" }, # timeout = 600000 # Timeout in milliseconds ) )
REST
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
PROJECT_ID: Votre ID de projet.MODEL_ID: ID du modèle pour lequel vous souhaitez initialiser le paiement à l'usage Flex.PROMPT_TEXT: instructions textuelles à inclure dans le prompt. JSON.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-H "X-Server-Timeout: 600" \
-H "X-Vertex-AI-LLM-Request-Type: shared" \
-H "X-Vertex-AI-LLM-Shared-Request-Type: flex" \
"https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/MODEL_ID:generateContent" -d \
$'{
"contents": {
"role": "model",
"parts": { "text": "PROMPT_TEXT" }
}
}'
Vous devriez recevoir une réponse JSON semblable à la suivante.
{
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"text": "Response to sample request."
}
]
},
"finishReason": "STOP"
}
],
"usageMetadata": {
"promptTokenCount": 3,
"candidatesTokenCount": 900,
"totalTokenCount": 1957,
"trafficType": "ON_DEMAND_FLEX",
"thoughtsTokenCount": 1054
}
}
- Utilisez la
generateContentméthode pour demander que la réponse soit renvoyée une fois qu'elle a été entièrement générée. Pour réduire la perception de la latence auprès d'un public humain, affichez la réponse progressivement à mesure qu'elle est générée à l'aide de la méthodestreamGenerateContent. - L'ID du modèle multimodal se trouve à la fin de l'URL avant la méthode
(par exemple,
gemini-2.5-flash). Cet exemple peut également s'appliquer à d'autres modèles. - Lorsque vous utilisez un point de terminaison d'API régional (par exemple,
us-central1), la région de l'URL du point de terminaison détermine l'emplacement où la requête est traitée. Tout emplacement en conflit dans le chemin d'accès à la ressource est ignoré.
Vérifier l'utilisation du paiement à l'usage Flex
Vous pouvez vérifier si une requête a utilisé le paiement à l'usage Flex à partir du type de trafic dans la réponse, comme illustré dans les exemples suivants.
Python
Vous pouvez vérifier si le paiement à l'usage Flex a été utilisé pour une requête à partir du champ traffic_type dans la réponse. Si votre requête a été traitée à l'aide du paiement à l'usage Flex, le champ traffic_type est défini sur ON_DEMAND_FLEX.
sdk_http_response=HttpResponse( headers=) candidates=[Candidate( avg_logprobs=-0.539712212302468, content=Content( parts=[ Part( text="""Response to sample request. """ ), ], role='model' ), finish_reason=<FinishReason.STOP: 'STOP'> )] create_time=datetime.datetime(2025, 12, 3, 20, 32, 55, 916498, tzinfo=TzInfo(0)) model_version='gemini-2.5-flash' prompt_feedback=None response_id='response_id' usage_metadata=GenerateContentResponseUsageMetadata( candidates_token_count=1408, candidates_tokens_details=[ ModalityTokenCount( modality=<MediaModality.TEXT: 'TEXT'>, token_count=1408 ), ], prompt_token_count=5, prompt_tokens_details=[ ModalityTokenCount( modality=<MediaModality.TEXT: 'TEXT'>, token_count=5 ), ], thoughts_token_count=1356, total_token_count=2769, traffic_type=<TrafficType.ON_DEMAND_FLEX: 'ON_DEMAND_FLEX'> ) automatic_function_calling_history=[] parsed=None
REST
Vous pouvez vérifier si le paiement à l'usage Flex a été utilisé pour une requête à partir du champ trafficType dans la réponse. Si votre requête a été traitée à l'aide du paiement à l'usage Flex, le champ trafficType est défini sur ON_DEMAND_FLEX.
{
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"text": "Response to sample request."
}
]
},
"finishReason": "STOP"
}
],
"usageMetadata": {
"promptTokenCount": 3,
"candidatesTokenCount": 900,
"totalTokenCount": 1957,
"trafficType": "ON_DEMAND_FLEX",
"thoughtsTokenCount": 1054
}
}Quota supplémentaire pour le paiement à l'usage Flex
En plus des quotas disponibles pour les requêtes de génération de contenu (y compris le quota de débit provisionné pour le trafic de débordement), les requêtes utilisant le paiement à l'usage Flex sont soumises au quota suivant :
| Description | RPM pour chaque modèle de base dans un projet |
|---|---|
| Quota pour chaque modèle de base dans les requêtes de projet utilisant le paiement à l'usage Flex | 3000 |