ארכיטקטורה ומושגי מפתח של Conversational Analytics API

במאמר הזה מתוארים מושגים מרכזיים לשימוש ב-API של Conversational Analytics (שאפשר לגשת אליו דרך geminidataanalytics.googleapis.com או נקודות קצה אזוריות). ה-API הזה מאפשר ליצור סוכני נתונים ולקיים איתם אינטראקציה. סוכני הנתונים משתמשים בשפה טבעית כדי לענות על שאלות לגבי הנתונים המובְנים שלכם. במסמך הזה מוסבר על ארכיטקטורת הסוכן, תהליכי עבודה אופייניים, מצבי שיחה, תפקידים בניהול הזהויות והרשאות הגישה (IAM) ועיצוב של מערכת מרובת סוכנים.

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

איך סוכני נתונים עובדים

סוכני נתונים של Conversational Analytics API משתמשים בהקשר (מידע עסקי ונתונים) שאתם מספקים, ובכלים (כמו SQL ו-Python) כדי לפרש שאלות בשפה טבעית וליצור תשובות מהנתונים המובְנים שלכם.

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

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

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

  1. קלט: המשתמש שולח שאלה בשפה טבעית, יחד עם כל הקשר הנוסף שסיפקתם קודם.
  2. מקורות נתונים: הסוכן מתחבר לנתונים שלכם ב-Looker, ב-BigQuery (כולל טבלאות או גרף) וב-Data Studio כדי לספק יכולות צ'אט. אפשר גם לשלוח שאילתות לנתונים ממסדי נתונים של AlloyDB,‏ GoogleSQL ל-Spanner,‏ Cloud SQL ל-MySQL ו-Cloud SQL ל-PostgreSQL באמצעות השיטה QueryData.
  3. מנוע חשיבה רציונלית: ליבת הסוכן מעבדת את השאלה של המשתמש באמצעות כלים זמינים כדי ליצור תשובה.
  4. פלט: הסוכן מחזיר זרם של הודעות, שיכולות להכיל טקסט, נתונים או תרשימים. יכול להיות שההודעות האלה יכללו ציטוטים שמקשרים בין חלקים ספציפיים של טקסט התשובה לבין מקורות ההקשר שסיפקתם, כמו מונחים במילון מונחים או שאילתות לדוגמה. בחלק ממקורות הנתונים, הודעות טקסט מספקות תובנות שלב אחר שלב לגבי ההיגיון של הסוכן, מדווחות על התקדמות בפעולה או מספקות את התשובה הסופית לשאילתה.

תהליכי עבודה לעיצוב סוכנים ולשימוש בהם

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

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

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

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

תהליך העבודה ליצירת סוכן

יוצר הסוכן אחראי להגדרה ולתצורה של הסוכנים. תהליך העבודה הזה כולל את השלבים הבאים:

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

תהליך העבודה של הלקוח עם הסוכן

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

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

מצבי שיחה

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

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

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

מצבי הצ'אט השונים של סוכן Conversational Analytics API.

תפקידי IAM

תפקידי IAM קובעים מי יכול ליצור סוכנים של Conversational Analytics API, לנהל אותם, לשתף אותם ולקיים איתם אינטראקציה. בטבלה הבאה מפורטים התפקידים העיקריים ב-IAM עבור Conversational Analytics API:

תפקיד היקף טיפוסי מה התפקיד מאפשר מי יכול להשתמש בתפקיד הזה
‫Gemini Data Analytics Data Agent Creator (roles/geminidataanalytics.dataAgentCreator) פרויקט ליצור סוכנים ולקבל בירושה הרשאות בעלים בסוכן. כל מנתח נתונים
בעלים של סוכן נתונים ב-Gemini Data Analytics ‏ (roles/geminidataanalytics.dataAgentOwner) פרויקט, סוכן עריכה, שיתוף או מחיקה של סוכנים עם משתמשים אחרים. מנתח נתונים בכיר
עריכה ב-Gemini Data Analytics Data Agent (roles/geminidataanalytics.dataAgentEditor) סוכן, פרויקט עדכון ההגדרה או ההקשר של סוכן. מנתח נתונים מתחיל
משתמש בסוכן הנתונים של Gemini Data Analytics‏ (roles/geminidataanalytics.dataAgentUser) סוכן, פרויקט צ'אט עם נציג תמיכה. משווק, בעל חנות
‫Gemini Data Analytics Data Agent Viewer ‏ (roles/geminidataanalytics.dataAgentViewer) פרויקט, סוכן הצגת רשימת הסוכנים וקבלת הפרטים שלהם. אי אפשר לערוך את הסוכן. כל משתמש
משתמש בשאילתות נתונים ב-Gemini Data Analytics‏ (roles/geminidataanalytics.queryDataUser) פרויקט שליחת שאילתות לנתונים ממקורות מסדי נתונים נתמכים באמצעות השיטה QueryData. מפתח אפליקציות, מנתח נתונים
משתמש ב-Gemini Data Analytics ללא שמירת מצב (roles/geminidataanalytics.dataAgentStatelessUser) פרויקט צ'אט עם נציג בלי לשמור את ההקשר או את היסטוריית השיחות. כל משתמש

מערכות עם כמה סוכנים

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

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

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

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

  1. משתמש עסקי או אנליסט נתונים שואל שאלה בשפה טבעית, למשל 'תציג לי את שלוש החנויות המובילות לפי הכנסות'.
  2. סוכן ראשי מסוג "מנהל" מעביר את הבקשה לסוכן המתאים שמתמחה בתחום.
  3. סוכן ייעודי מקבל את הבקשה שהועברה אליו, מתחבר למקורות הנתונים הרלוונטיים, משתמש בכלים שלו כדי ליצור את השאילתות והתרשימים הדרושים ב-SQL, ומפיק תשובה.
  4. התשובה של הסוכן המומחה מוחזרת למשתמש, למשל: 'החנויות 4, 9 ו-3 מניבות את ההכנסות הכי גבוהות'. הנה תרשים".

המאמרים הבאים

אחרי שמבינים את מושגי הליבה של Conversational Analytics API, אפשר ללמוד איך להטמיע את התכונות האלה: