Dialogflow CX משתלב עם ספקי Git רבים (GitHub, Gitlab, Bitbucket ועוד). האינטגרציה הזו מאפשרת לכם לייצא את הסוכן ל-JSON כדי לשלוח אותו לספק Git, וגם לשלוף נתונים מספק Git כדי לשחזר סוכן. פורמט ה-JSON שמיוצא ומועבר לספק Git הוא התוכן של קובץ ה-zip המורחב של הסוכן המיוצא.
השימוש בתכונה הזו מאפשר לכם ליהנות מתכונות של ספק Git לשליטה במקור, כמו:
- סוכנים משנים ביקורות באמצעות כלים לסקר קוד
- בדיקת הבדלים בין סוכנים באמצעות כלי השוואה
- מיזוגים
מגבלות
ההגבלות הבאות חלות:
- [רק בגרסה ישנה של השילוב] יש מגבלה ב-GitHub APIs על מספר הקבצים שאפשר לעדכן בהעלאה אחת. אם מספר הקבצים גדול מ-500, יכול להיות שלא תוכלו לבצע push ל-GitHub מ-Dialogflow CX. במקרים כאלה, אפשר לייצא את הסוכן כקובץ ZIP ולהשתמש ב-Git CLI במחשב כדי להעלות את קובצי הסוכן ל-GitHub. המגבלה הזו תטופל באחת מהגרסאות הבאות של Dialogflow CX.
- אין תמיכה במאגרי self-hosted פרטיים ב-GitHub, כי ל-Dialogflow CX אין גישה למאגרים האלה.
- מאגר Git לא יכול להכיל קבצים אחרים מלבד קבצי הסוכן שיוצאו על ידי ייצוא הסוכן. כל קובץ אחר במאגר יוסר בכל פעולת push.
הגדרות אישיות
כדי להגדיר את התכונה הזו, צריך לקבל טוקן גישה מספק Git, לאחסן אותו ב-Secret Manager ולספק את משאב הסוד ל-Dialogflow CX:
טוקן גישה
כדי לקבל טוקן גישה מספק Git:
GitHub
צריך להשיג אסימון אישי של GitHub. אם משתמשים באסימון גישה אישי עם הרשאות מפורטות, צריך את הרשאות הגישה הבאות:
- הרשאות מאגר > תוכן: קריאה וכתיבה
- הרשאות למאגר > מטא-נתונים: קריאה בלבד (אמור להיבחר אוטומטית אחרי בחירת ההרשאה 'תוכן')
Gitlab
צריך לקבל אסימון גישה אישי של Gitlab.
Bitbucket
צריך להשיג טוקן גישה ל-Bitbucket.
Secret Manager
אחרי שיש לכם טוקן גישה, אתם צריכים ליצור סוד לטוקן:
הגדרת Dialogflow CX
כדי להגדיר את השילוב הזה עם Dialogflow CX:
- נותנים לסוכן השירות של Dialogflow הרשאה לגשת לסוד של אסימון הגישה ב-Secret Manager.
מקצים את התפקיד
Secret Manager Secret Accessorלחשבון השירותgcp-sa-dialogflow.iam.gserviceaccount.comבפרויקט של הסוכן. איך מעניקים גישה לסוד ב-Secret Manager - פותחים את ההגדרות של שילוב Git:
- מסוף של כלי ליצירת סוכנים בממשק שיחה
- לוחצים על סמל ההגדרות בפינה השמאלית העליונה כדי לפתוח את תצוגת ההגדרות.
- גוללים למטה ולוחצים על הוספת שילוב של Git.
- מסוף Dialogflow CX
- לוחצים על הכרטיסייה ניהול.
- בקטע בדיקה ופריסה, לוחצים על Git.
- לוחצים על חדש.
- מסוף של כלי ליצירת סוכנים בממשק שיחה
- מזינים את פרטי ההגדרה:
- מזינים את הפרטים הבאים:
- השם המוצג של החיבור ל-GitHub.
- כתובת URL למאגר Git (לדוגמה:
https://github.com/<path-to-repo>.git). - מוסיפים ענפים ב-Git שהסוכן יקיים איתם אינטראקציה. כדי להגדיר ענף כענף ברירת המחדל, לוחצים על סמל הכוכב שלצידו.
- סוד של טוקן גישה,
שהוא הגרסה הסודית שיצרתם בטופס
projects/*/secrets/*/versions/*לגרסה ספציפית אוprojects/*/secrets/*/versions/latestלגרסה האחרונה.
- לוחצים על Connect.
- יכול להיות שיעברו כמה דקות עד ששירות Git יהיה מוכן. יוצגו התראות במסוף.
- מזינים את הפרטים הבאים:
העברה ושחזור
אחרי ההגדרה, אפשר להעביר את הסוכן אל Git או להוריד אותו מ-Git.
הלחצן Push משמש לייצוא הסוכן וליצירת קומיט בהסתעפות Git שנבחרה בתפריט הנפתח של הסתעפות Git. הקומט הזה יכלול את הסוכן כולו ולא שינויים ספציפיים, וימחק את כל הקבצים הקיימים במאגר.
למשתמשים עם תפקידי Dialogflow Reader יש אפשרות לשלוח אל מאגרי Git. כדי למנוע שליחת הודעות פוש לא רצויות, צריך להגדיר את הסוכנים האלה עם טוקנים של גישה אישית לקריאה בלבד.
הלחצן שחזור משמש לשליפת נתוני הסוכן מהענף של Git שנבחר בתפריט הנפתח של ענף Git, ולשחזור הסוכן של Dialogflow CX מהנתונים האלה. הפעולה הזו תחליף את הסוכן, בדיוק כמו שקורה כשמשחזרים סוכן.
תרחיש שימוש לדוגמה
בדוגמה הבאה אפשר לראות איך כמה אנשים יכולים להשתמש בתכונה הזו כדי להציע שינויים שונים לסוכן בייצור.
נניח שהסוכן שלכם משתמש בהסתעפויות Git הבאות:
- Prod: הענף של הסוכן בסביבת הייצור
- Dev1: ענף לפיתוח סוכנים
- Dev2: ענף נוסף לפיתוח סוכנים
משתמש 1 רוצה להציע שינויים בסוכן ומבצע את השלבים הבאים:
- מייצאים את הסוכן לסביבת הייצור לסוכן חדש.
- מבצעים את השינויים הרצויים בעותק של הסוכן.
- בודקים את השינויים.
- דוחפים את הסוכן ששונה אל הענף Dev1.
- יוצרים בקשת מיזוג לענף Prod.
משתמש 2 רוצה להציע שינויים בסוכן, והוא מבצע את הפעולות הבאות:
- מייצאים את הסוכן לסביבת הייצור לסוכן חדש.
- מבצעים את השינויים הרצויים בעותק של הסוכן.
- בודקים את השינויים.
- מעבירים את הסוכן ששונה אל הענף Dev2.
- יוצרים בקשת מיזוג לענף Prod.
משתמש 3 בודק את בקשות המיזוג משני המשתמשים ומבצע את הפעולות הבאות:
- לפתור את הבעיות.
- השינויים שאושרו יגובו.
- משחזר את ענף ה-Git של הייצור לסוכן הייצור של Dialogflow CX.