איך מפתחים אפליקציית Dialogflow CX ל-Google Chat שמבינה ומגיבה בשפה טבעית

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

לדוגמה, אפליקציית צ'אט שעוזרת לאנשים לשכור מכוניות. משתמש יכול לכתוב, "אני רוצה לשכור רכב". אפליקציית Chat עשויה להגיב בשאלה כמו "איפה תרצה לאסוף את הרכב?" וכך להתחיל שיחה עם המשתמש שדומה לשיחה עם בן אדם, שבה אפליקציית Chat מבינה את המשתמש ומגיבה לו בדיבור אנושי בזמן הזמנת השכרת הרכב.

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

  • להזמנת טיסות
  • קביעת תורים לרופאים
  • הזמנת משלוח אוכל
  • לענות על שאלות לגבי קטלוג מוצרים קמעונאי, למשל אם פריטים זמינים בצבעים אחרים
  • דף הבחירה של סוכן Dialogflow מוכן מראש.
    איור 1. בחירת סוכן מוכן מראש לאפליקציית Dialogflow Chat.
  • בדיקת הסוכן ב-Dialogflow CX.
    איור 2. בדיקת הנציג ב-Dialogflow CX כדי לוודא שהלוגיקה וההגדרה של הנציג פועלות כמצופה. בדיאגרמה מוצגת קבוצה עוקבת של דפים לפי נושאים שקשורים לשלבים ספציפיים בשיחה, כמו הגדרת מיקום לאיסוף ולהחזרה של רכב שכור, ומוגדר הלוגיקה שמקשרת ביניהם. השיחה נבדקת בסימולטור.
  • הגדרת אפליקציית Chat של Dialogflow.
    איור 3. הגדרה של אפליקציית Chat לעיבוד תשובות באמצעות סוכן Dialogflow CX בדף ההגדרה של Chat API במסוף Google Cloud.
  • בדיקת אפליקציית הצ'אט של Dialogflow CX
    איור 4. שיחה עם אפליקציית Dialogflow Chat ב-Google Chat על הזמנת רכב להשכרה.

מטרות

  • מגדירים את הסביבה.
  • יוצרים ופורסים סוכן Dialogflow CX.
  • יצירה ופריסה של אפליקציה ל-Chat שמבוססת על סוכן Dialogflow CX.
  • בודקים את אפליקציית Chat.

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

ארכיטקטורה

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

ארכיטקטורה של אפליקציית Chat שהוטמעה באמצעות Dialogflow.

בתרשים שלמעלה, משתמש שמקיים אינטראקציה עם אפליקציית צ'אט של Dialogflow, נהנה מזרימת המידע הבאה:

  1. משתמש שולח הודעה באפליקציית Chat, בצ'אט ישיר או במרחב ב-Chat.
  2. נציג וירטואלי של Dialogflow, שמאוחסן ב-Google Cloud, מקבל את ההודעה ומעבד אותה כדי ליצור תשובה.
  3. אפשר גם להשתמש בווּבק (webhook) של Dialogflow כדי שהסוכן של Dialogflow יוכל ליצור אינטראקציה עם שירותים חיצוניים של צד שלישי, כמו מערכת לניהול פרויקטים או כלי לניהול כרטיסים.
  4. סוכן Dialogflow שולח תשובה בחזרה לשירות של אפליקציית Chat ב-Chat.
  5. התשובה נשלחת למרחב ב-Chat.

הגדרת הסביבה

לפני שאתם משתמשים בממשקי Google API, אתם צריכים להפעיל אותם בפרויקט ב-Google Cloud. בכל פרויקט אפשר להפעיל ממשק API אחד או יותר.
  1. במסוף Google Cloud, מפעילים את Google Chat API ואת Dialogflow API.

    הפעלת ממשקי ה-API

  2. מוודאים שמפעילים את ממשקי ה-API בפרויקט הנכון ב-Cloud ולוחצים על הבא.

  3. מוודאים שמפעילים את ממשקי ה-API הנכונים ולוחצים על הפעלה.

יצירת סוכן Dialogflow CX

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

נציג ב-Dialogflow הוא כמו נציג אנושי במוקד טלפוני. אתם מאמנים את שניהם לטפל בתרחישי שיחה צפויים, והאימון לא צריך להיות מפורט מדי.

כך יוצרים את סוכן Dialogflow CX:

  1. במסוף Dialogflow CX, פותחים את Dialogflow CX Console. לוחצים על תפריט > Dialogflow CX.

    כניסה למסוף Dialogflow CX

  2. בוחרים פרויקט ב-Google Cloud. כדי למצוא את הפרויקט, יכול להיות שתצטרכו ללחוץ על הכול ואז לחפש אותו.

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

    כדי לבחור סוכן מובנה מראש, פועלים לפי השלבים הבאים:

    1. לוחצים על שימוש בסוכנים מוכנים מראש.
    2. בוחרים סוכן מובנה. במדריך הזה, בוחרים באפשרות נסיעות: השכרת רכב.

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

    3. לוחצים על ייבוא כסוכן.

    כדי ליצור סוכן משלכם, פועלים לפי השלבים הבאים:

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

    הוראות מפורטות ליצירת סוכן זמינות במאמר יצירת סוכן Dialogflow CX.

  4. קובעים את ההגדרות הבסיסיות של הסוכן:

    1. בשדה Display name, מזינים את השם לתצוגה.
    2. בוחרים את המיקום המועדף. אם רוצים לשנות את הגדרות המיקום המתקדמות, לוחצים על עריכה.
    3. בוחרים את אזור הזמן.
    4. בוחרים את שפת ברירת המחדל של הנציג. אי אפשר לשנות את שפת ברירת המחדל של נציג אחרי שיוצרים אותו.
  5. לוחצים על יצירה. ‫Dialogflow CX מתחיל ליצור את הסוכן, ואז מציג את זרימת ההתחלה שמוגדרת כברירת מחדל של הסוכן.

  6. אפשר גם להתאים אישית את הסוכן. הוראות מפורטות ליצירת סוכן מותאם אישית זמינות במאמר יצירת סוכן Dialogflow CX.

  7. מומלץ לבדוק את הסוכן:

    1. לוחצים על בדיקת הסוכן.
    2. בוחרים באפשרות בדיקת הסוכן בסביבה.
    3. בקטע Environment (סביבה), בוחרים באפשרות Draft (טיוטה).
    4. ב-Flow, בוחרים באפשרות Default Start Flow (ברירת מחדל של תהליך התחלה).
    5. בדף, בוחרים באפשרות דף הפתיחה.
    6. בשורת הכתיבה של Talk to agent, מקלידים Hello ומקישים על Enter. הסוכן מגיב בהצגה עצמית.
    7. כדי להשלים את הבדיקה, צריך לנהל את שיחת הבדיקה לדוגמה.
  8. סוכן Dialogflow CX נוצר. חוזרים למסוף Dialogflow CX. לוחצים על תפריט > Dialogflow CX.

    כניסה למסוף Dialogflow CX

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

יצירת אפליקציית צ'אט וקישור שלה לסוכן Dialogflow

אחרי שיוצרים סוכן Dialogflow CX, פועלים לפי השלבים הבאים כדי להפוך אותו לאפליקציית צ'אט:

  1. במסוף Google Cloud, עוברים אל Google Chat API. מחפשים את Google Chat API ולוחצים על Google Chat API ואז על ניהול.

    ל-Chat API

  2. לוחצים על Configuration (הגדרה) ומגדירים את אפליקציית Chat:

    1. בשדה App name, מזינים Dialogflow App.
    2. בקטע כתובת ה-URL של הדמות, מזינים את הערך https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png.
    3. בשדה תיאור, מזינים Responds to real human conversation.
    4. בקטע פונקציונליות, בוחרים באפשרות הצטרפות למרחבים ולשיחות קבוצתיות.
    5. בקטע הגדרות חיבור, בוחרים באפשרות Dialogflow.
    6. בקטע הגדרות Dialogflow, בוחרים באפשרות Dialogflow CX.
    7. בשדה Agent or Environment resource name (שם המשאב של הסוכן או הסביבה), מדביקים את שם הסוכן של Dialogflow CX שהעתקתם בסוף השלב יצירת סוכן Dialogflow CX.
    8. הופכים את אפליקציית Chat לזמינה לאנשים ולקבוצות ספציפיים בדומיין ומזינים את כתובת האימייל.
    9. בקטע יומנים, בוחרים באפשרות רישום שגיאות ביומן.
  3. לוחצים על שמירה.

אפליקציית Chat מוכנה לקבל הודעות ב-Chat ולענות להן.

בדיקת אפליקציית Chat

בודקים את אפליקציית הצ'אט של Dialogflow CX על ידי שליחת הודעה אליה ב-Google Chat.

  1. פותחים את Google Chat באמצעות חשבון Google Workspace שציינתם כשנוספתם כבודקים מהימנים.

    מעבר אל Google Chat

  2. לוחצים על שיחה חדשה.
  3. בשדה הוספת אדם אחד או יותר, מקלידים את השם של אפליקציית Chat.
  4. בוחרים את אפליקציית Chat מתוך התוצאות. ייפתח צ'אט ישיר.

  5. בצ'אט אישי החדש עם האפליקציה, כותבים Hello ולוחצים על enter.

    אפליקציית הצ'אט של Dialogflow מציגה את עצמה.

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

דוגמה לשיחה עם בוט

כדי לבדוק את אפליקציית הצ'אט של Dialogflow CX במסוף Dialogflow CX או ב-Google Chat, צריך לנהל את השיחה הבאה. ההסבר עוזר לכם להבין איך סוכן Dialogflow CX מפרש את השפה הטבעית של המשתמש ומפיק תשובה בשפה טבעית משלו בכל שלב בשיחה. הדוגמה הזו לשיחה מבוססת על סוכן וירטואלי מוכן מראש בשם Travel: car rental (נסיעות: השכרת רכב).

Dialog הסבר
משתמש קצה: שלום
נציג: שלום! אני סוכן וירטואלי להשכרת רכב. אוכל לעזור לך ליצור הזמנה חדשה להשכרת רכב. איך אוכל לעזור לך היום?
  1. הנתיב Default Welcome Intent ב-Default Start Flow נקרא.
  2. ההשלמה של ה-state handler הזה ("היי! אני...") נוספת לתור התגובות.
  3. הסוכן שולח את תור התגובות למשתמש הקצה.
משתמש קצה: אני רוצה לשכור רכב.
נציג: איפה היית רוצה לאסוף את הרכב?
  1. המסלול של כוונת המשתמש car_rental.reservation_create בדף ההתחלה תואם.
  2. הסשן עובר לדף מיקום האיסוף.
  3. הטופס בדף מיקום איסוף לא הושלם, ולכן הסוכן משתמש בפרמטר pickup_location כדי להציג למשתמש הנחיה ("איפה תרצה לאסוף את..."), הבקשה הזו מתווספת לתור התגובות.
  4. הסוכן שולח את תור התגובות למשתמש הקצה.
משתמש קצה: לאס וגאס
נציג: אוקיי, האיסוף יהיה בלאס וגאס.
נציג: האם מיקום ההחזרה שונה ממיקום האיסוף?
  1. הקלט של משתמש הקצה ממלא את הפרמטר pickup_location שנדרש על ידי הסוכן בתור הקודם של השיחה.
  2. הכוונה car_rental.return_different_location מוגדרת במסלול Default Start Flow.
  3. הנתיב למילוי הטופס בדף נקודת איסוף מוערך ומופעל. יש לו מילוי ("Ok, your pickup..."), שנוסף לתור התגובות עם הפניות לפרמטרים שלו שפוענחו לערכים בפועל שסופקו על ידי משתמש הקצה.
  4. השיחה מועברת לדף אישור המיקום.
  5. בדף אישור המיקום יש שדה למילוי פרטים ("האם מיקום המסירה שונה..."), הבקשה נוספת לתור התגובות.
  6. הסוכן שולח את תור התגובות למשתמש הקצה.
משתמש קצה: כן. אחזיר את הרכב בלוס אנג'לס.
סוכן: בסדר, נקודת המסירה שלך תהיה בלוס אנג'לס.
נציג: לאילו תאריך ושעה ברצונך לאסוף את הרכב?
  1. הכוונה car_rental.return_different_location מוגדרת במסלול Default Start Flow.
  2. ההפעלה עוברת לדף מיקום ההורדה.
  3. הקלט של משתמש הקצה ממלא את הפרמטר drop_off_location שהסוכן ביקש בתור הקודם של השיחה.
  4. המסלול להשלמת הטופס בדף Drop Off Location מוערך ומופעל. יש לו מילוי ("Ok, your drop off..."), שנוסף לתור התגובות.
  5. ההפעלה עוברת לדף משך ההשכרה.
  6. בדף משך ההשכרה יש ערכים חלקיים בטופס, ולכן המערכת מבקשת מהמשתמש את הפרמטר pickup_date_time (תאריך ושעת האיסוף), הבקשה הזו מתווספת לתור התגובות.
  7. הסוכן שולח את תור התגובות למשתמש הקצה.
משתמש קצה: אני רוצה לאסוף את הרכב ב-5 במרץ בצהריים.
נציג: לאילו תאריך ושעה ברצונך להחזיר את הרכב?
  1. הקלט של משתמש הקצה ממלא את הפרמטר pickup_date_time שהסוכן ביקש בתור הקודם של השיחה.
  2. בדף משך ההשכרה חסר ערך נוסף בטופס, ולכן המערכת מבקשת מהמשתמש להזין את הפרמטר drop_off_date_time (תאריך ושעת ההחזרה). הבקשה הזו מתווספת לתור התגובות.
  3. הסוכן שולח את תור התגובות למשתמש הקצה.
משתמש קצה: 15 במרץ בצהריים.
נציג: כדי לוודא:

תאסוף את הרכב ב Las Vegas בתאריך 2024-03-05 בשעה 12:00 ותחזיר אותו ב-Los Angeles בתאריך 2024-03-15 בשעה 12:00

האם זה נכון?
  1. הקלט של משתמש הקצה ממלא את הפרמטר drop_off_date_time שהסוכן ביקש בתור הקודם של השיחה.
  2. ההפעלה עוברת לדף אישור משך ההשכרה.
  3. בדף Confirm Rental Duration יש מילוי של פרטי הכניסה ("So to confirm..."), הבקשה הזו מתווספת לתור התגובות.
  4. הסוכן שולח את תור התגובות למשתמש הקצה.
משתמש קצה: כן, תודה.
נציג: מצוין! עכשיו נבחר רכב.
נציג: היית רוצה לשכור רכב חסכוני או רכב יוקרה?
  1. הכוונה small_talk.confirmation.yes מוגדרת בדף Confirm Rental Duration.
  2. הנציג מאשר את הבחירה של המשתמש בהודעה ("מעולה! עכשיו נבחר…"), הבקשה הזו מתווספת לתור התגובות.
  3. הפעילות באתר עוברת לדף Vehicle Disambiguation (הסרת דו-משמעות לגבי רכב).
  4. הטופס בדף Vehicle Disambiguation לא הושלם, ולכן הסוכן משתמש בפרמטר vehicle_type כדי להציג למשתמש שאלה ("Would you like an economy or luxury..."), הבקשה הזו מתווספת לתור התגובות.
  5. הסוכן שולח את תור התגובות למשתמש הקצה.
משתמש קצה: מחלקת תיירים, בבקשה.
נציג: רוצה את מכונית Cymbal או את משאית Cymbal?
  1. הכוונה $session.params.vehicle_type="economy_vehicle" תואמת למסלול.
  2. הסשן עובר לדף Economy Options (אפשרויות חסכוניות).
  3. בדף Economy Options (אפשרויות חסכוניות) יש אפשרות למילוי פרטים ("Would you like the..."), הבקשה נוספת לתור התגובות.
  4. הסוכן שולח את תור התגובות למשתמש הקצה.
משתמש קצה: Cymbal Truck.
נציג: עגלת המטען של Cymbal עולה ‎50.33 USD ליום. היא מתאימה ל-4 אנשים ומגיעה עם רדיו AM/FM. רוצה להמשיך לתשלום?
משתמש קצה: כן, בבקשה.
  1. הנתיב של כוונת $session.params.vehicle_type="Cymbal Truck" מותאם והפרמטר vehicle_model מתמלא.
  2. ההפעלה עוברת לדף Confirm Cymbal Truck.
  3. בדף Confirm Cymbal Truck יש מילוי של רשומה ("The Cymbal Truck is $50.33 per day..."), הבקשה נוספת לתור התגובות.
  4. הסוכן שולח את תור התגובות למשתמש הקצה.
  5. התשובה של המשתמש תואמת לנתיב small_talk.confirmation.yes.
נציג: באיזה סוג כרטיס תרצה להשתמש?
משתמש קצה: אלטוסטרטוס
נציג: עליך להזין את מספר הכרטיס.
משתמש קצה: 1234 1234 1234 1234
נציג: מה השם שמופיע על הכרטיס?
משתמש קצה: צ'ארלי
נציג: מהי כתובת החיוב?
משתמש קצה: 1800 Amphibious Blvd. Mountain View, CA
נציג: מהו המיקוד לחיוב?
משתמש קצה: 94045
נציג: תאסוף את Cymbal Car בלאס וגאס, בתאריך 2024-03-05 בשעה 12:00 ותחזיר אותה, בתאריך 2024-03-15 בשעה 12:00. הסכום הכולל לנסיעה הזו יהיה 175.38$.
נציג: תודה שבחרת לשכור מאיתנו, שיהיה לך יום נעים!
  1. ההפעלה עוברת לדף תשלום.
  2. טופס התשלום לא הושלם, ולכן הסוכן מבקש מהמשתמש את הפרמטרים card_type,‏ card_number, ‏ billing_name,‏ billing_street_address ו-billing_zip_code ("What card type will..."), התשובות האלה מתווספות ברצף לתור התשובות ונשלחות כשהמשתמש מגיב. התשובות של המשתמש מגדירות את ערך הפרמטר.
  3. הפעילות באתר עוברת לדף אישור השכרה.
  4. בדף אישור השכרה יש רשומה של השלמת ההזמנה ("האיסוף יתבצע ב..."), הבקשה הזו מתווספת לתור התגובות.
  5. הסוכן שולח את תור התגובות למשתמש הקצה.
  6. הסשן עובר לדף סיום הסשן.

שליחת הודעות בכרטיסים מ-Dialogflow

‫Dialogflow יכול להשיב עם הודעות טקסט או עם כרטיסים. כדי להשיב עם הודעת כרטיס, צריך לציין אותה כמטען ייעודי (payload) בהתאמה אישית בfulfillment.

קובץ ה-JSON הבא מראה איך לשלוח הודעת כרטיס כמטען ייעודי (payload) בהתאמה אישית ב-fulfillment:

json

{
  'cardsV2': [{
    'cardId': 'createCardMessage',
    'card': {
      'header': {
        'title': 'A card message!',
        'subtitle': 'Sent from Dialogflow',
        'imageUrl': 'https://developers.google.com/chat/images/chat-product-icon.png',
        'imageType': 'CIRCLE'
      },
      'sections': [
        {
          'widgets': [
            {
              'buttonList': {
                'buttons': [
                  {
                    'text': 'Read the docs!',
                    'onClick': {
                      'openLink': {
                        'url': 'https://developers.google.com/workspace/chat'
                      }
                    }
                  }
                ]
              }
            }
          ]
        }
      ]
    }
  }]
}

מגבלות ושיקולים

  • אירועי אינטראקציה בצ'אט נתמכים באופן מוגבל, ויש כמה דברים שצריך לקחת בחשבון:
    • אלה סוגי האירועים של אינטראקציות שנתמכים:
      • MESSAGE
      • ADDED_TO_SPACE
      • CARD_CLICKED
    • באירועים מסוג MESSAGE או ADDED_TO_SPACE, קלט השאילתה שנשלח לסוכן Dialogflow תואם לערך של השדה argumentText בהודעה בצ'אט. אם ההודעה כוללת פקודה דרך שורת הפקודות, המערכת משתמשת בערך של השדה text במקום זאת.
    • באירועים מסוג CARD_CLICKED, קלט השאילתה שנשלח לסוכן Dialogflow מעוצב כ-CARD_CLICKED.functionName, כאשר functionName מתאים לערך של השדה function של אובייקט Action שמצורף לרכיב הכרטיס האינטראקטיבי (כמו כפתור).
    • המטען הייעודי (payload) המלא בפורמט JSON של כל אירוע אינטראקציה ב-Chat נשלח ל-Dialogflow כמטען ייעודי (payload) מותאם אישית בפרמטר השאילתה, ואפשר לגשת אליו באמצעות webhook של Dialogflow על ידי שליחת שאילתה לגבי הערך של השדה WebhookRequest.payload.
  • היבטים שחשוב לקחת בחשבון כשמגיבים לפקודות דרך שורת הפקודות ומקבלים נתונים מכרטיסים או מתיבות דו-שיח:
    • כשמגיעה לאפליקציות צ'אט של Dialogflow הודעה עם פקודת לוכסן, קלט השאילתה מכיל רק את הערך של השדה text. השדה text מתחיל בשם של פקודה דרך שורת הפקודות (לדוגמה, /command), שאפשר להשתמש בו כדי להגדיר את כוונת הסוכן של Dialogflow לזיהוי פקודה דרך שורת הפקודות.
    • אם סוכן Dialogflow צריך לעבד את מטען ה-JSON של אירוע האינטראקציה בצ'אט, הוא יכול לעשות זאת באמצעות Dialogflow webhook כדי לבדוק את המטען הייעודי (payload) בהתאמה אישית בפרמטר השאילתה.
    • כדי להציג תיבת דו-שיח מסוכן Dialogflow, צריך להשיב עם מטען ייעודי (payload) יחיד של JSON בהתאמה אישית, שכולל הודעה שמכילה DIALOG תגובה לפעולה.
    • כדי לעבד נתונים שמוזנים מכרטיסים, סוכן Dialogflow יכול לזהות כוונות שמתחילות בטקסט CARD_CLICKED ולהשיב באמצעות מטען ייעודי (payload) יחיד בפורמט JSON שמכיל את הפעולה המתאימה.
  • אין תמיכה בתצוגה מקדימה של קישורים.
  • אם סוכן Dialogflow משיב בהודעה אחת בלבד, ההודעה נשלחת ל-Google Chat באופן סינכרוני. אם הנציג ב-Dialogflow מגיב עם כמה הודעות, כל ההודעות נשלחות ל-Chat באופן אסינכרוני על ידי קריאה לשיטה create במשאב spaces.messages ב-Chat API פעם אחת לכל הודעה.
  • כשמשתמשים בשילוב של Dialogflow CX עם Chat, הסוכן של Dialogflow ואפליקציית Chat צריכים להיות מוגדרים באותו פרויקט בענן של Google Cloud. אם אתם צריכים להגדיר את Dialogflow ואת Chat בפרויקטים שונים ב-Cloud, אתם יכולים להגדיר שרת ביניים כדי לאפשר את החיבור. כאן ב-GitHub אפשר לראות דוגמה לשילוב של Chat עם Dialogflow CX.

פתרון בעיות

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

יכול להיות שלא תוצג הודעת שגיאה בממשק המשתמש של Chat, אבל אם הפעלתם את רישום השגיאות באפליקציות של Chat, תוכלו לראות הודעות שגיאה ונתוני יומן שיעזרו לכם לתקן את השגיאות. לקבלת עזרה בצפייה בשגיאות, באיתור באגים ובתיקון שלהן, אפשר לעיין במאמר פתרון בעיות ב-Google Chat.

הסרת המשאבים

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

  1. במסוף Google Cloud, עוברים לדף Manage resources. לוחצים על תפריט > IAM & Admin > Manage Resources.

    כניסה ל-מנהל המשאבים

  2. ברשימת הפרויקטים, בוחרים את הפרויקט שרוצים למחוק ולוחצים על Delete .
  3. כדי למחוק את הפרויקט, כותבים את מזהה הפרויקט בתיבת הדו-שיח ולוחצים על Shut down.
  • Dialogflow CX משתמש בגישה של מכונת מצבים לעיצוב סוכנים ב-Dialogflow, וכך מאפשר לכם שליטה ברורה ומפורשת בשיחה, חוויית משתמש טובה יותר וזרימת עבודה טובה יותר לפיתוח. כשיוצרים אפליקציית צ'אט של Dialogflow, מומלץ להשתמש ב-Dialogflow CX.
    • מידע נוסף על יצירה והגדרה של סוכנים זמין במאמר סוכני Dialogflow CX.
    • הוראות מפורטות ליצירה ולהגדרה של סוכנים זמינות במאמר יצירת סוכן Dialogflow CX.
    • שיעור Codelab: דוגמה לאיך ליצור סוכן מאגר נתונים של Dialogflow CX אפשר לראות באפליקציית הצ'אט של בסיס הידע מתוך שיעור ה-Codelab פיתוח אפליקציות ל-Google Chat עם Gemini.
    • Codelab: דוגמה לאופן יצירת סוכן בממשק שיחה ב-Dialogflow CX אפשר לראות באפליקציית הצ'אט למשוב מתוך ה-Codelab‏ Build apps for Google Chat with Gemini (פיתוח אפליקציות ל-Google Chat עם Gemini).
  • Dialogflow ES היא דרך נוספת להשתמש ב-Dialogflow עם אפליקציית צ'אט.