תשלום לפי שימוש בעדיפות גבוהה

תשלום לפי שימוש עם עדיפות (Priority PayGo) הוא אפשרות צריכה שמספקת ביצועים עקביים יותר מאשר תשלום לפי שימוש רגיל (Standard PayGo), בלי ההתחייבות מראש של הקצאת משאבים לפי התפוקה שנקבעה.

כשמשתמשים ב-Priority PayGo, החיוב הוא לפי השימוש בטוקנים, בתעריף גבוה יותר מאשר ב-Standard PayGo. למידע על תמחור, אפשר לעיין בדף התמחור של Vertex AI.

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

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

  • עוזרים וירטואליים שפונים ללקוחות
  • תהליכי עבודה מבוססי-סוכן ואינטראקציות בין סוכנים
  • סימולציות מחקר

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

המודלים הבאים תומכים בשיטת התשלום PayGo בעדיפות רק בנקודת הקצה global. התכונה 'תשלום לפי שימוש עם עדיפות' לא תומכת בנקודות קצה אזוריות או רב-אזוריות.

שימוש ב-Priority PayGo

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

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

  • אפשר להשתמש רק ב-Priority PayGo.

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

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

Python

התקנה

pip install --upgrade google-genai

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

מגדירים משתני סביבה כדי להשתמש ב-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_VERTEXAI=True

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

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": "priority"
      },
  )
)

REST

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

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

  • PROJECT_ID: מזהה הפרויקט.
  • MODEL_ID: מזהה המודל של המודל שרוצים להפעיל עבורו את התשלום לפי שימוש עם עדיפות. רשימת הדגמים שתומכים בתשלום לפי שימוש עם עדיפות זמינה במאמר גרסאות של מודלים.
  • PROMPT_TEXT: הוראות הטקסט שצריך לכלול בהנחיה. ‫JSON.
curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json; charset=utf-8" \
  -H "X-Vertex-AI-LLM-Shared-Request-Type: priority" \
  "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_PRIORITY",
    "thoughtsTokenCount": 1054
  }
}
  • משתמשים בשיטה generateContent כדי לבקש שהתשובה תוחזר אחרי שהיא נוצרה במלואה. כדי לצמצם את תפיסת זמן האחזור בקרב קהל אנושי, צריך להזרים את התשובה בזמן שהיא נוצרת באמצעות השיטה streamGenerateContent.
  • מזהה המודל הרב-אופני מופיע בסוף כתובת ה-URL לפני השיטה (לדוגמה, gemini-2.0-flash). יכול להיות שהדוגמה הזו תתמוך גם במודלים אחרים.

שימוש רק ב-Priority PayGo

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

Python

התקנה

pip install --upgrade google-genai

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

מגדירים משתני סביבה כדי להשתמש ב-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_VERTEXAI=True

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

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": "priority"
      },
  )
)

REST

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

  • PROJECT_ID: מזהה הפרויקט.
  • MODEL_ID: מזהה המודל של המודל שרוצים להפעיל עבורו את התשלום לפי שימוש עם עדיפות. רשימת הדגמים שתומכים בתשלום לפי שימוש עם עדיפות זמינה במאמר גרסאות של מודלים.
  • PROMPT_TEXT: הוראות הטקסט שצריך לכלול בהנחיה. ‫JSON.
curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json; charset=utf-8" \
  -H "X-Vertex-AI-LLM-Request-Type: shared" \
  -H "X-Vertex-AI-LLM-Shared-Request-Type: priority" \
  "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_PRIORITY",
    "thoughtsTokenCount": 1054
  }
}
  • משתמשים בשיטה generateContent כדי לבקש שהתשובה תוחזר אחרי שהיא נוצרה במלואה. כדי לצמצם את תפיסת זמן האחזור בקרב קהל אנושי, צריך להזרים את התשובה בזמן שהיא נוצרת באמצעות השיטה streamGenerateContent.
  • מזהה המודל הרב-אופני מופיע בסוף כתובת ה-URL לפני השיטה (לדוגמה, gemini-2.0-flash). יכול להיות שהדוגמה הזו תתמוך גם במודלים אחרים.

אימות השימוש ב-PayGo בעדיפות גבוהה

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

Python

אפשר לבדוק אם נעשה שימוש ב-Priority PayGo לבקשה מהשדה traffic_type בתשובה. אם הבקשה שלכם עובדה באמצעות תשלום לפי שימוש עם עדיפות, הערך של השדה traffic_type הוא ON_DEMAND_PRIORITY.

sdk_http_response=HttpResponse(
  headers=
) candidates=[Candidate(
  avg_logprobs=-0.539712212302468,
  content=Content(
    parts=[
      Part(
        text="""Response to sample request.
        """
      ),
    ],
    role='model'
  ),
  finish_reason=nishReason.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=ty.TEXT: 'TEXT'>,
      token_count=1408
    ),
  ],
  prompt_token_count=5,
  prompt_tokens_details=[
    ModalityTokenCount(
      modality=ty.TEXT: 'TEXT'>,
      token_count=5
    ),
  ],
  thoughts_token_count=1356,
  total_token_count=2769,
  traffic_type=fficType.ON_DEMAND_PRIORITY: 'ON_DEMAND_PRIORITY'>
) automatic_function_calling_history=[] parsed=None

REST

אפשר לבדוק אם נעשה שימוש ב-Priority PayGo לבקשה מהשדה trafficType בתשובה. אם הבקשה שלכם עובדה באמצעות תשלום לפי שימוש עם עדיפות, הערך של השדה trafficType הוא ON_DEMAND_PRIORITY.

{
  "candidates": [
    {
      "content": {
        "role": "model",
        "parts": [
          {
            "text": "Response to sample request."
          }
        ]
      },
      "finishReason": "STOP"
    }
  ],
  "usageMetadata": {
    "promptTokenCount": 3,
    "candidatesTokenCount": 900,
    "totalTokenCount": 1957,
    "trafficType": "ON_DEMAND_PRIORITY",
    "thoughtsTokenCount": 1054
  }
}

מגבלות על הגדלת נפח התנועה

ב-Priority PayGo, מגבלות ההגדלה מוגדרות ברמת הארגון. הגבלות על תקופת ההרצה עוזרות לספק ביצועים צפויים ועקביים. המגבלה ההתחלתית תלויה במודל, באופן הבא:

  • Gemini Flash ו-Flash-Lite: 4 מיליון טוקנים בדקה.
  • מודלים של Gemini Pro: מיליון טוקנים לדקה.

המגבלה על העלייה ההדרגתית גדלה ב-50% לכל 10 דקות של שימוש רצוף.

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

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

אפשר לבדוק אם הבקשה שודרגה מהתשובה. בבקשות ששודרגו לאחור לשיטת התשלום הרגילה לפי שימוש, סוג התנועה מוגדר כ-ON_DEMAND. מידע נוסף זמין במאמר אימות השימוש ב-Priority PayGo.

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