פתרון בעיות

הפעלת 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 מבקשת מעבר למארח אחר

בעיה

Received Please switch to 'REGION-dialogflow.googleapis.com' to access resources located in 'REGION' response for API call, where REGION is a specific region ID.

הפתרון

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

שדות חסרים בתגובה לקריאה ל-API

בעיה

חלק מהשדות חסרים בתגובת ה-API.

הפתרון

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

מידע נוסף על אופן הפעולה של ערכי ברירת מחדל (כולל ערכים לא מספריים) זמין במאמרים הבאים:

לא ניתן למחוק את הפרויקט בגלל שיש עליו מנעול למניעת מחיקה

בעיה

כשמנסים למחוק פרויקט Google Cloud , מופיעה הודעה שלא ניתן למחוק את הפרויקט כי יש בו שעבודים, ואחד מהשעבודים קשור ל-Dialogflow ES.

הפתרון

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

    מסוף Dialogflow ES

    פותחים את הדף https://dialogflow.cloud.google.com/#/agent/project-id/intents.

    שימו לב: הקישור הזה שונה מהקישור שבתיבת הדו-שיח Google Cloud למחיקת הפרויקט.

    Dialogflow API

    משתמשים בשיטה search של הסוג agent.

  2. אחזור השם של השעבוד.

    gcloud

    משתמשים בפקודה gcloud alpha resource-manager liens list, כפי שמתואר במסמכי התיעוד בנושא הצגת רשימת השעבודים בפרויקט.

    ‫API Explorer

    משתמשים בחלונית Try this API בדף Method: liens.list:

    • ממלאים את השדה parent לפי ההצעה בתיאור הפרמטר.
    • לוחצים על Execute.
  3. מחיקת השעבוד.

    gcloud

    משתמשים בפקודה gcloud alpha resource-manager liens delete LIEN_NAME, כמו שמתואר במסמכי התיעוד בנושא הסרת שיעבודים מפרויקט.

    ‫API Explorer

    משתמשים בחלונית Try this API בדף Method: liens.delete:

    • ממלאים את השדה name בשם השעבוד שקיבלתם בשלב 2.
    • לוחצים על Execute.
  4. משביתים את הפרויקט.

שגיאה ב-webhook של Dialogflow CX: חריגה מהזמן הקצוב לתפוגה

בעיה

יכול להיות ש-webhook שנקרא מ-Dialogflow CX ייכשל עם הודעת השגיאה הבאה:

Webhook call failed. Error: DEADLINE_EXCEEDED

יכול להיות שהסיבה לכך היא שהקריאה ל-webhook חורגת ממגבלת הזמן הקצוב לתפוגה של ה-webhook. אלה סיבות אפשריות לכך שהקריאה ל-webhook חורגת ממגבלת הזמן הקצוב לתפוגה:

  • ניסית להפעיל כוונה שלא קיימת.
  • בעיה בהפעלה במצב התחלתי (cold start) של קצה העורפי של ה-webhook (לדוגמה, Cloud Functions).
  • ה-webhook קורא לשירותים אחרים, וכך מגדיל את זמן התגובה.
  • אין חיבור בין הסוכן לבין קצה העורף של ה-webhook (לדוגמה, איזון עומסים שהוגדר בצורה שגויה).
  • מדיניות הארגון מונעת תעבורת נתונים נכנסת (ingress) או הפעלה של שיטות Dialogflow.

פתרון אפשרי

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

הגדרת הפרויקט ב-Console נכשלת

בעיה

קיבלתי שגיאת 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 שמשויך למספר הטלפון דרך פרופיל השיחה. כך תוכלו לזהות אם הסוכן עדיין בשימוש ואם עדיין יש צורך במספר הטלפון. אפשר לעשות זאת באמצעות ה-API method‏ projects.conversationProfiles/get. אפשר למצוא את המזהים של פרופיל השיחה בתשובות לפקודות שהפעלתם בשלב 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 באמצעות האפשרות חיפוש בדף הצגת כל הסוכנים.

ב-Dialogflow ES, אפשר לשייך פרויקט אחד לחמישה נציגים לכל היותר, ונציג אחד ב-Dialogflow ES אפשר לשייך למספר טלפון אחד. לכן, אפשר לפתוח את הסוכן במסוף Dialogflow ES דרך הכתובת https://dialogflow.cloud.google.com/#/editAgent/PROJECT_ID/intents.

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

שלב 3. מחיקת מספרי טלפון שלא נמצאים בשימוש

כדי למחוק מספרי טלפון שכבר לא נחוצים, משתמשים בשיטת ה-API‏ projects.phoneNumbers/delete או projects.locations.phoneNumbers.delete. אפשר למצוא את מזהי מספרי הטלפון בתגובה לפקודות שהפעלתם בשלב 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 no response

בעיה

אין תגובה של נציג לאינטראקציות ב-Dialogflow CX Messenger.

הפתרון

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

ערך הפרמטר תאם למילה נרדפת של ישות, אבל הוא לא מילה נרדפת של ישות

בעיה

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

הפתרון

  1. אפשר להשתמש באפשרות חיפוש כדי לבדוק אם הערך התואם מופיע בסוכן כישות מרומזת (Dialogflow CX, ‏ Dialogflow ES). מוצאים את כל הכוונות שיש להן הערות עם הפרמטר והישות האלה.
  2. כדי לתקן את ההערות, צריך לוודא שאף אחת מההערות האלה לא חלה על הטקסט שמייצג את הערך התואם הלא רצוי.
  3. בודקים את הנציג בזמן הריצה כדי לוודא שהבעיה נפתרה.
  4. אם הבעיה נמשכת, מוודאים שהאפשרויות הרחבה אוטומטית והתאמה משוערת לא מסומנות בהגדרות המתקדמות של הישות, ומנסים שוב לבדוק את הסוכן.

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

בעיה

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

הפתרון

אם מוגדרת לפחות תשובה אחת של output audio text (טקסט אודיו של פלט) לסיבוב שיחה מסוים, צריך לוודא שאפשרות הטקסט אודיו של הפלט מופיעה באופן עקבי בכל השלבים של התגובות של הסוכן ל-webhook ולבקשות לביצוע פעולות (fulfillment) בסיבוב השיחה הזה.

תגי SSML לא פועלים

בעיה

תגי SSML מוגדרים ב-fulfillment של הסוכן, אבל בוט הקולי קורא את הטקסט המסונתז בלי אפקטים של SSML.

הפתרון

חשוב לוודא שמופיע רק זוג אחד של <speak></speak> בכל כרטיס תשובה בקונסולת Dialogflow, או בכל אובייקט של הודעת תשובה אם התשובות מסופקות על ידי ה-API או ה-webhook.

הנציג הקולי מבטא את הספרה אפס בתור האות O

בעיה

בסוכן שנועד לשיחות קוליות, הסוכן הקולי קורא את הספרה אפס בתור האות O ולא בתור אפס.

הפתרון

  1. משנים את הסוכן אומר לשימוש באפשרות הפלט של דיאלוג טקסט אודיו.
  2. מסמנים את תיבת הסימון SSML.
  3. מקיפים את הטקסט בתג SSML:
      <speak>
        <say-as interpret-as='verbatim'>YOUR_TEXT</say-as>
      </speak>
  4. שמירה.

לדוגמה, אם מספר כרטיס האשראי הוא 0000-0000-0000-0000, הוא ייאמר כך:

   <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>]

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

הפתרון

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

כדי לפתור את הבעיה:

  1. מעתיקים את מערך ה-JSON מהודעת השגיאה.
  2. (אופציונלי) כדי לשפר את הקריאות, אפשר לעצב את המערך המועתק כ-JSON יפה. אם הודעת השגיאה נחתכת, מחפשים את האובייקט האחרון מסוג Step, מוחקים את האובייקט הלא שלם מסוג Step ואת הפסיק שלפניו, ומוסיפים סוגר סוגר למערך לפני שמאמתים את ה-JSON ומעצבים אותו.
  3. בודקים את הערכים של "TriggeredTransitionRouteId" ו-"TargetPage" בכל שלב. במקרה של לולאה אינסופית, השדות "TriggeredTransitionRouteId" ו-"TargetPage" מכילים ערכים חוזרים ברוב השלבים.
  4. משנים את עיצוב הסוכן כדי להסיר את המעברים של הלולאה האינסופית או כדי לצמצם את מספר המעברים לכל תור בשיחה.

ההתאמה לביטוי הרגולרי רחבה מדי

בעיה

קיבלתי שגיאה Regular expression match is too broad כשניסיתי ליצור ישות של ביטוי רגולרי (Dialogflow CX, ‏ Dialogflow ES).

הפתרון

כדאי לנסות את הגישה הבאה:

  • משתמשים ב-^ וב-$ בביטוי הרגולרי כדי לציין את ההתחלה ואת הסוף של הטקסט, בהתאמה.
  • שימוש ביישות של ביטוי רגולרי עם פרמטר חובה (Dialogflow CX, ‏ Dialogflow ES).
  • מגדירים את ההנחיות לפרמטרים הנדרשים כדי לבקש ממשתמש הקצה לספק רק את ערך הישות בלי מילים מסביב.

תווים לא אלפאנומריים לא רצויים שנוספו על ידי זיהוי דיבור

בעיה

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

הפתרון

  1. אם אתם משתמשים בישויות מערכת להתאמת מספרים, כדאי להשתמש בישויות של ביטויים רגולריים (Dialogflow CX, ‏ Dialogflow ES) במקום זאת.
  2. פועלים לפי כל ההמלצות שבקטע זיהוי לא מדויק של דיבור עם ישויות אלפאנומריות באמצעות ביטויי regexp.
  3. כדי להתאים מספרים באמצעות שילובים של טלפוניה, כדאי להשתמש באפשרות DTMF בנוסף לזיהוי קולי.

תמלילים ריקים להזנות קוליות

בעיה

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

הפתרון

מאזינים להקלטת האודיו כדי לוודא שהיא מכילה דיבור.

מוודאים שהתאמת הדיבור מופעלת בהגדרות הסוכן (Dialogflow CX, ‏ Dialogflow ES).

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

  • latest_short
  • phone_call
  • command_and_search

בשפות אחרות מלבד אנגלית, אפשר למצוא את מודלי הדיבור הנתמכים במסמכי התיעוד בנושא שפות נתמכות של Speech-to-Text.

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

  • בבקשות API, צריך לציין את שם המודל בשדה model ב-InputAudioConfig (Dialogflow CX,‏ Dialogflow ES).

  • אם אתם משתמשים ב-Phone Gateway‏ (Dialogflow CX,‏ Dialogflow ES), אתם יכולים לעדכן את מודל הדיבור בפרופיל השיחה שנוצר על ידי Dialogflow כשהפעלתם את השילוב:

    1. שליפת מזהה פרופיל השיחה:

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

      ב-Dialogflow CX Phone Gateway, השם לתצוגה של פרופיל השיחה מופיע בהגדרות השילוב. ב-Dialogflow ES Phone Gateway, השם המוצג של פרופיל השיחה תואם לשם הסוכן שבו הופעלה האינטגרציה.

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

    2. משתמשים בשיטת ה-API‏ conversationProfiles.patch כדי לעדכן את השדה model ב-SpeechToTextConfig.

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

הסבר על שגיאות לולאה ב-Playbook

בעיה

כשמנסים לקשר בין מחזורי חיים, מופיעה השגיאה Playbook <playbookID> caused loop in playbook routes.

הפתרון

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

שגיאה במסך ריק 'גודל הקובץ גדול מ-2MB' כשמשווים בין גרסאות של סוכן

בעיה

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

File size exceeds 2MB

הבעיה הזו מתרחשת אם אחד מהקבצים גדול מ-2MB.

הפתרון

כדי להשוות בין גרסאות של סוכנים שאחד מהקבצים שלהם גדול מ-2MB, מומלץ להשתמש בשיטת ה-API‏ compareVersion.

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

בעיה

קיבלתי תמלילים לא מדויקים של קלט קולי של נתונים אלפאנומריים שנועדו להתאים ליישות של ביטוי רגולרי (Dialogflow CX,‏ Dialogflow ES).

הפתרון

  1. מוודאים שהתאמת הדיבור מופעלת בהגדרות הסוכן (Dialogflow CX,‏ Dialogflow ES).
  2. מוודאים שלפחות רשומה אחת של ישות עומדת בכל הדרישות של רשומות ביטוי רגולרי (Dialogflow CX, Dialogflow ES).
  3. לדפוסים ספציפיים, כדאי להשתמש בביטויים רגולריים ספציפיים ככל האפשר. לדוגמה, אם רוצים להשתמש בערך אלפאנומרי שמתחיל בשתי אותיות וממשיך בחמש ספרות, צריך להשתמש ב-[a-zA-Z]{2}\d{5} במקום ב-[a-zA-Z0-9]{7}.
  4. צריך לוודא שבישות הביטוי הרגולרי מוגדרת אפשרות להתאמה של תווים לא אלפאנומריים (רווחים, מקפים וכו') שיכולים להיות מוכנסים על ידי מנגנון זיהוי הדיבור. כדי לעמוד בדרישה 2 מהרשימה הזו, צריך ליצור כמה רשומות של ישויות: רשומה אחת שתעמוד בדרישה 2 מהרשימה הזו, ורשומה נוספת שתתייחס לתווים שאינם אלפאנומריים. לדוגמה, כדי להתאים חמש ספרות ולאפשר תווים שאינם אלפאנומריים:
     \d{5}
     (\d[^a-zA-Z0-9]*){5}
    
  5. מוודאים שהסוכן עומד בדרישה להגדרת פרמטרים (Dialogflow CX, Dialogflow ES).

    דוגמה ל-Dialogflow CX

    פרמטר נדרש ב-Dialogflow CX

    דוגמה ל-Dialogflow ES

    פרמטרים נדרשים ב-Dialogflow ES
  6. מוודאים שהסוכן עומד בדרישה בנוגע להערות של ביטויי אימון (Dialogflow CX,‏ Dialogflow ES).

    דוגמה ל-Dialogflow ES

    אין הערות בביטויי אימון ב-Dialogflow ES
  7. חשוב לוודא שהבדיקות שלכם עומדות בהנחיות לבדיקה (Dialogflow CX,‏ Dialogflow ES).
  8. כדי להסיר תווים שהם לא אלפאנומריים, שאולי הוכנסו על ידי מערכת זיהוי הדיבור, משתמשים בפקודה הבאה:
  9. בדיקת מגבלות ההתאמה לדיבור (Dialogflow CX, Dialogflow ES).

תכנון שיחות מבוקרות

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

ניתוח יומנים

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

התנסות בכתיבת הנחיות

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

מספקים מידע מלא לתמיכה

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