Flex PayGo היא אפשרות חסכונית לגישה למודלים של Gemini בשביל עומסי עבודה לא קריטיים, שיכולים להתמודד עם זמני תגובה ארוכים יותר ועם ויסות נתונים (throttling) גבוה יותר. ב-Flex PayGo מקבלים 50% הנחה בהשוואה ל-Standard PayGo.
מתי כדאי להשתמש ב-Flex PayGo
Flex PayGo מתאים למשימות סינכרוניות, לא קריטיות, שלא רגישות לזמן או לעיכובים. הנה כמה תרחישים לדוגמה:
ניתוח אופליין של טקסט, מסמכים, תמונות, קובצי אודיו וקובצי וידאו
הערכת איכות המודלים
הוספת הערות ותיוג של נתונים
תרגום מסמכים
יצירת קטלוג מוצרים
מודלים ומיקומים נתמכים
המודלים הבאים של Gemini תומכים ב-Flex PayGo רק בנקודת הקצה global.
ב-Flex PayGo אין תמיכה בנקודות קצה אזוריות או במספר אזורים.
gemini-3.8-flash-cybergemini-3.8-flashgemini-3.7-flashgemini-3.6-flashgemini-3.5-flash-litegemini-3.1-flash-lite-imagegemini-3-pro-imagegemini-3.1-flash-imagegemini-3.5-flashgemini-3.1-flash-litegemini-3.1-pro-previewgemini-3-flash-preview
מגבלת המטען הייעודי (payload) של הבקשה
בבקשות Flex PayGo יש מגבלה של 20MB על הגודל הכולל של המטען הייעודי (payload) בבקשות שבהן המטען הייעודי נכלל ישירות בגוף הבקשה. כדי לעבד קבצים גדולים יותר, צריך לציין בבקשה 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: מזהה הפרויקט. . -
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
}
}
- משתמשים ב-method
generateContentכדי לבקש שהתשובה תוחזר אחרי שהיא נוצרת במלואה. כדי להפחית את תפיסת זמן האחזור בקרב קהל אנושי, אפשר להעביר בסטרימינג את התשובה בזמן שהיא נוצרת באמצעות השיטהstreamGenerateContent. - המזהה של המודל המולטי-מודאלי נמצא בסוף כתובת ה-URL לפני ה-method (לדוגמה,
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: מזהה הפרויקט. . -
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
}
}
- משתמשים ב-method
generateContentכדי לבקש שהתשובה תוחזר אחרי שהיא נוצרת במלואה. כדי להפחית את תפיסת זמן האחזור בקרב קהל אנושי, אפשר להעביר בסטרימינג את התשובה בזמן שהיא נוצרת באמצעות השיטהstreamGenerateContent. - המזהה של המודל המולטי-מודאלי נמצא בסוף כתובת ה-URL לפני ה-method (לדוגמה,
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 |
המאמרים הבאים
מכסות ומגבלות ב-Agent Platform
מכסות ומגבלות שקשורות ל-Agent Platform, לא כולל מגבלות ספציפיות למוצרים.
מכסות ב-Google Cloud
מידע ולמידה על איך Google Cloud מגבילה את כמות המשאבים שאפשר להשתמש בהם בפרויקט בענן ב-Google Cloud, ואיך המכסות חלות על מגוון רחב של סוגי משאבים, כולל רכיבי חומרה, תוכנה ורשתות.