שילוב מושגי AI בסיסיים באפליקציות ל-Google Chat

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

מהן אפליקציות מבוססות-AI ל-Google Chat?

אפליקציות של Google Chat עם AI עושות את הפעולות הבאות:

  • אתם יכולים להוסיף את השירותים והמשאבים שלכם ל-Google Chat, כדי שהמשתמשים יוכלו לקבל מידע ולבצע פעולות בלי לצאת מהשיחה.
  • להשתלב עם מודלים של AI גנרטיבי כדי ליצור, לחפש ולערוך נתונים כמו טקסט או תמונות.
  • תמיכה בחוויה מבוססת-סוכן על ידי יישום של מושגי AI בממשק שיחה, כדי ליצור אינטראקציות מעשיות, טבעיות, מתוחכמות ומועילות יותר.

למה כדאי לשלב אפליקציות של Google Chat עם AI?

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

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

היכולת לשלב את האפשרויות האלה ישירות בממשק המוכר של Google Chat היא הזדמנות מצוינת לכל מי שרוצה לשפר את חוויית המשתמש והפרודוקטיביות של המשתמשים שלו.

דרישות מוקדמות

מה תפַתחו

ב-codelab הזה תבנו שמונה אפליקציות מינימליסטיות ל-Google Chat שמשלבות מושגי AI בסיסיים כדי להראות איך אפשר ליישם אותם באפליקציות מהעולם האמיתי. כולם בנויים כתוספים ל-Google Workspace ומבוססים על ארכיטקטורת HTTP:

2f1e2c66f6e2e2f0.png

כך זה עובד:

  1. משתמש שולח הודעה ב-Google Chat לאפליקציית צ'אט, בצ'אט ישיר או במרחב ב-Chat.
  2. בקשת HTTP נשלחת לשרת האינטרנט שפועל כפונקציית Google Cloud Run של Node.js שמכילה את הלוגיקה של אפליקציית צ'אט.
  3. אפשר גם לשלב את הלוגיקה של אפליקציית צ'אט עם שירותי Google Workspace (כמו יומן Google ו-Sheets), עם שירותים אחרים של Google (כמו מפות Google,‏ YouTube ו-Vertex AI) או עם שירותי אינטרנט אחרים (כמו מערכת לניהול פרויקטים או כלי לניהול כרטיסים).
  4. שרת האינטרנט שולח תגובת HTTP בחזרה לשירות של אפליקציית צ'אט ב-Chat.
  5. התשובה מועברת למשתמש.
  6. אפשר גם שאפליקציית צ'אט תתקשר עם Chat API כדי לפרסם הודעות באופן אסינכרוני או לבצע פעולות אחרות.

כל אפליקציית Google Chat מכילה פונקציית Cloud Run של Node.js ב-Google Cloud משלה, עם גרסה משלה של קובצי המקור הבאים, כדי לבצע את הפעולות הנדרשות בשלבים 3 ו-6 שלמעלה:

  • package.json: קובץ מניפסט מרכזי שמשמש כתוכנית בסיס לפרויקט Node.js. הוא משמש להגדרת המטא-נתונים, יחסי התלות והסקריפטים.
  • env.js: סקריפט שמגדיר קבועים שנדרשים להפעלה. צריך לערוך אותו בהתאם לסביבה ולהגדרות.
  • index.js: הסקריפט הראשי שמטפל בלוגיקה של אירועי האינטראקציה ב-Google Chat. ב-Codelab הזה מיושם רק סוג האירוע message, אבל בדרך כלל הוא כולל סוגים אחרים כמו card click, ‏ פקודה דרך שורת הפקודות ו-תיבת דו-שיח באפליקציות מהחיים האמיתיים.

אפליקציית הנחיות

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

5975b36968ab597a.gif

עיצוב האפליקציה

האפליקציה הזו מבוססת על Prompt app ומוסיפה תמיכה בתשובות בפורמט טקסט עשיר שתואם לפורמט הטקסט הספציפי של הודעות ב-Google Chat.

bc49e0acf0838f28.gif

אפליקציית Ground

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

3cf232bf153f6abc.gif

אפליקציית MCP

האפליקציה הזו מבוססת על Format app, והיא כוללת תמיכה בפרוטוקול ההקשר של מודל העזרה למפתחים של Google Workspace‏ (MCP).

8219c29366e9120e.gif

אפליקציה עם כמה שלבים

האפליקציה הזו מבוססת על Format app ומוסיפה תמיכה בזיכרון שיחה באמצעות מסד נתונים של Google Cloud Firestore.

a819c274ce586451.gif

אפליקציית כלי בהתאמה אישית

האפליקציה הזו מבוססת על Multi-turn app ומוסיפה תמיכה בכלי מותאם אישית להפעלת פונקציות שמפעיל את Google Workspace Calendar API על סמך מידע שהמשתמש מספק.

a1c4f586b7ab2e24.gif

אפליקציית Stream

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

fd347ba03fe86e22.gif

אפליקציה מולטימודאלית

האפליקציה הזו מסתמכת על מודל Gemini כדי לערוך תמונות על סמך הוראות טקסטואליות מהמשתמשים. ממשקי ה-API של Google Chat משמשים להורדה ולהעלאה של התמונות כקבצים מצורפים להודעות.

57574be33474bbc.gif

מה תלמדו

  • מושגי ה-AI הבסיסיים רלוונטיים לאפליקציות של Google Chat ולאופן השימוש בהם.
  • כדי לגשת אל Vertex AI באמצעות Google Gen AI SDK.
  • כדי להשתמש בממשקי API של Google Workspace כדי לפתח תכונות שימושיות ומתקדמות.
  • כדי להשתמש ב-Cloud Run כדי ליצור אפליקציות ל-Google Chat שאפשר להרחיב.

מה צריך

  • השלמת המדריך למתחילים Build an HTTP Google Chat app (בניית אפליקציית צ'אט HTTP ל-Google Chat) באמצעות Node.js. ה-Codelab הזה מבוסס על פרויקט Google Cloud, אפליקציית Google Chat ופונקציית Cloud Run שנוצרו.

2. להגדרה

הפעלה וגישה למשאבים

בקטע הזה נסביר איך לגשת למשאבים הבאים ולהגדיר אותם מדפדפן האינטרנט המועדף.

הגדרות של Google Chat API

פותחים את מסוף Google Cloud בכרטיסייה חדשה ופועלים לפי השלבים הבאים:

  1. בוחרים את הפרויקט הרצוי.
  2. בשדה החיפוש של Google Cloud, מחפשים את Google Chat API, לוחצים על Google Chat API, לוחצים על ניהול ואז על הגדרה.

  1. מגדירים את שם האפליקציה ואת התיאור לערך Gen AI App.
  2. לוחצים על שמירה.

9a06649cf9285b99.png

מרחב ב-Chat

פותחים את Google Chat בכרטיסייה חדשה ומבצעים את השלבים הבאים:

  1. אם עדיין לא עשיתם את זה, פותחים מרחב לצ'אט ישיר עם אפליקציית Chat.
  2. כותבים Hello ולוחצים על enter. אפליקציית צ'אט אמורה להשיב עם השם ותמונת הדמות שלכם.

e3b195c7b7b8e2af.png

שירות פונקציות Cloud Run של Google

פותחים את מסוף Google Cloud בכרטיסייה חדשה ופועלים לפי השלבים הבאים:

  1. בוחרים את הפרויקט הרצוי.
  2. לוחצים על תפריט ☰ > Cloud Run > Services.

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

b69df34ea0dc48a5.png

הורדת קוד המקור והמשאבים באופן מקומי

  1. מורידים את מאגר GitHub הזה.

  1. בסביבת הפיתוח המקומית המועדפת, פותחים את הספרייה node/chat/gen-ai-apps.

3c57c15db4ebfddb.png

3. הנחיה באפליקציה

האפליקציה הזו מנחה את Gemini ב-Vertex AI לנהל שיחה עם משתמשים בשפה הטבעית שלהם באמצעות תשובות תמציתיות ופשוטות. ההטמעה מתבססת על Google Gen AI SDK ל-Node.js.

מושגים שכדאי להכיר

שפה טבעית

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

פונקציות Cloud Run

פונקציות Cloud Run מצוינות ליצירת קצה עורפי ללא שרת (serverless), לעיבוד נתונים בזמן אמת וליצירת אפליקציות חכמות. אין שרתים שצריך להקצות, לנהל, לתקן או לעדכן. הם מתרחבים אוטומטית, ויש להם זמינות גבוהה ועמידות בכשלים.

הנחיות

הנחיה היא טכניקה ליצירת קלט (הנחיות) כדי להנחות מודל AI גנרטיבי ליצירת פלט רצוי. בדרך כלל זה כולל ניסוח מדויק של שאלות, מתן הקשר, מתן הוראות או מתן דוגמאות כדי לקבל מהמודל תשובות ספציפיות ורלוונטיות.

Vertex AI

Vertex AI מציע את כל מה שצריך כדי ליצור ולהשתמש ב-AI גנרטיבי, כולל פתרונות AI, חיפוש ושיחה, יותר מ-130 מודלים בסיסיים ופלטפורמת AI מאוחדת.

c9e9c7a1945b22ac.png

Gemini

Gemini הוא מודל שפה גדול (LLM) מולטי-מודאלי מבית Google, שאפשר לגשת אליו דרך Vertex AI. הוא עוזר לאנשים לממש את הפוטנציאל האנושי שלהם, כדי שיוכלו להרחיב את הדמיון, להגביר את הסקרנות ולשפר את הפרודוקטיביות.

Google Gen AI SDK

Google Gen AI SDK מיועד למפתחים שרוצים לבנות אפליקציות שמבוססות על Gemini. הוא מספק ממשק מאוחד שתואם ל- Gemini Developer API ול- Vertex AI. היא כוללת ספריות לקוח ב-Python, ב-Go, ב-Node.js וב-Java.

תהליך הבדיקה

c625fdcc8b4a27f4.png

בדיקת קוד המקור

env.js

...
// Replace with your GCP project ID.
projectID: process.env.PROJECT_ID || 'your-google-cloud-project-id',

// Replace with your GCP project location.
location: process.env.LOCATION || 'your-google-cloud-project-location',

// Replace with the Gemini model to use.
model: process.env.MODEL || 'gemini-2.5-flash-lite',
...

index.js

// Import the Google Gen AI SDK.
import { GoogleGenAI } from '@google/genai';
...
// Use Vertex AI.
const genAI = new GoogleGenAI({vertexai: true, project: env.projectID, location: env.location});

http('gen-ai-app', async (req, res) => {
 // Send a new Chat message with the generated answer
 return res.send({ hostAppDataAction: { chatDataAction: { createMessageAction: { message: {
   text: await generateAnswer(req.body.chat.messagePayload.message.text)
 }}}}});
});

async function generateAnswer(message) {
 // The prompt is made of the user's message and specific instructions for the model.
 const prompt = 'In a consice and with plain text only (no formatting), '
                 + 'answer the following message in the same language: ' + message;
 const aiResponse = await genAI.models.generateContent({model: env.model, contents: prompt});
 return aiResponse.candidates[0].content.parts[0].text;
};
...

package.json

...
"main": "index.js",
"type": "module",
"scripts": {
  "start": "node index.js"
},
"dependencies": {
  "@google-cloud/functions-framework": "^4.0.0",
  "@google/genai": "1.15.0"
},
...

הפעלת Vertex AI API

  1. ב-מסוף Google Cloud, מפעילים את Vertex AI API‏:

  1. לוחצים על Menu ☰ > APIs & Services (תפריט > ממשקי API ושירותים) > Enabled APIs & Services (ממשקי API ושירותים מופעלים) ומוודאים ש-Vertex AI API מופיע ברשימה.

עדכון פונקציה של Node.js ב-Google Cloud Run

  1. בסביבת הפיתוח המקומית, משנים את הספרייה הנוכחית ל-node/chat/gen-ai-apps/1-prompt. הוא מכיל את כל קוד המקור והמשאבים.
  2. פותחים את env.js בעורך ומגדירים את הערכים הבאים:
  3. projectID: מזהה הפרויקט ב-Google Cloud. אפשר לאחזר אותו מדף הפתיחה של מסוף Google Cloud.

  1. location: האזור של שירות פונקציית Cloud Run. אפשר לאחזר אותו מדף הפרטים של שירות פונקציית Cloud Run ב-Google Cloud Run.

  1. model: המודל שבו רוצים להשתמש. אפשר למצוא את כל המודלים הזמינים במסמכי Vertex AI. מודל ברירת המחדל הוא Flash, לביצוע מהיר וזול.

6c2fb9f554f53a4a.png

  1. עוברים לכרטיסייה מקור בדף הפרטים של שירות פונקציית Google Cloud Run.

  1. לוחצים על עריכת המקור.
  2. מגדירים את Function entry point ל-gen-ai-app.
  3. לוחצים על , מקלידים env.js ולוחצים על ✔️ כדי ליצור את קובץ המקור החסר.
  4. מחליפים את כל התוכן של הקבצים index.js, env.js ו-package.json בתוכן של הקבצים בסביבת הפיתוח המקומית.
  5. לוחצים על שמירה ופריסה מחדש.
  6. ממתינים לסיום מוצלח של פריסת הגרסה.

487b64f2d3b1a104.png

אני רוצה לנסות

  1. במרחב של הצ'אט הישיר עם אפליקציית צ'אט ב-Google Chat, מקלידים