הפעלת התראות לגבי אירועים של מודלים באמצעות Cloud Functions ו-Pub/Sub

ב-Gemini Enterprise Agent Platform Vision, המודלים מקבלים נתוני מדיה ממכשירים כמו מצלמות, מריצים חיזויים של AI על הנתונים ומפיקים הערות באופן רציף. לרוב, שולחים את הנתונים המעובדים האלה ליעד נתונים (data sink), כמו מחסן מדיה או BigQuery, כדי לבצע ניתוחים נוספים. עם זאת, יכול להיות שיהיו מקרים שבהם צריך לטפל בהערות מסוימות באופן שונה, או שההערות רלוונטיות רק לפרק זמן מסוים. שילובים עם פונקציות Cloud Run ו-Pub/Sub עוזרים לכם לענות על הצרכים האלה.

כדי להפעיל התראות על אירועים במודל, צריך לבצע את הפעולות הבאות:

  1. האזנה לנתוני המודל ויצירת אירועים מהם באמצעות פונקציות Cloud Run.
  2. שליחת האירועים שנוצרו על ידי פונקציות Cloud Run דרך ערוץ האירועים של Pub/Sub.

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

המודלים הבאים מציעים שילובים של יצירת אירועים של פונקציות Cloud Run והתראות לגבי אירועים ב-Pub/Sub:

לפני שמתחילים

  • יוצרים אפליקציה עם צומת של מקור נתונים וצומת של מודל נתמך לפחות.
  • זה שינוי אופציונלי. מתקינים את Gemini Enterprise Agent Platform Vision SDK ומטמיעים נתונים לאפליקציה. אם לא עושים את זה לפני שמגדירים את ההתראות לגבי אירועים, צריך לעשות את זה אחרי ההגדרה.
  • זה שינוי אופציונלי. יוצרים פונקציית Cloud Run לשימוש. אם לא יצרתם את פונקציית Cloud Run לפני שהגדרתם את פונקציות Cloud Run לעיבוד הפלט של המודל, תצטרכו ליצור אותה במהלך התהליך.
  • זה שינוי אופציונלי. יוצרים נושא Pub/Sub לשימוש. אם לא יוצרים נושא Pub/Sub לפני שמפעילים התראות על אירועים במודל באמצעות Pub/Sub, צריך ליצור אותו במהלך התהליך.
  • זה שינוי אופציונלי. בחירה ויצירה של מינוי Pub/Sub. אם לא תיצרו את המינוי שלכם ב-Pub/Sub לפני שתפעילו את ההתראה על אירועים של מודל באמצעות Pub/Sub, תצטרכו ליצור אותו אחר כך כדי לקרוא הודעות מנושא.

הגדרת פונקציות Cloud Run לעיבוד פלט של מודל

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

פונקציית Cloud Run מתחברת למודל ומאזינה לפלט שלו כפעולת עיבוד שלאחר מכן. פונקציית Cloud Run צריכה להחזיר AppPlatformCloudFunctionResponse. האירועים (appplatformeventbody) נשלחים לנושא Pub/Sub שמוגדר בשלב הבא.

פונקציית Cloud Run לדוגמה (מודל לניתוח נתוני תפוסה)

דוגמה לפונקציית Cloud Run

/**
* Responds to any HTTP request.
*
* @param {!express:Request} req HTTP request context.
* @param {!express:Response} res HTTP response context.
*/
exports.hello_http = (req, res) => {
// Logging statement can be read with cmd `gcloud functions logs read {$functionName}`.
// For more about logging, please see https://cloud.google.com/functions/docs/monitoring

// The processor output will be stored in req.body.
const messageString = constructMessage(req.body);

// Send your message to operator output with res HTTP response context.
res.status(200).send(messageString);
};

function constructMessage(data) {
// Typically, your processor output should contains appPlatformMetadata & it's designed output.
// Here we will use the occupancy analytics model as an example.
const appPlatformMetadata = data.appPlatformMetadata;
const annotations = data.annotations;
const events = [];
for(const annotation of annotations) {
   events.push({
      "event_message": "Event message goes here",
      "payload" : {
         "attr_key_goes_here" : "val_goes_here"
      },
      "event_id" : "event_id_goes_here"
   });
}

// Typically, your cloud function should return a string represent a JSON which has two fields:
// "annotations" must follow the specification of the target model.
// "events" should be of type "AppPlatformEventBody".
const messageJson = {
   "annotations": annotations,
   "events": events,
};
return JSON.stringify(messageJson);
}

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

המסוף

  1. פותחים את הכרטיסייה Applications (אפליקציות) במרכז הבקרה של Gemini Enterprise Agent Platform Vision.

    עוברים לכרטיסייה 'אפליקציות'.

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

  3. לוחצים על המודל הנתמך כדי לפתוח את חלונית הצד עם פרטי המודל.

  4. ברשימה post-processing שבקטע התראה לגבי אירוע, בוחרים פונקציית Cloud Run קיימת או יוצרים פונקציה חדשה.

    בחירת תמונה של Cloud Function לעיבוד שלאחר מכן ב-Cloud Console

הפעלת התראות לגבי אירועים של מודלים באמצעות Pub/Sub

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

המסוף

  1. פותחים את הכרטיסייה Applications (אפליקציות) במרכז הבקרה של Gemini Enterprise Agent Platform Vision.

    עוברים לכרטיסייה 'אפליקציות'.

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

  3. לוחצים על המודל הנתמך כדי לפתוח את חלונית הצד עם פרטי המודל.

  4. בקטע התראה לגבי אירוע, בוחרים באפשרות הגדרת התראה לגבי אירוע.

  5. בחלון האפשרות Set up Pub/Sub for event notifications שנפתח, בוחרים נושא Pub/Sub קיים או יוצרים נושא חדש.

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

    הגדרת תמונה של התראות לגבי אירועים ב-Cloud Console

  7. לוחצים על הגדרה.

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