הפעלת Cloud Logging לנציג
מפעילים את Cloud Logging לנציג. זה חיוני כדי לתעד נתונים ולזהות בעיות בשיחות אמיתיות.
איסוף מזהי שיחות
אם מתרחשת התנהגות לא צפויה, אוספים את מזהי השיחות ב-Dialogflow. המזהים האלה, שנמצאים בהיסטוריית השיחות, מאפשרים לעקוב אחרי נתיב הביצוע של השיחה ולבחון אינטראקציות ספציפיות.
הקריאה ל-API מקבלת את השגיאה "נדחתה הרשאה"
הבעיה
התקבלה תגובה PERMISSION_DENIED לקריאה ל-API.
הפתרון
מוודאים שהגדרתם נכון את האימות והתפקידים (Dialogflow CX, Dialogflow ES). חשוב לוודא שביצעתם את הפעולות הבאות:
- יצרתם חשבון שירות ולא מחקתם אותו בטעות.
- הקצאתם לחשבון השירות תפקיד שנותן הרשאה להפעיל את ה-method שנבחרה.
- הורדתם את קובץ המפתח הפרטי של חשבון השירות.
- מגדירים את משתנה הסביבה
GOOGLE_APPLICATION_CREDENTIALSלקובץ המפתח הפרטי.
הקריאה ל-API מאזכרת פרויקט לא ידוע
הבעיה
התקבלה השגיאה Dialogflow API has not been used in project 32555940559 בקריאה ל-API.
הפתרון
ודאו שביצעתם את הפעולות הבאות:
- מגדירים את משתנה הסביבה
GOOGLE_APPLICATION_CREDENTIALS(ראוPERMISSION_DENIED). - לספק את מזהה הפרויקט הנכון לקריאה ל-API.
הקריאה ל-API מקבלת שגיאה של פרטי כניסה לאימות לא חוקיים
הבעיה
התקבלה התגובה Request had invalid authentication credentials.
Expected OAuth 2 access token, login cookie
or other valid authentication credential. לקריאה ל-API.
הפתרון
יכול להיות שהסיבה לכך היא שיצרתם באופן ידני פרטי כניסה באמצעות ספריית הלקוח, וציינתם אזור שהוא לא ברירת המחדל. אפשר להיעזר באחד מהמקורות הבאים:
התגובה לקריאה ל-API מבקשת לעבור למארח אחר
הבעיה
התקבלה התגובה Please switch to 'REGION-dialogflow.googleapis.com' to access resources
located in 'REGION' לקריאה ל-API, כאשר REGION הוא מזהה אזור ספציפי.
הפתרון
זה קורה כשמציינים את האזור בבקשה, אבל לא את נקודת הקצה. אפשר להיעזר באחד מהמאמרים הבאים:
שדות חסרים בתגובה לקריאה ל-API
הבעיה
חסרים כמה שדות בתגובה מה-API.
הפתרון
אם אתם מצפים לערך מספרי בשדה מסוים בתגובה מה-API, יכול להיות שהשדה לא יופיע בתגובה אם הערך שמוחזר הוא 0.
למידע נוסף על ההתנהגות של ערך ברירת המחדל (כולל ערכים לא מספריים), ראו:
אי אפשר למחוק את הפרויקט בגלל מנעול למניעת מחיקה
הבעיה
כשמנסים למחוק פרויקט ב- Google Cloud , מקבלים הודעה שאי אפשר למחוק את הפרויקט כי יש לו שעבודים, ואחד מהשעבודים קשור ל-Dialogflow ES.
הפתרון
חשוב לוודא שאתם לא צריכים יותר את נציג Dialogflow ES שמשויך לפרויקט. אם קיבלתם התראה שהנציג לא קיים, סימן שהוא כבר נמחק.
מסוף Dialogflow ES
פותחים את הכתובת https://dialogflow.cloud.google.com/#/agent/project-id/intents.
שימו לב שהקישור הזה שונה מהקישור בתיבת הדו-שיח למחיקת פרויקט ב- Google Cloud .
Dialogflow API
משתמשים ב-method
searchשל הסוגagent.משיגים את שם השעבוד.
gcloud
משתמשים בפקודה gcloud alpha resource-manager liens list, כפי שמתואר במסמך הצגת רשימת שעבודים בפרויקט.
API Explorer
משתמשים בחלונית Try this API בדף Method: liens.list:
- ממלאים את השדה
parent, כפי שמוצע בתיאור הפרמטר. - לוחצים על Execute.
- ממלאים את השדה
מוחקים את השעבוד.
gcloud
משתמשים בפקודה gcloud alpha resource-manager liens delete LIEN_NAME, כפי שמתואר במסמך הסרת שעבודים מפרויקט.
API Explorer
משתמשים בחלונית Try this API בדף Method: liens.delete:
- ממלאים את השדה
nameבשם של שעבוד שקיבלתם בשלב 2. - לוחצים על Execute.
- ממלאים את השדה
סגירת הפרויקט.
ה-webhook של Dialogflow CX נכשל עם שגיאה של חריגה מהמועד האחרון
הבעיה
יכול להיות ש-webhook שנקרא מ-Dialogflow CX ייכשל עם הודעת השגיאה הבאה:
Webhook call failed. Error: DEADLINE_EXCEEDED
יכול להיות שהסיבה לכך היא שהקריאה ל-webhook חורגת ממגבלת הזמן הקצוב לתפוגה של ה-webhook. אלה סיבות אפשריות לכך שהקריאה ל-webhook חורגת ממגבלת הזמן הקצוב לתפוגה:
- ניסיון להפעיל Intent שלא קיים.
- בעיה בהפעלה במצב התחלתי (cold start) של הקצה העורפי של ה-webhook (לדוגמה, Cloud Functions).
- ה-webhook קורא לשירותים אחרים, מה שמאריך את זמן התגובה.
- אין חיבור בין הנציג לבין הקצה העורפי של ה-webhook (לדוגמה, הגדרה שגויה של מאזן העומסים).
- מדיניות הארגון שמונעת את ההפעלה של תעבורת נתונים נכנסת (ingress) או של שיטות Dialogflow.
פתרון עקיף
כברירת מחדל, ל-webhook יש מגבלת זמן קצוב לתפוגה של 5 שניות. אתם יכולים להגדיל את מגבלת הזמן הקצוב לתפוגה של ה-webhook כשאתם יוצרים או עורכים את משאב ה-webhook, וכך לתת ל-webhook יותר זמן להגיב.
הגדרת הפרויקט במסוף נכשלה
הבעיה
התקבלה השגיאה Failed to set up GCP project כשניסיתי ליצור נציג באמצעות המסוף.
הפתרון
יכול להיות שאין לכם הרשאה ליצור פרויקטים ב- Google Cloud . בודקים אם אפשר ליצור פרויקט ב-Google Cloud ישירות מהמסוף. אם אתם לא מצליחים ליצור פרויקט, פעלו לפי ההמלצות שמופיעות בהודעת השגיאה.
הפניה לפרמטר של סשן שמוצגת בתשובה
הבעיה
התשובות שמוחזרות מ-Dialogflow כוללות את ההפניות לפרמטרים במקום את הערכים של הפרמטרים.
לדוגמה:
Hello, $session.params.customer_name
הפרמטרים לא ינותחו וההפניה לפרמטר תוצג אם הפרמטר לא נמצא בסשן הנוכחי או אם לא משתמשים בפרמטר בהתאם לסוג שלו.
הפתרון
הבעיה הזו יכולה להופיע אם הפרמטר שבו משתמשים לא נכלל בשיחה, אם יש בו שגיאת הקלדה או אם הוא מסוג שונה מהסוג שבו משתמשים.
המסוף לא מצליח ליצור נציג כשה-API לא מופעל
הבעיה
קיבלתי את השגיאה Dialogflow API has not been enabled for the project. Code: FAILED_PRECONDITION כשניסיתי ליצור סוכן באמצעות המסוף.
הפתרון
פועלים לפי שלבי ההגדרה כדי להפעיל את Dialogflow API.
כשניסיתי לגשת למסוף מחשבון ארגוני, קיבלתי הודעת שגיאה מהשירות
הבעיה
קיבלתם את השגיאה You don't have access to this service כשניסיתם לגשת למסוף מחשבון הארגון.
הפתרון
פנו למנהל המערכת של הארגון וודאו שהגדרות הארגון מאפשרות גישה למסוף. אם לא, בדקו אם החשבון שהועבר מארגון אחר סומן על ידי Google כמוגבל. סביר להניח שזו הבעיה אם משתמשים אחרים בארגון יכולים לגשת למסוף, אבל אתם לא יכולים.
אפשר גם לפנות לתמיכה כדי לקבל עזרה.
אי אפשר לייצא את הנציג בפורמט JSON כי חסר תהליך
הבעיה
הייצוא של הנציג כבייטים גולמיים מסתיים בהצלחה, אבל הייצוא של הנציג בפורמט JSON נכשל ומוצגת הודעת שגיאה שדומה לזו:
Flow 'projects/PROJECT_ID/locations/LOCATION_ID/agents/AGENT_ID/flows/FLOW_ID' does not exist in the agent
הבעיה הזו יכולה להיגרם ממקרה בדיקה שמפנה לתהליך שנמחק.
הפתרון
כדי לפתור את הבעיה, בודקים את מקרי הבדיקה שלא בשימוש כדי לוודא אם התהליך שמוזכר בהודעת השגיאה נמצא בשימוש במקרי בדיקה כלשהם, ואז מוחקים את מקרי הבדיקה שאומתו.
קישוריות לשער גישה טלפוני
הבעיה
כשמשתמשים בשער טלפוני, מקבלים צליל תפוס או שהשיחה מתנתקת.
הפתרון
יש מכסות ומגבלות לתכונה הזו. אם אתם מקבלים צליל תפוס או שהשיחה מתנתקת, יכול להיות שחרגתם מהמכסה.
שגיאה מסוג RESOURCE_EXHAUSTED כשמנסים ליצור מספר טלפון חדש
הבעיה
כשמנסים ליצור מספר טלפון חדש ב-Dialogflow CX, ב-Dialogflow ES או ב-Agent Assist, מוחזרת השגיאה RESOURCE_EXHAUSTED.
הפתרון
השגיאה הזו מופיעה כשחורגים מהמגבלה של מספרי הטלפון לכל פרויקט. כדי ליצור מספר טלפון חדש, צריך למחוק מספרי טלפון שלא בשימוש שמשויכים לפרויקט, עד שמספר הטלפונים יהיה נמוך מהמגבלה.
אם יצרתם מספרי טלפון ב-Dialogflow CX Phone Gateway או ב-Dialogflow ES Phone Gateway, אתם יכולים למחוק אותם במסוף. שימו לב שאם מוחקים את הנציג בלי למחוק את מספר הטלפון, מספר הטלפון שמשויך אליו לא נמחק.
לחלופין, אפשר להשתמש ב-API לפי השלבים הבאים.
שלב 1. מזהים את כל מספרי הטלפון שמשויכים לפרויקט
כדי לזהות את מספרי הטלפון שמשויכים לפרויקט, משתמשים בשיטת ה-API projects.phoneNumbers/list או projects.locations.phoneNumbers.list בכל האזורים שבהם יכול להיות שיצרתם מספרי טלפון.
לאזור
global, משתמשים בפקודה הבאה:curl -X GET \ -H "Authorization: Bearer "$(gcloud auth print-access-token) \ -H "X-Goog-User-Project: PROJECT_ID" \ -H "Content-Type: application/json; charset=utf-8" \ https://dialogflow.googleapis.com/v2beta1/projects/PROJECT_ID/locations/global/phoneNumbersבאזורים אחרים, צריך לציין את האזור בשני מקומות:
curl -X GET \ -H "Authorization: Bearer "$(gcloud auth print-access-token) \ -H "X-Goog-User-Project: PROJECT_ID" \ -H "Content-Type: application/json; charset=utf-8" \ https://REGION_ID-dialogflow.googleapis.com/v2beta1/projects/PROJECT_ID/locations/REGION_ID/phoneNumbers
שלב 2: (אופציונלי) זיהוי הנציגים שמשויכים לפרופילים של השיחות
כדי לזהות אם הסוכן עדיין בשימוש ואם עדיין צריך את מספר הטלפון, אפשר לקבל את מזהה הסוכן ב-Dialogflow CX שמשויך למספר הטלפון דרך פרופיל השיחה. כדי לעשות את זה, משתמשים ב-method projects.conversationProfiles/get ב-API. המזהים של פרופילי השיחות מופיעים בתשובות לפקודות שהרצתם בשלב 1.
לאזור
global, משתמשים בפקודה הבאה:curl -X GET \ -H "Authorization: Bearer "$(gcloud auth print-access-token) \ -H "X-Goog-User-Project: PROJECT_ID" \ -H "Content-Type: application/json; charset=utf-8" \ https://dialogflow.googleapis.com/v2beta1/projects/PROJECT_ID/locations/global/conversationProfiles/CONVERSATION_PROFILE_IDבאזורים אחרים, צריך לציין את האזור בשני מקומות:
curl -X GET \ -H "Authorization: Bearer "$(gcloud auth print-access-token) \ -H "X-Goog-User-Project: PROJECT_ID" \ -H "Content-Type: application/json; charset=utf-8" \ https://REGION_ID-dialogflow.googleapis.com/v2beta1/projects/PROJECT_ID/locations/REGION_ID/conversationProfiles/CONVERSATION_PROFILE_ID
כדי למצוא את הסוכן לפי המזהה שלו במסוף Dialogflow CX, משתמשים באפשרות Search בדף View all agents.
ב-Dialogflow ES, אפשר לשייך פרויקט אחד לחמישה נציגים לכל היותר, ואפשר לשייך נציג אחד ב-Dialogflow ES למספר טלפון אחד. כדי לפתוח את הסוכן במסוף Dialogflow ES, אפשר להיכנס לכתובת https://dialogflow.cloud.google.com/#/editAgent/PROJECT_ID/intents.
אם לא נמצא נציג, עדיין אפשר למחוק את מספר הטלפון אם אתם בטוחים שאין בו יותר צורך.
שלב 3. מחיקת מספרי טלפון שלא בשימוש
כדי למחוק מספרי טלפון שכבר לא צריך, משתמשים ב-method projects.phoneNumbers/delete או ב-method projects.locations.phoneNumbers.delete ב-API. אפשר למצוא את מזהי מספרי הטלפון בתגובה לפקודות שהרצתם בשלב 1.
לאזור
global, משתמשים בפקודה הבאה:curl -X DELETE \ -H "Authorization: Bearer "$(gcloud auth print-access-token) \ -H "X-Goog-User-Project: PROJECT_ID" \ -H "Content-Type: application/json; charset=utf-8" \ https://dialogflow.googleapis.com/v2beta1/PHONE_NUMBER_IDבאזורים אחרים, צריך לציין את האזור:
curl -X DELETE \ -H "Authorization: Bearer "$(gcloud auth print-access-token) \ -H "X-Goog-User-Project: PROJECT_ID" \ -H "Content-Type: application/json; charset=utf-8" \ https://REGION_ID-dialogflow.googleapis.com/v2beta1/PHONE_NUMBER_ID
אין תגובה מ-Dialogflow CX Messenger
הבעיה
אין תגובה מהנציג לאינטראקציות ב-Dialogflow CX Messenger.
הפתרון
אם לא מופיעות תשובות מ-Dialogflow CX Messenger, ודאו שהחיוב מופעל בפרויקט ושה-Dialogflow API מופעל בפרויקט. הוראות להגדרה
ערך הפרמטר תואם, אבל הוא לא מילה נרדפת לישות
הבעיה
- מקרה כללי: ערך פרמטר נשלף בזמן הריצה, למרות שהישות שתואמת לפרמטר לא מכילה את הערך התואם כמילה נרדפת.
- מקרה ספציפי יותר: אחרי שמחקו מילה נרדפת מישות ואימנו מחדש את הנציג, המילה הנרדפת הזו עדיין מחולצת כערך פרמטר של הישות הזו.
הפתרון
- משתמשים באפשרות search כדי לבדוק אם הערך התואם נמצא בסוכן כישות משתמעת (Dialogflow CX, Dialogflow ES). מוצאים את כל הכוונות שיש להן הערות עם הפרמטר והישות האלה.
- כדי לתקן את ההערות, צריך לוודא שאף אחת מהן לא מוחלת על הטקסט שמייצג את הערך התואם הלא רצוי.
- בודקים את הנציג בזמן הריצה כדי לוודא שהבעיה נפתרה.
- אם הבעיה נמשכת, ודאו שהאפשרויות Automatic expansion ו-Fuzzy matching לא מסומנות בהגדרות המתקדמות של הישות, ובדקו שוב את הנציג.
הבוט הקולי מדלג על חלק מהתשובות
הבעיה
בנציג שמיועד גם לטקסט וגם לקול, הבוט הקולי לא מקריא חלק מהתשובות.
הפתרון
אם מוגדרת לפחות תשובה אחת של טקסט אודיו פלט למהלך שיחה מסוים, ודאו שאפשרות טקסט אודיו הפלט מופיעה באופן עקבי בכל התשובות של ה-webhook ומילוי הבקשה של הנציג בכל השלבים של מהלך השיחה הזה.
תגי SSML לא פועלים
הבעיה
תגי SSML מוגדרים במילוי הבקשה של הנציג, אבל הבוט הקולי קורא את הטקסט המסונתז בלי אפקטים של SSML.
הפתרון
חשוב לוודא שמופיע רק צמד אחד של <speak></speak> בכל כרטיס תגובה במסוף Dialogflow, או בכל אובייקט של הודעת תגובה אם התגובות מסופקות על ידי ה-API או ה-webhook.
הנציג הקולי מבטא את הספרה אפס כמו האות O
הבעיה
בנציג שמיועד לשיחות קוליות, הנציג הקולי קורא את הספרה אפס בתור האות O במקום אפס.
הפתרון
- משנים את Agent says כדי להשתמש ב-Output audio text dialogue option.
- מסמנים את התיבה SSML.
- מקיפים את הטקסט בתג SSML:
<speak> <say-as interpret-as='verbatim'>YOUR_TEXT</say-as> </speak> - שמירה.
לדוגמה, אפסים במספרי כרטיסי אשראי יאוישו כאפסים:
<speak>
<say-as interpret-as='verbatim'>5177 7702 8500 4578</say-as>
</speak>הגייה מסונתזת לא צפויה
הבעיה
ההגייה המסונתזת של התשובות של הנציג (למשל, שמות עצם פרטיים, ראשי תיבות) לא תואמת לציפיות.
הפתרון
כדי להבטיח הגייה מסוימת של מילים לא מוכרות, השתמשו בתג SSML say-as או phoneme בתשובות של הנציג.
הגעת למספר המקסימלי המותר של שלבי ביצוע במכונת המצבים
הבעיה
הודעת השגיאה הבאה התקבלה במסוף Dialogflow CX או ביומנים כשנשלחו בקשות בזמן ריצה לסוכן:
You have reached the maximum allowed state machine execution steps. You may consider simplifying your agent/flow design. Current execution steps are: [<array_of_objects>]
המערך בהודעת השגיאה מכיל רשימה של שלבי הביצוע של הבקשה. אם יש יותר מדי שלבים, יכול להיות שהרשימה לא תהיה מלאה.
הפתרון
הודעת השגיאה הזו בדרך כלל מציינת שמספר המעברים בתור אחד בשיחה גדול מדי. דוגמה נפוצה היא מעבר לאותו דף, שיוצר לולאה אינסופית.
כדי לפתור את הבעיה:
- מעתיקים את מערך ה-JSON מהודעת השגיאה.
- (אופציונלי) כדי לשפר את הקריאוּת, אפשר להגדיר את הפורמט של המערך שהועתק כ-JSON קריא. אם הודעת השגיאה נקטעת, חפשו את אובייקט ה-Step האחרון, מחקו את אובייקט השלב הלא שלם ואת הפסיק שלפניו, והוסיפו סוגר מרובע לסגירת המערך לפני האימות והעיצוב של ה-JSON.
- בודקים את הערכים של
"TriggeredTransitionRouteId"ו-"TargetPage"בכל שלב. במקרה של לולאה אינסופית, השדות"TriggeredTransitionRouteId"ו-"TargetPage"מכילים ערכים שחוזרים על עצמם ברוב השלבים. - כדי להסיר את המעברים בלולאה אינסופית או להפחית את מספר המעברים בתור אחד בשיחה, צריך לשנות את עיצוב הנציג.
ההתאמה של הביטוי הרגולרי רחבה מדי
הבעיה
התקבלה השגיאה Regular expression match is too broad כשנוצרה ישות של ביטוי רגולרי (Dialogflow CX, Dialogflow ES).
הפתרון
כדאי לשקול את הגישה הבאה:
- משתמשים ב-
^וב-$בביטוי הרגולרי כדי לציין את ההתחלה והסוף של הטקסט, בהתאמה. - משתמשים בישות regexp עם פרמטר נדרש (Dialogflow CX, Dialogflow ES).
- הגדירו את ההנחיות לפרמטרים הנדרשים כדי לבקש ממשתמש הקצה לספק רק את ערך הישות, בלי מילים מסביב.
תווים לא רצויים שאינם אלפאנומריים שנוספו על ידי זיהוי דיבור
הבעיה
כשמנסים להתאים תווים אלפאנומריים, מנגנון זיהוי הדיבור מוסיף תווים לא רצויים שהם לא אלפאנומריים (רווחים, מקפים וכו'), וכתוצאה מכך הישות לא תואמת.
הפתרון
- אם אתם משתמשים בישויות מערכת להתאמת מספרים, כדאי להשתמש במקום זאת בישויות regexp (Dialogflow CX, Dialogflow ES).
- פועלים לפי כל ההמלצות בקטע זיהוי דיבור לא מדויק של תווים אלפאנומריים על ידי ישויות של ביטויים רגולריים.
- כדי להתאים מספרים באמצעות שילובים של טלפוניה, כדאי להשתמש באפשרות DTMF בנוסף לזיהוי דיבור.
תמלילים ריקים של קלט קולי
הבעיה
התשובות של Dialogflow לקלט קולי מחזירות תמלילים ריקים. הבקשות מטופלות כ"אין קלט" או "אין התאמה".
הפתרון
מאזינים להקלטת האודיו כדי לוודא שהיא מכילה דיבור.
מוודאים שהתאמת הדיבור מופעלת בהגדרות של הסוכן (Dialogflow CX, Dialogflow ES).
אם הפעלת התאמת הדיבור לא עוזרת, נסו את המודלים לזיהוי דיבור הבאים בסביבה שאינה סביבת ייצור, והשתמשו במודל שמניב את התוצאות הטובות ביותר:
latest_shortphone_callcommand_and_search
לשפות אחרות, חפשו את מודלי הדיבור הנתמכים במסמכי התיעוד של השפות הנתמכות בהמרת דיבור לטקסט.
הדרך שבה מציינים מודל דיבור תלויה באופן שבו מגדירים את האינטראקציות עם Dialogflow.
בבקשות API, צריך לציין את שם המודל בשדה
modelב-InputAudioConfig(Dialogflow CX, Dialogflow ES).אם אתם משתמשים ב-Phone Gateway (Dialogflow CX, Dialogflow ES), אתם יכולים לעדכן את מודל הדיבור בפרופיל השיחה שנוצר על ידי Dialogflow כשהפעלתם את השילוב:
מאחזרים את המזהה של פרופיל השיחה:
- משתמשים ב-method
conversationProfiles.listכדי לאחזר את כל הפרופילים של השיחות שמקושרים לפרויקט. - מוצאים את פרופיל השיחה שרוצים לעדכן ומעתיקים את הערך בשדה
name.
ב-Dialogflow CX Phone Gateway, השם המוצג של פרופיל השיחה נמצא בהגדרות השילוב. ב-Dialogflow ES Phone Gateway, השם המוצג של פרופיל השיחה תואם לשם הנציג שבו הופעלה האינטגרציה.
אם יש לכם כמה פרופילים של שיחות עם אותו שם לתצוגה, צריך לאמת את מזהה הנציג בשדה
automatedAgentConfigמהתגובה של ה-methodconversationProfiles.list.- משתמשים ב-method
משתמשים בשיטת ה-API
conversationProfiles.patchכדי לעדכן את השדהmodelב-SpeechToTextConfig.
בשילובים של Contact Center AI, צריך לבדוק עם משלב הטלפוניה איך לעדכן את מודל הדיבור לשילוב או לבקשות ספציפיות.
הסבר על שגיאות לולאה בפלייבוקים
הבעיה
כשמקשרים פלייבוקים, מופיעה השגיאה Playbook <playbookID> caused loop in playbook routes.
הפתרון
לולאה יכולה להתרחש אם מנסים לנתב ל-playbook "אב קדמון" – playbook שקרא ישירות או בעקיפין ל-playbook הנוכחי. כדי לתקן את הבעיה, צריך לוודא שהניתוב של הפלייבוק הוא חד-כיווני ולא חוזר לפלייבוק הורה באותו נתיב שיחה.
מסך ריק עם השגיאה "הקובץ גדול מ-2MB" כשמשווים בין גרסאות של נציגים
הבעיה
כשמנסים להשוות בין שתי גרסאות שונות של נציגים, המסך הופך לריק ומופיעה הודעת השגיאה הבאה:
File size exceeds 2MB
הבעיה הזו נגרמת כי אחד מהקבצים גדול מ-2MB.
הפתרון
כדי להשוות בין גרסאות של נציגים כשאחד מהקבצים גדול מ-2MB, מומלץ להשתמש ב-method compareVersion של ה-API.
זיהוי דיבור לא מדויק של תווים אלפאנומריים על ידי ישויות של ביטויים רגולריים (regexp)
הבעיה
התקבלו תמלילים לא מדויקים של קלט קולי של תווים אלפאנומריים שנועדו להתאים לישות של ביטוי רגולרי (Dialogflow CX, Dialogflow ES).
הפתרון
- מוודאים שהתאמת הדיבור מופעלת בהגדרות הסוכן (Dialogflow CX, Dialogflow ES).
- חשוב לוודא שלפחות רשומה אחת של ישות עומדת בכל הדרישות של רשומות הביטויים הרגולריים (Dialogflow CX, Dialogflow ES).
- לתבניות ספציפיות, השתמשו בביטויים הרגולריים הכי ספציפיים. לדוגמה, אם יש ערך אלפאנומרי שמתחיל בשתי אותיות ואחריהן חמש ספרות, צריך להשתמש ב-
[a-zA-Z]{2}\d{5}במקום ב-[a-zA-Z0-9]{7}. - חשוב לוודא שהישות של הביטוי הרגולרי מאפשרת התאמה של תווים שאינם אלפאנומריים (רווחים, מקפים וכו') שעשויים להתווסף על ידי מזהה הדיבור. כדי לעמוד בדרישה השנייה ברשימה, צריך ליצור כמה רשומות של ישויות: רשומה אחת שתעמוד בדרישה השנייה ברשימה, ורשומה נוספת שתתייחס לתווים שאינם אלפאנומריים. לדוגמה, כדי להתאים חמש ספרות ולאפשר תווים שאינם אלפאנומריים:
\d{5}(\d[^a-zA-Z0-9]*){5} - חשוב לוודא שהסוכן עומד בדרישות להגדרת הפרמטרים (Dialogflow CX, Dialogflow ES).
דוגמה ל-Dialogflow CX
דוגמה ל-Dialogflow ES
- חשוב לוודא שהנציג עומד בדרישות להוספת הערות לביטויי אימון (Dialogflow CX, Dialogflow ES).
דוגמה ל-Dialogflow ES
- חשוב לוודא שהבדיקות עומדות בהנחיות לבדיקה (Dialogflow CX, Dialogflow ES).
- כדי להסיר תווים שאינם אלפאנומריים, שאולי נוספו על ידי מזהה הדיבור, משתמשים בקוד הבא:
- ב-Dialogflow CX: פונקציית המערכת SUBSTITUTE או webhook
- ב-Dialogflow ES: webhook
- בודקים את המגבלות של התאמת הדיבור (Dialogflow CX, Dialogflow ES).
עיצוב לשיחות מבוקרות
בנו את הסוכן עם נתיבי שיחה מוגדרים בבירור. מוודאים שהנציג יכול לבקש את המידע שנדרש כדי למלא את דרישות המשתמש. חשוב להימנע מהיקף שיחה רחב מדי, שעלול להוביל להתנהגות בלתי צפויה.
ניתוח יומנים
הקלט והפלט של Playbooks, כלים ומאגרי נתונים מתועדים ביומנים. משתמשים במזהי השיחות שנאספו כדי לעקוב אחרי שרשרת הקריאות ולזהות איפה הביצוע השתבש.
התנסות בכתיבת פרומפטים
אם קבוצה מסוימת של הוראות לא פועלת כמו שצריך, נסו לנסח אותה מחדש. אפשר גם להשתמש ב-Gemini כדי ליצור הנחיות (שיפור פרומפטים בעזרת AI). הגישה האיטרטיבית הזו יכולה לעזור לכם למצוא את הניסוח האופטימלי לתרחיש לדוגמה שלכם.
לספק לתמיכה מידע מלא
כשפותחים בקשת תמיכה ב-Cloud Support, צריך לכלול את מזהי השיחות הרלוונטיים ואת היומנים שנאספו במהלך החקירה. המידע הזה חיוני לניפוי באגים יעיל.