- Published on
עדכון סוכני AI של מיקרוסופט מעצב מחדש סוכנים אינטליגנטיים ארכיטקטורה רב-שכבתית חזקה יותר
[article]
עדכונים עיקריים בגרסה 0.4 של AutoGen
מיקרוסופט חשפה עדכון משמעותי למסגרת סוכני ה-AI בקוד פתוח שלה, AutoGen, עם שחרור גרסה 0.4. הספרייה המשופצת הזו מתהדרת ביציבות קוד משופרת, חוסן, רבגוניות ומדרגיות, ומעצימה מפתחים ליצור יישומי סוכני AI מתקדמים וחדשניים.
הודעות אסינכרוניות: סוכנים מתקשרים כעת באמצעות העברת הודעות אסינכרונית, מה שמאפשר להם להמשיך במשימות מבלי להמתין לתגובות מסוכנים אחרים. זה מועיל במיוחד ליישומים מונעי אירועים שבהם סוכנים מגיבים לטריגרים ספציפיים. מודל הבקשה/תגובה המסורתי נתמך גם כן.
מודולריות והרחבה: משתמשים יכולים לשלב סוכנים מותאמים אישית, כלים, זיכרון ומודלים כדי לבנות מערכות סוכנים המותאמות לצרכים עסקיים ספציפיים. זה כולל רישום סוגי סוכנים וכלים שונים כדי להשיג יעדי אוטומציה ספציפיים.
יכולת תצפית וניפוי באגים: כלים מובנים למעקב אחר מדדים, מעקב אחר הודעות וניפוי באגים מאפשרים ניטור ושליטה באינטראקציות ובזרימות עבודה של סוכנים. ניתן לתעד בבירור כל שלב בזרימת העבודה של סוכן - כולל שיחות מודל גדולות, שימוש בכלים, פלטים ביניים, מצבי זיכרון ותבניות הנחיות. זה חיוני לתעשיות הדורשות מעקב מדויק אחר פעולות סוכנים, כגון שירותי בריאות, משפטים ופיננסים.
מדרגיות והפצה: ניתן לעצב רשתות סוכנים מורכבות ומבוזרות כך שיפעלו בצורה חלקה מעבר לגבולות ארגוניים. ארכיטקטורה מבוזרת מקלה על פריסת סוכנים בשרתים שונים או בפלטפורמות ענן, תוך אופטימיזציה של הקצאת משאבים וניצולם.
תוספים מובנים וקהילתיים: הפונקציונליות של המסגרת משופרת על ידי תוספים הכוללים לקוחות מודל מתקדמים, סוכנים, צוותים מרובי סוכנים וכלי זרימת עבודה של סוכנים. תמיכה קהילתית מאפשרת למפתחים לנהל תוספים משלהם, ליצור ולשתף סוכנים או כלים מותאמים אישית. מפתחים יכולים להשתמש בתוספים אלה לצרכים נפוצים, מה שמפחית את מורכבות הפיתוח והמחסומים.
תמיכה בין שפות: AutoGen תומך כעת באינטראופרביליות בין סוכנים שנכתבו בשפות תכנות שונות, כמו Python ו-.NET. תכונה זו מרחיבה את היקף היישום של AutoGen ומסירה מכשולים הנובעים מהבדלי שפה.
מעבר ליכולות החדשות הללו, מיקרוסופט שינתה את המבנה של AutoGen, הכולל את הליבה, צ'אט הסוכנים וההרחבות. הליבה משמשת כבסיס למערכת הסוכנים המונעת אירועים. צ'אט הסוכנים, שנבנה על הליבה, כולל ממשקי API מתקדמים לניהול משימות, צ'אטים קבוצתיים, ביצוע קוד וסוכנים מובנים מראש. הרחבות מאפשרות שילוב של צד שלישי עם שירותים כמו מבצעי קוד Azure ומודלים של OpenAI.
שיפורי ממשק משתמש
ממשק המשתמש עבר גם הוא שיפורים משמעותיים:
- משוב אינטראקטיבי באמצעות ממשק המשתמש, המאפשר לסוכני משתמש לספק קלט והכוונה בזמן אמת במהלך פעולות צוות.
- הדמיה של זרימת הודעות, המציגה ממשק אינטואיטיבי להבנת תקשורת סוכנים, מיפוי נתיבי הודעות ותלות.
- ממשק גרירה ושחרור ויזואלי, המאפשר למשתמשים לעצב סוכנים על ידי הצבה והגדרה של רכיבים עם היחסים והמאפיינים שלהם.
שילוב עם Magentic-One
Magentic-One, סוכן AI כללי רב-שכבתי נוסף בקוד פתוח של מיקרוסופט, משולב כעת ב-AutoGen. ל-Magentic-One יש ארכיטקטורה רב-שכבתית המורכבת מחמישה סוכני AI: Orchestrator, WebSurfer, FileSurfer, Coder ו-ComputerTerminal. לכל סוכן מומחה יש מערך מיומנויות ובסיס ידע משלו, המאפשר לו לעבוד ביעילות בתחומו. עם זאת, סוכנים אלה אינם פועלים בבידוד; ה-Orchestrator מתאם את פעילותם כדי להבטיח שהם עקביים ועומדים ביעדים הכוללים.
ה-Orchestrator אחראי לתכנון משימות, מעקב אחר התקדמות ושחזור שגיאות. עם קבלת משימה, הוא מנתח ביסודיות את הדרישות ומקצה משימות משנה לארבעת הסוכנים האחרים. סוכנים מומחים אלה מיומנים בטיפול בסוגים ספציפיים של משימות. סוכן WebBrowser מטפל בגלישה באינטרנט, סוכן FileNavigator מנהל ניווט במערכת קבצים מקומית, סוכן Code Writer כותב ומבצע קטעי קוד Python, ו-ComputerTerminal מבצע פקודות ברמת מערכת ההפעלה כדי לתמוך במשימות ברמה גבוהה יותר.
מאפיין מהותי של ארכיטקטורת Magentic-One הוא פעולה אסינכרונית מונעת אירועים. בניגוד למודל הבקשה-תגובה הסינכרוני, שיטות אסינכרוניות מאפשרות לרכיבי מערכת לפעול במקביל, לקבל קלטים חדשים או להפעיל פעולות בכל עת מבלי לעצור פונקציות אחרות. לדוגמה, סוכן WebBrowser יכול להתחיל לטעון דף כאשר ה-Orchestrator מקצה לו משימה הכוללת הורדה וחילוץ מידע מדף אינטרנט, בעוד ה-Orchestrator וסוכנים אחרים ממשיכים במשימות אחרות. לאחר שהדף נטען והנתונים הנדרשים חולצו, סוכן WebBrowser מודיע ל-Orchestrator ומחזיר את התוצאות. אסטרטגיה זו מאפשרת ל-Magentic-One לנהל משאבים בצורה יעילה יותר, להפחית זמני המתנה ולהגיב בצורה יעילה יותר לתרחישים של מקביליות גבוהה.
בנוסף לארכיטקטורה האסינכרונית שלה, Magentic-One נבדלת בעיצוב המודולרי ביותר שלה. כל סוכן הוא יחידה פונקציונלית עצמאית עם אחריות ברורה והגדרות ממשק. גישה זו מפשטת את בניית המערכת, מכיוון שמפתחים יכולים להתרכז בתפקוד של סוכן בודד מבלי לדאוג לפרטי האינטראקציה עם רכיבים אחרים. מודולריות מקדמת גם שימוש חוזר בקוד ושיתוף טכני, ומאפשרת להשתמש בסוכנים קיימים בפרויקטים חדשים או להתאים אותם ליישומים שונים בשינוי מינימלי. העיצוב המודולרי של Magentic-One מספק גם מדרגיות משמעותית. ניתן להוסיף סוכנים חדשים או לעדכן פונקציות סוכנים קיימות ללא שיפוץ מערכות גדול, ככל שהטכנולוגיה מתקדמת או שדרישות העסק משתנות. לדוגמה, אם משימה בתחום ספציפי הופכת מורכבת יותר, ניתן לשפר את המערכת על ידי הוספת סוכן מומחה.