בדף הזה מוסבר איך לספק בצורה הטובה ביותר הקשר שנכתב על ידי מחברים לסוכני נתונים של Conversational Analytics API. לשם כך, צריך לכתוב הנחיות יעילות באמצעות הוראות מערכת, ובחלק ממקורות הנתונים, גם לספק הקשר מובנה. הוספת הקשר היא אופציונלית, אבל הקשר מובנה היטב יכול לשפר את הדיוק והרלוונטיות של התשובות שה-API מספק.
מהו הקשר שנוצר על ידי מחבר?
הקשר מחבר הוא הנחיה שמפתחים יכולים לספק כדי לעצב את ההתנהגות של סוכן נתונים ולשפר את התגובות של ה-API. ההנחיות האלה כוללות הוראות מערכת חופשיות, ובחלק ממקורות הנתונים יש שדות הקשר מובנים עם מידע כמו תיאורי טבלאות ושאילתות לדוגמה. כדי לענות על שאלות, הסוכן משלב את ההקשר שנוצר עם מידע ממקורות נתונים (כמו טבלאות BigQuery, ניתוחים ב-Looker ומקורות נתונים ב-Looker Studio) ועם היסטוריית השיחות (בשיחות מרובות תגובות).
אם תספקו הנחיות ברורות באמצעות שדות הקשר מובנים והוראות מערכת חופשיות, תוכלו לשפר את היכולת של הסוכן לפרש את שאלות המשתמשים וליצור תשובות שימושיות ומדויקות. הקשר מוגדר היטב שימושי במיוחד אם מתחברים לנתונים כמו טבלאות BigQuery. לדוגמה, אתם יכולים להשתמש בהקשר שנוצר כדי לספק לסוכן הנחיות מהסוגים הבאים:
- לוגיקה ספציפית לעסק: הגדרה של לקוח נאמן כמי שביצע יותר מחמש רכישות בפרק זמן מסוים.
- עיצוב התשובה: כדי לחסוך למשתמשים זמן, סכם את כל התשובות של סוכן הנתונים ב-20 מילים או פחות.
- הצגת נתונים: צריך לעצב את כל המספרים בהתאם לסגנון שמוגדר במדריך הסגנון של החברה.
לספק הקשר שנוצר על ידי המחבר
המידע הספציפי שאפשר לספק תלוי במקור הנתונים. בנתונים ב-BigQuery ובנתונים ב-Looker, אפשר להגדיר גם הקשר מובנה וגם הוראות למערכת. כדי לקבל את התוצאות הטובות ביותר, כדאי קודם לספק הקשר לסוכן באמצעות השדות המובנים הזמינים. לאחר מכן תוכלו לספק הנחיות נוספות על ידי הגדרת הוראות למערכת.
אתם מספקים הקשר מובנה בשדות API לפרטים כמו תיאורי טבלאות ושאילתות לדוגמה. אתם מספקים את ההוראות למערכת כמחרוזת בפורמט YAML באמצעות הפרמטר system_instruction.
אחרי שמגדירים את ההקשר שנוצר, אפשר לספק אותו ל-API באחת מהקריאות הבאות:
- יצירת סוכן נתונים קבוע: כדי להגדיר התנהגות של סוכן שנשמרת בכמה שיחות, צריך לכלול הקשר שנוצר על ידי מחבר באובייקט
published_contextבגוף הבקשה. מידע נוסף זמין במאמרים יצירת סוכן נתונים (HTTP) או הגדרת הקשר לשיחה עם שמירת מצב או ללא שמירת מצב (Python SDK). - שליחת בקשה בלי שמירת מצב: כדי להגדיר את ההתנהגות של ה-Agent עבור קריאה ספציפית ל-API, צריך לספק הקשר שנוצר בתוך אובייקט
inline_contextבבקשה לצ'אט. מידע נוסף אפשר למצוא במאמר יצירת שיחה מרובת תפניות בלי שמירת מצב (HTTP) או במאמר שליחת בקשת צ'אט בלי שמירת מצב עם הקשר מוטבע (Python SDK). - שליחת בקשה לנתוני שאילתה: במקורות נתונים של מסד נתונים, צריך לציין את מזהה קבוצת ההקשר של ההקשר שנוצר באובייקט
agent_context_referenceבבקשה לנתוני שאילתה. מידע נוסף זמין במאמר הגדרת הקשר של סוכן הנתונים למקורות נתונים של מסדי נתונים.
שיטה מומלצת ליצירת סוכנים: שימוש בניהול גרסאות להקשר שנוצר
כדי לשלוט בגרסאות של ההקשר כשמפתחים סוכנים באמצעות Conversational Analytics API, משתמשים בשדות stagingContext, publishedContext ו-lastPublishedContext. תרחיש השימוש הבא ממחיש איך להשתמש בשדות האלה כדי ליצור גרסת ביניים וגרסת ייצור של הקשר של הסוכן.
נניח שאתם משתמשים בסוכן קיים עם השדה publishedContext, אבל אתם צריכים לעדכן את הסוכן (לדוגמה, לשנות את כל התרשימים לירוקים במקום לכחולים).
כדי לבצע שינויים ולבדוק אותם לפני הפרסום, פועלים לפי השלבים הבאים:
- מבצעים את השינויים בסוכן בשדה
stagingContextובודקים את הסוכן עם השינויים. - כשהשינויים מוכנים, מעדכנים את השדה
publishedContextעם השינויים מ-stagingContext. - אם רוצים לחזור לסוכן הקודם, אפשר לעדכן את
publishedContextל-lastPublishedContext.
מקורות מידע שקשורים לנושא
- איך יוצרים סוכן נתונים באמצעות HTTP ו-Python
- פיתוח סוכן נתונים באמצעות Python SDK
- הגדרת הקשר של סוכן הנתונים למקורות נתונים של BigQuery
- הגדרה של הקשר של סוכן הנתונים למקורות נתונים של Looker
- הגדרת הקשר של סוכן הנתונים למקורות נתונים של מסדי נתונים