„Pay as you go“-Tarif mit Flexibilität (Flex PayGo) ist eine kostengünstige Option für den Zugriff auf Gemini-Modelle für nicht kritische Arbeitslasten, bei denen längere Reaktionszeiten und ein höheres Drosseln toleriert werden können. Mit Flex PayGo erhalten Sie einen Rabatt von 50% im Vergleich zu Standard PayGo.
Wann sollte Flex PayGo verwendet werden?
Flex PayGo ist ideal für synchrone, latenztolerante und nicht kritische Aufgaben, die nicht zeitkritisch sind. Beispiele für Anwendungsfälle:
- Offlineanalyse von Text-, Dokument-, Bild-, Audio- und Videodateien
- Bewertung der Modellqualität
- Datenannotation und ‑labeling
- Dokumentübersetzung
- Produktkatalog erstellen
Unterstützte Modelle und Standorte
Die folgenden Vorschaumodelle von Gemini unterstützen Flex PayGo nur am global-Endpunkt. Regionale oder multiregionale Endpunkte werden von Flex PayGo nicht unterstützt.
Limit für Anfragenutzlast
Für Flex PayGo-Anfragen gilt eine maximale Nutzlastgröße von 20 MB. Bei Nutzlasten über 20 MB geben Sie stattdessen einen Cloud Storage-URI an.
Flex PayGo verwenden
Wenn Sie Anfragen an die Gemini API mit Flex PayGo senden möchten, müssen Sie den Header X-Vertex-AI-LLM-Shared-Request-Type in Ihre Anfrage einfügen. Sie haben zwei Möglichkeiten, Flex PayGo zu nutzen:
- Verwenden Sie das Kontingent für bereitgestellten Durchsatz (falls verfügbar) und dann Flex PayGo.
- Nur Flex PayGo verwenden
Anfragen, für die Flex PayGo verwendet wird, haben eine längere erwartete Latenz als Standard PayGo.
Das Zeitlimit für Anfragen kann auf maximal 30 Minuten festgelegt werden.
Flex PayGo verwenden, wenn PT als Standard festgelegt ist
Wenn Sie verfügbares PT-Kontingent nutzen möchten, bevor Sie Flex PayGo verwenden, fügen Sie den Header X-Vertex-AI-LLM-Shared-Request-Type: flex in Ihre Anfragen ein, wie in den folgenden Beispielen gezeigt.
Python
Installieren
pip install --upgrade google-genai
Weitere Informationen finden Sie in der SDK-Referenzdokumentation.
Umgebungsvariablen für die Verwendung des Gen AI SDK mit Vertex AI festlegen:
# 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
Initialisieren Sie Ihren GenAI-Client für die Verwendung von Flex PayGo. Nach diesem Schritt müssen Sie keine weiteren Anpassungen an Ihrem Code vornehmen, um mit der Gemini API über Flex PayGo auf demselben Client zu interagieren.
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
Nachdem Sie Ihre Umgebung eingerichtet haben, können Sie mit REST einen Text-Prompt testen. Im folgenden Beispiel wird eine Anfrage an den Publisher gesendet Modellendpunkt zu erstellen.
Ersetzen Sie folgende Werte in den Anfragedaten:
PROJECT_ID: Ihre Projekt-ID.MODEL_ID: Die Modell-ID des Modells, für das Sie Flex PayGo initialisieren möchten.PROMPT_TEXT: Die Textanleitung, die in den Prompt eingefügt werden soll. 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" }
}
}'
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{
"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
}
}
- Mit der Methode
generateContentkönnen Sie anfordern, dass die Antwort zurückgegeben wird, nachdem sie vollständig generiert wurde. Um die Wahrnehmung von Latenz für menschliche Zielgruppen zu verringern, streame die Antwort, während sie mithilfe der MethodestreamGenerateContenterzeugt wird. - Die multimodale Modell-ID befindet sich am Ende der URL vor der Methode (z. B.
gemini-2.5-flash). Dieses Beispiel unterstützt möglicherweise auch andere Modelle. - Wenn Sie einen regionalen API-Endpunkt verwenden (z. B.
us-central1), wird die Region aus der Endpunkt-URL verwendet, um zu bestimmen, wo die Anfrage verarbeitet wird. Alle widersprüchlichen Standorte im Ressourcenpfad werden ignoriert.
Nur Flex PayGo verwenden
Wenn Sie nur Flex PayGo verwenden möchten, fügen Sie die Header X-Vertex-AI-LLM-Request-Type: shared und X-Vertex-AI-LLM-Shared-Request-Type: flex in Ihre Anfragen ein, wie in den folgenden Beispielen gezeigt.
Python
Installieren
pip install --upgrade google-genai
Weitere Informationen finden Sie in der SDK-Referenzdokumentation.
Umgebungsvariablen für die Verwendung des Gen AI SDK mit Vertex AI festlegen:
# 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
Initialisieren Sie Ihren GenAI-Client für die Verwendung von Flex PayGo. Nach diesem Schritt müssen Sie keine weiteren Anpassungen an Ihrem Code vornehmen, um mit der Gemini API über Flex PayGo auf demselben Client zu interagieren.
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
Ersetzen Sie folgende Werte in den Anfragedaten:
PROJECT_ID: Ihre Projekt-ID.MODEL_ID: Die Modell-ID des Modells, für das Sie Flex PayGo initialisieren möchten.PROMPT_TEXT: Die Textanleitung, die in den Prompt eingefügt werden soll. 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" }
}
}'
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{
"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
}
}
- Mit der Methode
generateContentkönnen Sie anfordern, dass die Antwort zurückgegeben wird, nachdem sie vollständig generiert wurde. Um die Wahrnehmung von Latenz für menschliche Zielgruppen zu verringern, streame die Antwort, während sie mithilfe der MethodestreamGenerateContenterzeugt wird. - Die multimodale Modell-ID befindet sich am Ende der URL vor der Methode (z. B.
gemini-2.5-flash). Dieses Beispiel unterstützt möglicherweise auch andere Modelle. - Wenn Sie einen regionalen API-Endpunkt verwenden (z. B.
us-central1), wird die Region aus der Endpunkt-URL verwendet, um zu bestimmen, wo die Anfrage verarbeitet wird. Alle widersprüchlichen Standorte im Ressourcenpfad werden ignoriert.
Flex PayGo-Nutzung prüfen
Sie können anhand des Traffictyps in der Antwort prüfen, ob für eine Anfrage Flex PayGo verwendet wurde.
Python
Sie können anhand des Felds traffic_type in der Antwort prüfen, ob Flex PayGo für eine Anfrage verwendet wurde. Wenn Ihre Anfrage mit Flex PayGo verarbeitet wurde, ist das Feld traffic_type auf ON_DEMAND_FLEX festgelegt.
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
Sie können anhand des Felds trafficType in der Antwort prüfen, ob Flex PayGo für eine Anfrage verwendet wurde. Wenn Ihre Anfrage mit Flex PayGo verarbeitet wurde, ist das Feld trafficType auf ON_DEMAND_FLEX festgelegt.
{
"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
}
}Zusätzliches Kontingent für Flex PayGo
Zusätzlich zu den verfügbaren Kontingenten für Anfragen zur Inhaltserstellung (einschließlich des PT-Kontingents für Spillover-Traffic) unterliegen Anfragen, bei denen Flex PayGo verwendet wird, dem folgenden Kontingent:
| Beschreibung | QPM für jedes Basismodell in einem Projekt |
|---|---|
| Kontingent für jedes Basismodell in Projektanfragen mit Flex PayGo | 3.000 |