AI Inference SMT

טרנספורמציה בשיטה אחת (SMT) להסקת מסקנות באמצעות AI מאפשרת לכם לקבל הסקות על הודעות Pub/Sub ממודלים של Gemini Enterprise Agent Platform. אתם יכולים להשתמש במודלים מותאמים אישית משלכם שנפרסו בנקודות קצה (endpoints) של Agent Platform, או להשתמש בכל אחד מהמודלים של Google ושל השותפים שזמינים דרך Agent Platform. ההסקה של המודל מתווספת לכל הודעה, וכך היא זמינה לעיבוד בהמשך יחד עם נתוני ההודעה המקוריים.

תרחישי שימוש לדוגמה ב-AI Inference SMT:

  • העשרה בזמן אמת: הוספת הקשר, סיווגים, חיזויים, סנטימנטים או הטמעות לנתוני האירועים בזמן שהם זורמים דרך Pub/Sub.

  • פייפליינים פשוטים יותר של AI: לא צריך שירותי ביניים כדי לקבל היקשים ממודלי AI. ‫Pub/Sub מטפל בקריאה למודל ה-AI ובהעשרת ההודעה באמצעות ההסקה.

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

  • בקרת זרימה משופרת: כדי למנוע עומס יתר על נקודות הקצה של המודל, Pub/Sub מבצע אופטימיזציה של קצב הבקשות למודל ה-AI. למידע נוסף, קראו את הקטע תהליך העברת ההודעות במאמר הזה.

ה-SMT להסקת AI תומך בסוגי המודלים הבאים:

  • מודלים בפריסה עצמית. מודלים פתוחים, מודלים של שותפים ומודלים בהתאמה אישית שנפרסו בנקודת קצה (endpoint) ציבורית משותפת או ייעודית של Agent Platform.

  • מודלים של "מודל כשירות" (MaaS). מודלים שמוצעים כשירות דרך Model Garden, כמו Gemini ו-Claude, שלא דורשים מכם לנהל את הפריסה. במאמר מודלים תואמים של MaaS מפורטת רשימה של מודלים של MaaS שתואמים ל-AI Inference SMT.

תפקידים והרשאות נדרשים

כדי לקבל את ההרשאות שנדרשות ליצירת נושא או מינוי עם SMT, צריך לבקש מהאדמין להקצות לכם את התפקיד עריכת Pub/Sub (roles/pubsub.editor) ב-IAM בפרויקט. כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

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

ההרשאות הנדרשות

כדי ליצור נושא או מינוי עם SMT, נדרשות ההרשאות הבאות:

  • יצירת נושא: pubsub.topics.create בפרויקט
  • יצירת מינוי: pubsub.subscriptions.create בפרויקט

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

הרשאות של חשבון שירות

ה-SMT של AI Inference משתמש בחשבון שירות של IAM כדי לשלוח קריאה לנקודת הקצה של Agent Platform. כברירת מחדל, נעשה שימוש בחשבון סוכן השירות של Cloud Pub/Sub (service-PROJECT_NUMBER@gcp-sa-pubsub.iam.gserviceaccount.com). אתם יכולים גם לספק חשבון שירות משלכם.

לחשבון השירות צריכות להיות ההרשאות הבאות בפרויקט ב- Google Cloudשמכיל את נקודת הקצה של Agent Platform:

  • aiplatform.endpoints.get
  • aiplatform.endpoints.predict

כדי לתת את ההרשאות האלה, צריך להקצות את התפקיד משתמש בפלטפורמת הסוכן לחשבון השירות (בין אם משתמשים בחשבון השירות סוכן שירות של Cloud Pub/Sub או בחשבון שירות בהתאמה אישית).

עיבוד הודעות

בקטע הזה מוסבר איך ה-SMT של AI Inference מעבד הודעות Pub/Sub.

קלט

נתוני ההודעה ב-Pub/Sub צריכים להיות בקשה לשליחה למודל ה-AI, כמחרוזת JSON. אפשר גם לציין פרמטרים נוספים של המודל שיישלחו עם כל בקשה. ה-SMT ממזג את הפרמטרים האלה עם נתוני ההודעה ושולח את ה-JSON הממוזג לנקודת הקצה של המודל.

לדוגמה, אם יש לכם:

  • נתוני הודעת הקלט: {"messages": [{"role": "user", "content": "Explain photosynthesis"}]}
  • פרמטרים של SMT: {"temperature": 0.2}

המטען הייעודי (payload) שמתקבל ונשלח למודל הוא:

{
  "messages": [
    {
      "role": "user",
      "content": "Explain photosynthesis"
    }
  ],
  "temperature": 0.2
}

אם פרמטר שצוין בהגדרת ה-SMT זהה לשם של שדה בנתוני ההודעה, הערך בנתוני ההודעה מקבל עדיפות.

בטבלה הבאה מוצג ה-API שאליו ה-SMT שולח קריאה כדי לקבל את ההסקה, בהתאם לסוג המודל.

פריסת מודלים סוג המודל API
פריסה עצמית הכול rawPredict
מודל כשירות (MaaS)

מודל בסיס של Gemini

לדוגמה: gemini-3.0-pro

Chat Completions API

מודלים אחרים של Gemini

לדוגמה: gemini-embeddings

rawPredict
‫Anthropic,‏ Mistral AI או AI21 rawPredict
כל שאר המודלים של MaaS Chat Completions API

כדי להגדיר את הפורמט של נתוני ההודעה והפרמטרים של המודל בצורה נכונה, עיינו במסמכי התיעוד של המודל. לדוגמה, במודלים הבסיסיים של Gemini, עיינו בדוגמאות ל-Chat Completions API.

אם אפליקציית בעל התוכן הדיגיטלי לא יכולה לעצב הודעות במבנה ה-JSON הספציפי שהמודל דורש (כמו הפורמט של Chat Completions API), אתם יכולים לשרשר פונקציה מוגדרת-משתמש (UDF) ב-JavaScript מסוג SMT לפני ה-SMT של AI Inference כדי לעבד מראש ולעצב את המטען הייעודי (payload) של הבקשה. לדוגמה, ראו עיבוד מראש של מטענים ייעודיים (payloads) באמצעות פונקציה מוגדרת-משתמש ב-JavaScript.

תשובה

אם הקריאה לנקודת הקצה של המודל מצליחה, ה-SMT מעשיר את ההודעה המקורית של Pub/Sub בתגובה של המודל. ההודעה המועשרת היא מחרוזת JSON כמו זו שבהמשך, שבה ORIGINAL_MESSAGE הם נתוני ההודעה המקוריים ו-INFERENCE_RESULT היא התגובה מהמודל:

{
  "original_message": { ORIGINAL_MESSAGE },
  "model_output": { INFERENCE_RESULT }
}

תהליך ההודעה

טרנספורמציות SMT בנושאים: כשמגדירים טרנספורמציית SMT להסקת AI בנושא, Pub/Sub מטפל בהודעות נכנסות באופן הבא:

  1. אפליקציית פרסום שולחת הודעה לנושא ב-Pub/Sub.

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

  3. ‫Pub/Sub מעביר את ההודעה המועשרת לכל המינויים המצורפים.

טרנספורמציות SMT במינויים: כשמגדירים טרנספורמציית SMT להסקת AI במינוי, Pub/Sub מטפל בהודעות נכנסות באופן הבא:

  1. אפליקציית פרסום שולחת הודעה לנושא ב-Pub/Sub.

  2. ‫Pub/Sub מעביר את ההודעה למינוי.

  3. ההודעה נשלחת לנקודת הקצה של המודל שהוגדר להסקת מסקנות.

  4. המינוי שולח את ההודעה המועשרת לאפליקציית המנוי.

  5. ‫Pub/Sub מבצע אופטימיזציה של קצב הבקשות למודל ה-AI כדי למקסם את הקיבולת, על סמך זמן האחזור והמכסה של הפריסה. הערה: היכולת הזו לא נתמכת כשמשתמשים ב-unary pull API.

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

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

  • ב-SMT של נושא, בקשת הפרסום נכשלת, וזה משפיע ישירות על הזמינות של אפליקציית הפרסום.

  • אם משתמשים ב-SMT ברמת המינוי, מערכת Pub/Sub מנסה שוב לשלוח את ההודעה, כולל הפעלת ה-SMT, בהתאם למדיניות הניסיונות החוזרים של המינוי. אפשר גם להגדיר נושא להודעות ללא מוצא כדי לטפל בכשלים מתמשכים בלי להשפיע על הזמינות של הטמעת הנתונים.

יצירת SMT להסקת מסקנות באמצעות AI

אפשר להגדיר SMT בנושאים או במינויים של Pub/Sub.

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

המסוף

  1. נכנסים לדף Topics של Pub/Sub במסוף Google Cloud .

    מעבר אל "נושאים"

  2. יוצרים נושא או מינוי.

    • כדי ליצור נושא, לוחצים על יצירת נושא. ייפתח הדף Create topic.

    • כדי ליצור מינוי:

      1. לוחצים על שם הנושא שבו רוצים ליצור את המינוי.

      2. לוחצים על Create subscription. נפתח הדף Add subscription to topic.

  3. בקטע טרנספורמציות, לוחצים על הוספת טרנספורמציה.

  4. בשדה Transform type, בוחרים באפשרות AI Inference.

  5. בשדה Endpoint, מזינים את שם המשאב המלא של נקודת הקצה של המודל:

    • מודל בפריסה עצמית: projects/PROJECT/locations/LOCATION/endpoints/ENDPOINT
    • מודל Model Garden: ‏projects/PROJECT/locations/LOCATION/publishers/PUBLISHER/models/MODEL_NAME
  6. זה שינוי אופציונלי. בוחרים חשבון שירות שישמש לקריאה לנקודת הקצה של Agent Platform. מידע נוסף מופיע במאמר הרשאות לחשבון שירות.

  7. זה שינוי אופציונלי. בשדה Parameters, מזינים את הפרמטרים של המודל כאובייקט JSON. ה-SMT ממזג את הפרמטרים האלה עם כל הודעה לפני שהוא קורא למודל. דוגמה:

    {
      "temperature": 0.5,
      "max_tokens": 1000
    }
    
  8. כדי ליצור את הנושא או המינוי, לוחצים על Create.

gcloud

יצירת קובץ הגדרה

יוצרים קובץ YAML או JSON שמגדיר את ה-Inference AI.

YAML

- aiInference:
    endpoint: "ENDPOINT_RESOURCE"
    unstructuredInference: {
        parameters:
          MODEL_PARAMETERS
    }
    service_account_email: SERVICE_ACCOUNT

JSON

{
  "aiInference": {
    "endpoint": "ENDPOINT_RESOURCE",
    "unstructuredInference": {
        "parameters": {
          MODEL_PARAMETERS
        }
    }
    "service_account_email": SERVICE_ACCOUNT
  }
}

מחליפים את מה שכתוב בשדות הבאים:

  • ‫ENDPOINT_RESOURCE: שם המשאב המלא של נקודת הקצה של המודל. צריך להשתמש בפורמט הבא:

    • מודל בפריסה עצמית: projects/PROJECT/locations/LOCATION/endpoints/ENDPOINT
    • מודל Model Garden: ‏projects/PROJECT/locations/LOCATION/publishers/PUBLISHER/models/MODEL_NAME
  • ‫MODEL_PARAMETERS: אופציונלי. פרמטרים של המודל, שצוינו כאובייקט JSON. ה-SMT ממזג את הפרמטרים האלה עם כל הודעה לפני שהוא קורא למודל. דוגמה:

    {
      "temperature": 0.5,
      "max_tokens": 1000
    }
    
  • ‫SERVICE_ACCOUNT: אופציונלי. כתובת האימייל של חשבון השירות שבה משתמשים כששולחים קריאה לנקודת הקצה. למידע נוסף, קראו את המאמר הרשאות לחשבון שירות.

יצירת נושא או מינוי

כדי ליצור נושא, מריצים את הפקודה gcloud pubsub topics create.

gcloud pubsub topics create TOPIC_ID \
  --message-transforms-file=TRANSFORMS_FILE

מחליפים את מה שכתוב בשדות הבאים:

  • ‫TOPIC_ID: המזהה או השם של הנושא שרוצים ליצור.
  • ‫TRANSFORMS_FILE: הנתיב לקובץ ההגדרה.

כדי ליצור מינוי, מריצים את הפקודה gcloud pubsub subscriptions create.

gcloud pubsub subscriptions create SUBSCRIPTION_ID \
  --topic=projects/PROJECT_ID/topics/TOPIC_ID \
  --message-transforms-file=TRANSFORMS_FILE

מחליפים את מה שכתוב בשדות הבאים:

  • ‫SUBSCRIPTION_ID: השם או המזהה של המינוי שרוצים ליצור.

  • ‫PROJECT_ID: מזהה הפרויקט שמכיל את הנושא.

  • ‫TOPIC_ID: המזהה של הנושא שרוצים להירשם אליו.

  • ‫TRANSFORMS_FILE: הנתיב לקובץ ההגדרה.

אימות ובדיקה

אפשר גם לאמת ולבדוק את ה-SMT שהוגדר לפני שיוצרים את הנושא או את המינוי. מידע נוסף זמין במאמרים הבאים:

דוגמאות

שימוש ב-SMT להסקת מסקנות באמצעות AI

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

gcloud

  1. באמצעות כלי לעריכת טקסט, יוצרים קובץ בשם ai-smt.yaml ומדביקים בו את הטקסט הבא:

    - aiInference:
        endpoint: projects/PROJECT_ID/locations/LOCATION/publishers/google/models/gemini-3.8-flash
        unstructuredInference: {
            parameters: {
                "max_tokens": 25000
            }
        }
    

    מחליפים את מה שכתוב בשדות הבאים:

    • ‫PROJECT_ID: מזהה הפרויקט ב- Google Cloud.
    • ‫LOCATION: המיקום של נקודת הקצה שאליה רוצים לשלוח קריאה. לדוגמה: us-central1.
  2. יוצרים נושא Pub/Sub חדש.

    gcloud pubsub topics create TOPIC_ID
    

    מחליפים את TOPIC_ID בשם של הנושא שרוצים ליצור. לדוגמה: topic-1.

  3. יוצרים מינוי עם SMT להסקת AI.

    gcloud pubsub subscriptions create TOPIC_ID-sub \
      --ack-deadline=600 \
      --topic TOPIC_ID \
      --message-transforms-file ai-smt.yaml
    
  4. מפרסמים הודעה בנושא. ההודעה מכילה הנחיה בפורמט שמתאים ל-Chat Completions API.

    gcloud pubsub topics publish TOPIC_ID --message=$'{
      "model":"google/gemini-3.8-flash","messages":[{
        "role": "user",
        "content": "Explain how AI works in a few words"
        }]
      }'
    
  5. מקבלים הודעה מהמינוי.

    gcloud pubsub subscriptions pull TOPIC_ID-sub
    

    אם הקריאה ל-Agent Platform מצליחה, ההודעה מועשרת בפלט מההנחיה.

עיבוד מראש של מטענים ייעודיים (payloads) באמצעות פונקציה מוגדרת-משתמש (UDF) ב-JavaScript

אם אפליקציית המקור שלכם פולטת טקסט גולמי, יומנים או מטען ייעודי (payload) של אירועים במקום פורמט ה-JSON המובנה שנדרש למודלי AI (כמו הפורמט OpenAI-compatible Chat Completions), אתם יכולים לשרשר פונקציה מוגדרת-משתמש (UDF) ב-JavaScript מסוג SMT לפני ה-SMT של הסקת ה-AI. ה-UDF פועל כשכבת תרגום, והופך את ההודעה הגולמית לפורמט שהמודל מצפה לו.

הדוגמה הבאה לפונקציית JavaScript מוגדרת-משתמש מראה איך לעבד מראש הודעה שמכילה הנחיית טקסט לבקשה ל-Chat Completions API שתואמת ל-Gemini 3.8 Flash:

/**
 * Pre-processes a message containing a text prompt into a
 * Chat Completions API request compatible with Gemini 3.8 Flash.
 */
function prepareGeminiRequest(message, metadata) {
  // Assuming the incoming message data is a raw text prompt
  const promptText = message.data;

  const chatRequest = {
    "model": "google/gemini-3.8-flash",
    "messages": [
      {
        "role": "user",
        "content": promptText
      }
    ]
  };

  // Replace the message data with the stringified JSON request
  message.data = JSON.stringify(chatRequest);
  return message;
}

אפשר גם לשרשר פונקציה מוגדרת-משתמש (UDF) ב-JavaScript לעיבוד לאחר מכן, אחרי ה-SMT של הסקת ה-AI, כדי לחלץ שדות ספציפיים מהתשובה של המודל לפני שהיא נשלחת למנויים.

מודלים תואמים של MaaS

בטבלה הבאה מפורטים המודלים של "מודל כשירות" (MaaS) ש-Google בדקה באמצעות AI Inference SMT, וידוע שהם תואמים. הרשימה הזו עשויה להשתנות, כי מודלים מסוימים יוצאים משימוש ומודלים חדשים של MaaS מתווספים.

דגםקריאה ל-API
google/gemini-3.8-flash Chat Completions API
google/gemini-3.7-flash Chat Completions API
google/gemini-3.6-flash Chat Completions API
google/gemini-3.5-flash Chat Completions API
google/gemini-3.5-flash-lite Chat Completions API
google/gemini-3.1-flash-lite Chat Completions API
google/gemini-3.1-pro-preview Chat Completions API
google/gemini-3-flash-preview Chat Completions API
google/gemini-3.1-flash-image Chat Completions API
google/gemini-3-pro-image Chat Completions API
google/gemini-2.5-flash-image Chat Completions API
google/gemini-2.5-pro Chat Completions API
google/gemini-2.5-flash-lite Chat Completions API
google/gemini-2.5-flash Chat Completions API
google/gemini-2.0-flash-lite-001 Chat Completions API
google/gemini-2.0-flash-001 Chat Completions API
meta/llama-4-maverick-17b-128e-instruct-maas Chat Completions API
meta/llama-4-scout-17b-16e-instruct-maas Chat Completions API
meta/llama-3.3-70b-instruct-maas Chat Completions API
deepseek-ai/deepseek-r1-0528-maas Chat Completions API
deepseek-ai/deepseek-v3.1-maas Chat Completions API
qwen/qwen3-235b-a22b-instruct-2507-maas Chat Completions API
qwen/qwen3-coder-480b-a35b-instruct-maas Chat Completions API
openai/gpt-oss-20b-maas Chat Completions API
openai/gpt-oss-120b-maas Chat Completions API
google/text-multilingual-embedding-002 rawPredict
google/text-embedding-005 rawPredict
google/text-embedding-large-exp-03-07 rawPredict
google/gemini-embedding-001 rawPredict
google/multimodalembedding rawPredict
anthropic/claude-sonnet-4-6 rawPredict
anthropic/claude-sonnet-4-5 rawPredict
anthropic/claude-opus-4-6 rawPredict
anthropic/claude-opus-4-5 rawPredict
anthropic/claude-haiku-4-5 rawPredict
mistralai/mistral-ocr-2505 rawPredict
mistralai/mistral-small-2503 rawPredict
mistralai/mistral-medium-3 rawPredict
mistralai/codestral-2 rawPredict

מגבלות

  • אפשר להגדיר רק SMT אחד להסקת AI לכל נושא או מינוי.

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

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

  • ‫Pub/Sub לא מאמת את נתוני ההודעה שהתקבלו. אתם אחראים לוודא שפורמט הנתונים נכון.

  • הטרנספורמציה שולחת בקשת הסקה אחת לכל הודעת Pub/Sub. לא מתבצעת אצווה בצד הלקוח.

  • אין תמיכה בהסקת מסקנות אסינכרונית באצווה.

  • ההסקה לא יכולה להימשך יותר מ-60 שניות. אם הוא נמשך יותר מ-60 שניות, ניסיון המסירה נכשל בגלל זמן קצוב לתפוגה, ו-Pub/Sub מנסה שוב עד למשך שמירת ההודעות והגדרות מדיניות הניסיון החוזר שהוגדרו. אם הזמן הקצוב לתפוגה של הניסיון חולף, ההודעה מועברת לנושא להודעות ללא מוצא, אם הוגדר נושא כזה.

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

ה-SMT להסקת AI לא תומך במודלים הבאים של MaaS. להרבה מהמודלים האלה יש גרסאות לפריסה עצמית שאפשר להשתמש בהן במקום.

  • deepseek-ai/deepseek-ocr-maas
  • deepseek-ai/deepseek-v3.2-maas
  • google/gemini-embedding-2-preview
  • google/lyria-002
  • google/lyria-3-clip-preview
  • google/lyria-3-pro-preview
  • google/veo-3.1-fast-generate-001
  • google/veo-3.1-generate-001
  • intfloat/multilingual-e5-large-instruct-maas
  • intfloat/multilingual-e5-small-instruct-maas
  • minimaxai/minimax-m2-maas
  • moonshotai/kimi-k2-thinking-maas
  • qwen/qwen3-next-80b-a3b-instruct-maas
  • qwen/qwen3-next-80b-a3b-thinking-maas
  • zai-org/glm-4.7-maas
  • zai-org/glm-5-maas

הגבלות אזוריות

האילוצים הבאים חלים על SMT של AI Inference, בהתאם לאזור של נקודת הקצה של Agent Platform.

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

    המגבלה הזו חלה גם על SMT של מינויים אם המגבלה של מדיניות הארגון אכיפת אזורים בהעברה להודעות Pub/Sub בתוקף.

  • אם מוגדר SMT להסקת AI במינוי לייצוא, אזור נקודת הקצה חייב להיות באזור של המשאב המשויך:

  • אם בקשת הפרסום נשלחת לאזור אחר מאזור נקודת הקצה, Pub/Sub מפנה את הבקשה באופן אוטומטי לאזור נקודת הקצה.

  • אם אתם שולפים ממינוי עם SMT להסקת AI, ובקשת השליפה נשלחת לאזור שהוא לא אזור נקודת הקצה, Pub/Sub דוחה את הבקשה. במינויי שליפה, מומלץ להשתמש בנקודת קצה (endpoint) מבוססת-מיקום. המגבלה הזו חלה גם על משיכה בסטרימינג וגם על משיכה אונארית.

  • כשלמינוי דחיפה יש SMT להסקת AI, המינוי דוחף הודעות מאזור נקודת הקצה. אם מתרחשת הפרה של אילוץ אזורי, Pub/Sub מפסיק לדחוף הודעות מהמינוי הזה.

פתרון בעיות

בקטע הזה מפורטים טיפים לפתרון בעיות ב-AI Inference SMT.

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

  • שגיאות SMT במינויים. אם ההסקה נכשלת כשההודעה נמסרת (לדוגמה, בגלל חוסר זמינות ממושך של המודל, ניצול מתמשך של המכסה או שגיאות של ארגומנטים לא חוקיים), ההודעה המקורית שלא השתנתה מועברת לנושא להודעות ללא מוצא שהוגדר. כך לא תאבדו נתונים. ההודעה שמועברת כוללת מאפיין CloudPubSubDeadLetterSourceSMTErrorMessage שמכיל את פרטי הכשל ב-SMT. מומלץ להגדיר נושא להודעות ללא מוצא כשמשתמשים ב-SMT במינוי.

  • שגיאות בהסקת מסקנות של מודלים. אם ההסקה נכשלת ומוחזרת שגיאה, בדקו את הדברים הבאים:

    • מוודאים שנקודת הקצה שהוגדרה נכונה.

    • מוודאים שנתוני ההודעה ב-Pub/Sub מכילים בקשת הסקה תקינה למודל.

    • מוודאים שכל הפרמטרים של המודל תקינים.

    יכול להיות שההסקה תיכשל מסיבות אחרות, כמו בעיות בקישוריות.

  • שגיאות שקשורות להרשאות או לנקודות קצה. אם חשבון השירות שהוגדר מאבד את ההרשאה לנקודת הקצה, או אם נקודת הקצה נמחקת, ה-SMT נכשל.

מכסות ומגבלות

  • בנוסף למכסות ולמגבלות של Pub/Sub, ה-SMT של AI Inference כפוף למכסות ולמגבלות הקצב של נקודת הקצה של Agent Platform. בקרת הזרימה המובנית של Pub/Sub מתאימה באופן אוטומטי את קצב הבקשות כדי למנוע עומס יתר בנקודת הקצה, אבל הקצב לא יכול לחרוג מהמכסה של המודל.

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

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