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 Antwortzeiten und ein höheres Drosseln toleriert werden können. Mit Flex PayGo erhalten Sie 50% Rabatt 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 Modelleigenschaften

  • 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.

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 den bereitgestellten Durchsatz (falls verfügbar) und dann Flex PayGo.

  • Nur Flex PayGo verwenden

Anfragen, bei denen Flex PayGo verwendet wird, haben eine höhere Latenz als Standard PayGo. Das Standardzeitlimit beträgt 20 Minuten. Sie können es mit dem Parameter timeout in Millisekunden überschreiben. Der maximal zulässige Wert beträgt 30 Minuten.

Flex PayGo verwenden, während Provisioned Throughput als Standard festgelegt ist

Wenn Sie das verfügbare Provisioned Throughput-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. Nachdem Sie diesen Schritt ausgeführt haben, 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. Eine Liste der Modelle, die Flex PayGo unterstützen, finden Sie unter Modellversionen.
  • 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" \  # Timeout in milliseconds
  -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
  }
}
Beachten Sie Folgendes in der URL für dieses Beispiel:
  • Mit der Methode generateContent kö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 Methode streamGenerateContent erzeugt wird.
  • Die multimodale Modell-ID befindet sich am Ende der URL vor der Methode (z. B. gemini-2.0-flash). Dieses Beispiel unterstützt möglicherweise auch andere Modelle.

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. Nachdem Sie diesen Schritt ausgeführt haben, 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. Eine Liste der Modelle, die Flex PayGo unterstützen, finden Sie unter Modellversionen.
  • 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" \  # Timeout in milliseconds
  -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
  }
}
Beachten Sie Folgendes in der URL für dieses Beispiel:
  • Mit der Methode generateContent kö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 Methode streamGenerateContent erzeugt wird.
  • Die multimodale Modell-ID befindet sich am Ende der URL vor der Methode (z. B. gemini-2.0-flash). Dieses Beispiel unterstützt möglicherweise auch andere Modelle.

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 im Feld 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 im Feld 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 Kontingents für bereitgestellten Durchsatz 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

Nächste Schritte