מידע בסיסי על Dialogflow ES

בדף הזה מוסבר על השימוש הבסיסי ב-Dialogflow ES. מומלץ לקרוא את הדף הזה לפני שממשיכים למסמכים אחרים או למדריכים להתחלה מהירה.

עזרה למשתמשים באינטראקציה עם הטכנולוגיה

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

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

  • "What's the weather like right now?‎" (מה מזג האוויר עכשיו?)
  • "What's the temperature going to be in San Francisco tomorrow?" (מה תהיה הטמפרטורה בסן פרנסיסקו מחר?)
  • "What will the weather be on the 21st?" (מה יהיה מזג האוויר ב-21?)

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

סוכנים

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

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

כוונות

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

לדוגמה, אפשר ליצור סוכן מזג אוויר שמזהה שאלות של משתמשי קצה לגבי מזג האוויר ומגיב להן. סביר להניח שתגדירו כוונה לשאלות לגבי תחזית מזג האוויר. אם משתמש קצה אומר "What's the forecast?‎" (מה התחזית?), ‫Dialogflow יתאים את הביטוי של משתמש הקצה לכוונת החיזוי. אפשר גם להגדיר את הכוונה לחלץ מידע שימושי מהביטוי של משתמש הקצה, כמו שעה או מיקום לתחזית מזג האוויר הרצויה. הנתונים האלה חשובים למערכת שלכם כדי לבצע שאילתת מזג אוויר עבור משתמש הקצה.

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

כוונה בסיסית כוללת את הרכיבים הבאים:

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

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

סוכן וטיפול בכוונה בביטוי של משתמש קצה

ישויות

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

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

הקשרים

‫Dialogflow contexts דומים להקשר בשפה טבעית. אם מישהו אומר לכם "הם כתומים", אתם צריכים הקשר כדי להבין למה הכוונה ב "הם". באופן דומה, כדי ש-Dialogflow יוכל לטפל בביטוי של משתמש קצה כמו זה, צריך לספק לו הקשר כדי להתאים אותו בצורה נכונה ליעד.

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

בתרשים הבא מוצגת דוגמה לשימוש בהקשר לסוכן בנקאי.

תרשים של משתמש שמבצע פעולות באמצעות כוונות והקשר.
  1. משתמש קצה מבקש מידע על חשבון העו"ש שלו.
  2. ‫Dialogflow מתאים את הביטוי של משתמש הקצה לכוונת CheckingInfo. לכוונה הזו יש הקשר פלט checking, ולכן ההקשר הזה הופך לפעיל.
  3. הסוכן שואל את משתמש הקצה איזה סוג מידע הוא רוצה לקבל על חשבון העו"ש שלו.
  4. משתמש הקצה משיב "היתרה שלי".
  5. ‫Dialogflow מתאים את הביטוי של משתמש הקצה לכוונת CheckingBalance. לכוונה הזו יש הקשר קלט checking, שצריך להיות פעיל כדי שתהיה התאמה לכוונה הזו. יכול להיות שקיימת גם כוונה דומה SavingsBalance להתאמה של אותו ביטוי של משתמש קצה כשמופעל הקשר savings.
  6. אחרי שהמערכת מבצעת את שאילתות מסד הנתונים הנדרשות, הסוכן משיב עם היתרה בחשבון העובר ושב.

כוונות מעקב

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

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

‫Dialogflow Console

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

מסוף Dialogflow שונה ממסוף Google Cloud Platform‏ (GCP) (למשאבי העזרה, לפתיחת המסוף). במסוף Dialogflow משתמשים כדי לנהל סוכני Dialogflow, ובמסוף GCP משתמשים כדי לנהל הגדרות ספציפיות ל-GCP ב-Dialogflow (לדוגמה, חיוב) ומשאבים אחרים ב-GCP.

ברוב המקרים כדאי להשתמש ב-Dialogflow Console כדי ליצור סוכנים, אבל אפשר גם להשתמש ב-Dialogflow API כדי ליצור סוכנים לתרחישים מתקדמים.

אינטראקציות של משתמשים עם שילובים

‫Dialogflow משתלב עם פלטפורמות פופולריות רבות לשיחות, כמו Google Assistant, ‏ Slack ו-Facebook Messenger. אם אתם רוצים ליצור סוכן לאחת מהפלטפורמות האלה, כדאי להשתמש באחת מתוך מגוון האפשרויות של שילובים. המערכת מטפלת באינטראקציות ישירות עם משתמשי הקצה, כך שאתם יכולים להתמקד בפיתוח הסוכן. כל שילוב מטפל באינטראקציות של משתמשי הקצה באופן ספציפי לפלטפורמה, ולכן כדאי לעיין במסמכי התיעוד של פלטפורמת השילוב שלכם כדי לקבל פרטים.

השלמת הזמנות בשילובים

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

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

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

תרשים שמציג את תהליך מילוי ההזמנה
  1. משתמש הקצה מקליד או אומר ביטוי.
  2. ‫Dialogflow מתאים את הביטוי של משתמש הקצה ליעד ומחלץ פרמטרים.
  3. ‫Dialogflow שולח הודעת בקשת webhook לשירות ה-webhook. ההודעה הזו מכילה מידע על הכוונה התואמת, הפעולה, הפרמטרים והתגובה שהוגדרו לכוונה.
  4. השירות מבצע פעולות לפי הצורך, כמו שאילתות במסד נתונים או קריאות ל-API חיצוני.
  5. השירות שלכם שולח הודעת תגובה של webhook ל-Dialogflow. ההודעה הזו מכילה את התשובה שצריך לשלוח למשתמש הקצה.
  6. ‫Dialogflow שולח את התשובה למשתמש הקצה.
  7. משתמש הקצה רואה או שומע את התשובה.

אינטראקציות של משתמשים עם ה-API

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

תרשים שמציג את הזרימה של ה-API
  1. משתמש הקצה מקליד או אומר ביטוי.
  2. השירות שלכם שולח את הביטוי של משתמש הקצה ל-Dialogflow בהודעת בקשה לזיהוי כוונות.
  3. ‫Dialogflow שולח הודעת תגובה של זיהוי כוונות לשירות שלכם. ההודעה הזו מכילה מידע על הכוונה התואמת, הפעולה, הפרמטרים והתגובה שהוגדרו לכוונה.
  4. השירות מבצע פעולות לפי הצורך, כמו שאילתות במסד נתונים או קריאות ל-API חיצוני.
  5. השירות שלכם שולח תגובה למשתמש הקצה.
  6. משתמש הקצה רואה או שומע את התשובה.