Flex PayGo

‫Flex pay-as-you-go (Flex PayGo) היא אפשרות חסכונית לגישה למודלים של Gemini עבור עומסי עבודה לא קריטיים שיכולים להסתדר עם זמני תגובה ארוכים יותר והגבלת קצב גבוהה יותר. במסלול Flex PayGo מקבלים 50% הנחה בהשוואה למסלול Standard PayGo.

מתי כדאי להשתמש ב-Flex PayGo

‫Flex PayGo הוא פתרון אידיאלי למשימות סינכרוניות, שסובלות השהיה ולא קריטיות, שלא רגישות לזמן. הנה כמה תרחישים לדוגמה:

  • ניתוח אופליין של טקסט, מסמכים, תמונות, אודיו וסרטונים

  • הערכה של איכויות המודל

  • הערות ותיוג של נתונים

  • תרגום מסמכים

  • יצירת קטלוג מוצרים

מודלים ומיקומים נתמכים

מודלים של Gemini שמוצגים בתצוגה מקדימה בנקודת הקצה global בלבד תומכים בשיטת התשלום הגמישה PayGo. ב-Flex PayGo אין תמיכה בנקודות קצה אזוריות או רב-אזוריות.

מגבלת מטען ייעודי (payload) של בקשה

בבקשות Flex PayGo, המגבלה הכוללת של גודל המטען הייעודי (payload) היא 20MB, בבקשות שבהן המטען הייעודי נכלל ישירות בגוף הבקשה. כדי לעבד קבצים גדולים יותר, צריך לציין URI של Cloud Storage בבקשה.

שימוש ב-Flex PayGo

כדי לשלוח בקשות ל-Gemini API באמצעות Flex PayGo, צריך לכלול את הכותרת X-Vertex-AI-LLM-Shared-Request-Type בבקשה. יש שתי דרכים להשתמש ב-Flex PayGo:

  • להשתמש במכסת הקצאת משאבים לפי התפוקה שנקבעה (אם היא זמינה) ואז להשתמש ב-Flex PayGo.

  • שימוש רק ב-Flex PayGo.

שימו לב: בקשות שמשתמשות ב-Flex PayGo צפויות להיות עם זמן אחזור ארוך יותר מאשר ב-Standard PayGo.

אפשר להגדיר את הזמן הקצוב לתפוגה של הבקשה ל-30 דקות לכל היותר.

שימוש ב-Flex PayGo כשברירת המחדל היא הקצאת משאבים לפי התפוקה שנקבעה

כדי לנצל את מכסת הקצאת המשאבים לפי התפוקה שנקבעה הזמינה לפני השימוש ב-Flex PayGo, צריך לכלול את הכותרת X-Vertex-AI-LLM-Shared-Request-Type: flex בבקשות, כמו בדוגמאות הבאות.

Python

התקנה

pip install --upgrade google-genai

מידע נוסף מופיע ב מאמרי העזרה בנושא SDK.

מגדירים משתני סביבה כדי להשתמש ב-Google Gen AI SDK עם 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_ENTERPRISE=True

מאותחלים את לקוח ה-AI הגנרטיבי כדי להשתמש ב-Flex PayGo. אחרי שתבצעו את השלב הזה, לא תצטרכו לבצע שינויים נוספים בקוד כדי ליצור אינטראקציה עם Gemini API באמצעות Flex PayGo באותו לקוח.

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

אחרי שמגדירים את הסביבה, אפשר להשתמש ב-REST כדי לבדוק פרומפט טקסטואלי. הדוגמה הבאה שולחת בקשה לנקודת הקצה של מודל בעל התוכן הדיגיטלי.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: [מזהה הפרויקט](/resource-manager/docs/creating-managing-projects#identifiers). .
  • MODEL_ID: מזהה המודל שרוצים להפעיל עבורו את Flex PayGo. רשימת הדגמים שתומכים ב-Flex PayGo זמינה במאמר גרסאות של דגמים.
  • PROMPT_TEXT: ההנחיות לטקסט שצריך לכלול בהנחיה. ‫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" }
    }
  }'

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "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
  }
}
בדוגמה הזו של כתובת ה-URL, חשוב לשים לב לפרטים הבאים:
  • משתמשים בשיטה generateContent כדי לבקש שהתשובה תוחזר אחרי שהיא נוצרה במלואה. כדי לצמצם את תפיסת זמן האחזור בקרב קהל אנושי, צריך להזרים את התשובה בזמן שהיא נוצרת באמצעות השיטה streamGenerateContent.
  • מזהה המודל הרב-אופני מופיע בסוף כתובת ה-URL לפני השיטה (לדוגמה, gemini-3.5-flash). יכול להיות שהדוגמה הזו תתמוך גם במודלים אחרים.
  • כשמשתמשים בנקודת קצה אזורית של API (לדוגמה, us-central1), האזור מכתובת ה-URL של נקודת הקצה קובע איפה הבקשה תעובד. המערכת מתעלמת מכל מיקום שיוצר התנגשות בנתיב המשאב.

שימוש רק ב-Flex PayGo

כדי להשתמש רק ב-Flex PayGo, צריך לכלול את הכותרות X-Vertex-AI-LLM-Request-Type: shared ו-X-Vertex-AI-LLM-Shared-Request-Type: flex בבקשות, כמו בדוגמאות הבאות.

Python

התקנה

pip install --upgrade google-genai

מידע נוסף מופיע ב מאמרי העזרה בנושא SDK.

מגדירים משתני סביבה כדי להשתמש ב-Google Gen AI SDK עם 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_ENTERPRISE=True

מאותחלים את לקוח ה-AI הגנרטיבי כדי להשתמש ב-Flex PayGo. אחרי שתבצעו את השלב הזה, לא תצטרכו לבצע שינויים נוספים בקוד כדי ליצור אינטראקציה עם Gemini API באמצעות Flex PayGo באותו לקוח.

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

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: [מזהה הפרויקט](/resource-manager/docs/creating-managing-projects#identifiers). .
  • MODEL_ID: מזהה המודל שרוצים להפעיל עבורו את Flex PayGo. רשימת הדגמים שתומכים ב-Flex PayGo זמינה במאמר גרסאות של דגמים.
  • PROMPT_TEXT: ההנחיות לטקסט שצריך לכלול בהנחיה. ‫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" }
    }
  }'

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "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
  }
}
בדוגמה הזו של כתובת ה-URL, חשוב לשים לב לפרטים הבאים:
  • משתמשים בשיטה generateContent כדי לבקש שהתשובה תוחזר אחרי שהיא נוצרה במלואה. כדי לצמצם את תפיסת זמן האחזור בקרב קהל אנושי, צריך להזרים את התשובה בזמן שהיא נוצרת באמצעות השיטה streamGenerateContent.
  • מזהה המודל הרב-אופני מופיע בסוף כתובת ה-URL לפני השיטה (לדוגמה, gemini-3.5-flash). יכול להיות שהדוגמה הזו תתמוך גם במודלים אחרים.
  • כשמשתמשים בנקודת קצה אזורית של API (לדוגמה, us-central1), האזור מכתובת ה-URL של נקודת הקצה קובע איפה הבקשה תעובד. המערכת מתעלמת מכל מיקום שיוצר התנגשות בנתיב המשאב.

אימות השימוש ב-Flex PayGo

כדי לבדוק אם הבקשה השתמשה ב-Flex PayGo, אפשר להסתכל על סוג התנועה בתשובה, כמו בדוגמאות הבאות.

Python

כדי לבדוק אם נעשה שימוש ב-Flex PayGo לבקשה, אפשר להשתמש בשדה traffic_type בתשובה. אם הבקשה שלכם עובדה באמצעות Flex PayGo, השדה traffic_type מוגדר לערך 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

כדי לבדוק אם נעשה שימוש ב-Flex PayGo לבקשה, אפשר להשתמש בשדה trafficType בתשובה. אם הבקשה שלכם עובדה באמצעות Flex PayGo, השדה trafficType מוגדר לערך 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
  }
}

מכסת שימוש נוספת ב-Flex PayGo

בנוסף למכסות הזמינות לבקשות ליצירת תוכן (כולל מכסת הקצאת משאבים לפי התפוקה שנקבעה לתעבורת נתונים גולשת), בקשות שמשתמשות ב-Flex PayGo כפופות למכסה הבאה:

תיאור QPM לכל מודל בסיסי בפרויקט
מכסת בקשות לכל מודל בסיסי בפרויקט שמשתמש ב-Flex PayGo 3000

המאמרים הבאים

Resource

מכסות ומגבלות שקשורות ספציפית ל-Agent Platform.

Resource

מכסות ומגבלות שקשורות ל-Agent Platform, לא כולל מגבלות ספציפיות למוצרים.

סקירה כללית

במאמר הזה מוסבר איך Google Cloud מגבילה את כמות המשאבים שאפשר להשתמש בהם בפרויקט בענן ב-Google Cloud, ואיך המכסות חלות על מגוון סוגי משאבים, כולל חומרה, תוכנה ורכיבי רשת.