Flex PayGo

„Flex Pay as you go“ (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 höheres Throttling 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. Flex PayGo unterstützt keine regionalen oder multiregionalen Endpunkte.

Limit für Anfragenutzlast

Für Flex PayGo-Anfragen gilt eine maximale Nutzlastgröße von 20 MB. Für Nutzlasten, die 20 MB überschreiten, 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 können Flex PayGo auf zwei Arten verwenden:

  • 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 Google 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_ENTERPRISE=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

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
  }
}

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 Google 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_ENTERPRISE=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
  }
}

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 prüfen, ob Flex PayGo für eine Anfrage verwendet wurde, indem Sie das Feld traffic_type in der Antwort untersuchen. 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 prüfen, ob Flex PayGo für eine Anfrage verwendet wurde, indem Sie das Feld trafficType in der Antwort untersuchen. 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