ai-agents-for-beginners

זיכרון עבור סוכני AI

זיכרון סוכן

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

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

הקדמה

השיעור יעסוק ב:

הבנת זיכרון סוכני AI: מהו זיכרון ולמה הוא חיוני עבור סוכנים.

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

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

מטרות למידה

לאחר סיום השיעור, תדעו כיצד:

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

ליישם ולנהל זיכרון קצר טווח וארוך טווח עבור סוכני AI באמצעות מסגרת Semantic Kernel, תוך שימוש בכלים כמו Mem0 וזיכרון לוח מחיק, ושילוב עם Azure AI Search.

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

הבנת זיכרון סוכני AI

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

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

למה זיכרון חשוב?

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

רפלקטיביים: ללמוד מפעולות ותוצאות קודמות.

אינטראקטיביים: לשמור על הקשר במהלך שיחה מתמשכת.

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

אוטונומיים: לפעול בצורה עצמאית יותר על ידי שימוש בידע שנשמר.

המטרה של יישום זיכרון היא להפוך את הסוכנים ליותר אמינים ומסוגלים.

סוגי זיכרון

זיכרון עבודה

חשבו על זה כמו דף טיוטה שהסוכן משתמש בו במהלך משימה או תהליך מחשבה אחד. הוא מחזיק מידע מיידי הדרוש לחישוב הצעד הבא.

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

דוגמה לזיכרון עבודה

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

זיכרון קצר טווח

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

דוגמה לזיכרון קצר טווח

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

זיכרון ארוך טווח

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

דוגמה לזיכרון ארוך טווח

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

זיכרון פרסונה

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

דוגמה לזיכרון פרסונה

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

זיכרון אפיזודי/תהליכי עבודה

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

דוגמה לזיכרון אפיזודי

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

זיכרון ישויות

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

דוגמה לזיכרון ישויות

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

RAG מובנה (הפקה מוגברת על ידי שליפה)

בעוד ש-RAG היא טכניקה רחבה יותר, “RAG מובנה” מודגש כטכנולוגיית זיכרון חזקה. הוא מפיק מידע מובנה וצפוף ממקורות שונים (שיחות, מיילים, תמונות) ומשתמש בו לשיפור דיוק, שליפה ומהירות בתגובות. בניגוד ל-RAG קלאסי שמסתמך רק על דמיון סמנטי, RAG מובנה עובד עם המבנה הפנימי של המידע.

דוגמה ל-RAG מובנה

במקום רק להתאים מילות מפתח, RAG מובנה יכול לנתח פרטי טיסה (יעד, תאריך, שעה, חברת תעופה) ממייל ולאחסן אותם בצורה מובנית. זה מאפשר שאילתות מדויקות כמו “איזו טיסה הזמנתי לפריז ביום שלישי?”

יישום ואחסון זיכרון

יישום זיכרון עבור סוכני AI כולל תהליך שיטתי של ניהול זיכרון, הכולל יצירה, אחסון, שליפה, שילוב, עדכון ואפילו “שכחה” (או מחיקה) של מידע. שליפה היא היבט קריטי במיוחד.

כלים מיוחדים לניהול זיכרון

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

הוא פועל דרך צינור זיכרון דו-שלבי: הפקה ועדכון. תחילה, הודעות שנוספו לשרשור של סוכן נשלחות לשירות Mem0, שמשתמש במודל שפה גדול (LLM) כדי לסכם את היסטוריית השיחה ולהפיק זיכרונות חדשים. לאחר מכן, שלב עדכון מונע LLM קובע האם להוסיף, לשנות או למחוק את הזיכרונות הללו, ומאחסן אותם במאגר נתונים היברידי שיכול לכלול וקטור, גרף ומאגרי נתונים של מפתח-ערך. מערכת זו תומכת גם בסוגי זיכרון שונים ויכולה לשלב זיכרון גרפי לניהול קשרים בין ישויות.

אחסון זיכרון עם RAG

מעבר לכלי זיכרון מיוחדים כמו Mem0, ניתן להשתמש בשירותי חיפוש מתקדמים כמו Azure AI Search כבסיס אחסון ושליפה של זיכרונות, במיוחד עבור RAG מובנה.

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

Azure AI Search תומך ביכולות כמו RAG מובנה, שמצטיין בהפקה ושליפה של מידע מובנה וצפוף ממאגרי נתונים גדולים כמו היסטוריות שיחה, מיילים או אפילו תמונות. זה מספק “דיוק ושליפה על-אנושיים” בהשוואה לגישות מסורתיות של חיתוך טקסט והטמעה.

הפיכת סוכני AI למשתפרים בעצמם

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

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

  2. להפיק ולסכם: לזקק את הלמידה או ההעדפה החשובה מהשיחה.

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

  4. להעשיר שאילתות עתידיות: כאשר המשתמש מתחיל שאילתה חדשה, סוכן הידע שולף מידע רלוונטי שנשמר ומוסיף אותו להנחיית המשתמש, ומספק הקשר חשוב לסוכן הראשי (בדומה ל-RAG).

אופטימיזציות לזיכרון

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

תחזוקת בסיס הידע: עבור בסיס ידע שגדל, מידע פחות בשימוש יכול לעבור ל”אחסון קר” כדי לנהל עלויות.

יש לכם שאלות נוספות על זיכרון סוכנים?

הצטרפו ל-Azure AI Foundry Discord כדי לפגוש לומדים אחרים, להשתתף בשעות קבלה ולקבל תשובות לשאלות שלכם על סוכני AI.


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