בקצרה
מערכת מרובת סוכנים (Multi Agent System) מתאמת בין כמה סוכנים כדי להשלים משימה. היא מתאימה כאשר הפרדה ברורה של ידע, כלים או עבודה עצמאית מצדיקה את התיאום. מתחילים מסוכן יחיד או מתהליך מוגדר, ומוסיפים סוכן רק כשאפשר להראות איזו בעיה ההפרדה הזאת פותרת.
תהליך עסקי אינו בהכרח צוות סוכנים
תהליך עם כמה שלבים לא בהכרח דורש כמה מקבלי החלטות עצמאיים. מאמר הארכיטקטורה של Anthropic מבחין בין תהליכים שהוגדרו מראש לבין סוכנים שבוחרים באופן דינמי את הצעד הבא. השתמשו בהבחנה כדי להחליט היכן המודל צריך לבחור והיכן הלוגיקה העסקית הקיימת כבר מספקת תשובה.
למשל, בדיקת שדה חובה, אימות הרשאה לחשבון וכתיבת עדכון מאושר יכולים להישאר בקוד היישום. סוכן יכול לסייע בפירוש הבקשה בלי לנהל כל שלב. מטרת התכנון היא השלמה של משימה עסקית בהתנהגות שאפשר להבין, ולא מספר מרשים של סוכנים.
משווים סוכן יחיד למערכת מרובת סוכנים באותם מדדים
התיעוד העדכני של LangChain מציין שסוכן יחיד עם כלים והקשר מתאימים עשוי להספיק גם לעבודה מורכבת. הוא מציג ניהול הקשר, פיתוח עצמאי ועבודה מקבילית כסיבות לשקול כמה רכיבים. אלה שיקולי תכנון, ולא הוכחה שפיצול התהליך שלכם ישפר אותו.
- משימה ויכולות: סוכן יחיד מתאים למשימה מוגדרת עם הקשר אחיד; כמה סוכנים עשויים לעזור כשההתמחויות דורשות ידע או כלים שונים באופן מהותי.
- אינטגרציה: סוכן אחד יכול לפנות לכמה שירותים קיימים; כמה סוכנים עדיין צריכים חוזי ממשק לשירותים וגם להעברות ביניהם.
- שליטה בקוד ובנתונים: בשתי האפשרויות נדרשים בעלי אחריות וכללי גישה. הפרדת פרומפטים אינה הפרדת הרשאות.
- תפעול: מסלול שליטה אחד פשוט יותר לבדיקה; כמה סוכנים מחייבים מעקב אחר האחריות למשימה אחרי כל העברה וטיפול בכשל של רכיב.
- עלות: השוו קריאות למודלים, הקשר שנשלח שוב, תיאום, שימוש בכלים ותיקונים של עובדים. עבודה מקבילית אינה מפחיתה אוטומטית את ההוצאה הכוללת.
- מגבלות: סוכן אחד עלול להתקשות בעודף הקשר או כלים; כמה סוכנים עלולים לאבד מידע בהעברה או להציע פעולות סותרות. בדקו את העבודה בפועל.
תכנון מערכת מרובת סוכנים מתחיל בגבולות אחריות
דוגמה להמחשה: עסק שירות מקבל פנייה שדורשת גם הערכה טכנית וגם בדיקת כיסוי לפי חוזה. התחילו בתהליך קליטה משותף ובגורם מתאם אחד שאחראי למשימה. אם שתי הבדיקות באמת דורשות תחומי ידע נפרדים, בחנו סוכנים מתמחים שמחזירים ממצאים מוגדרים, במקום לתת לשניהם הרשאה לשנות את רשומת השירות.
הגדירו איזה קלט מקבל כל סוכן, לאילו רשומות הוא רשאי לגשת, איזו תוצאה עליו להחזיר ומי מכריע במחלוקת. שמרו רשומת שירות קובעת אחת. העבירו את הפעולה הסופית המוצעת דרך השירות העסקי הקיים, שבודק הרשאות וכללים עדכניים.
אם הבדיקות עצמאיות, כדאי לבחון עבודה מקבילית. אם אחת תלויה בתוצאה של האחרת, הגדירו את התלות במפורש. סוכן נוסף שרק חוזר על הנימוק של הראשון מוסיף שלב, אך אינו מספק ראיה עצמאית.
מוכיחים את התועלת בפיצול לפני שמרחיבים
השתמשו באותם מקרים מייצגים ובאותם נתוני פתיחה עבור גרסת הבסיס והתכנון המוצע. מדדו השלמות תקינות, זמן, עלות תפעול כוללת ומאמץ תיקון. בדקו כשלים של מידע חסר, מחלוקת בין סוכנים ושירות מחובר שאינו זמין. דווחו על המדגם והתנאים שנבדקו, במקום להכריז על מנצח גורף.
התייחסו להעברה בין סוכנים כשינוי מצב מפורש. תעדו מזהה משימה, רכיב אחראי, תוצאה צפויה ומועד יעד. החליטו אם משימה שמתעכבת יכולה להמשיך ביכולת מצומצמת או צריכה לחזור לאדם. משימה שהועברה עדיין אינה פתורה עד שהתהליך האחראי קיבל את תוצאתה.
התחילו בפיצול אחד והשאירו אותו רק אם התועלת שנמדדה מצדיקה את התחזוקה הנוספת. התועלת יכולה להיות אחריות ברורה יותר או פחות בלבול בהקשר, ולא רק מהירות. תעדו את הסיבה כדי שהמפתח הבא יבין מדוע הרכיב הנוסף קיים.
צוות פיתוח קטן יכול להיות אחראי לתכנון מדוד
מפתח מנוסה אחד יכול להשתמש בכלי AI כדי לבנות ולבדוק גרסה ראשונה ממוקדת. זה לא מבטל את הצורך בידע עסקי, בהחלטות אבטחה ובתמיכה תפעולית. שלבו מומחים נוספים כשהיקף העבודה חורג מהידע או מהיכולת של הצוות.
UVISION מספקת מפתחים ייעודיים ופרויקטים מנוהלים עם לפחות מפתח אחד במשרה מלאה בכל פרויקט. במערכות לגאסי (Legacy) קריטיות, האחריות המתמשכת כוללת תחזוקת אינטגרציות קיימות ושילוב יכולות AI בשלבים. תוצר ראשון שימושי הוא תהליך עסקי אחד עם ראיות לבחירה הארכיטקטונית שלו, בין שהוא משתמש בסוכן אחד ובין שבכמה.
שאלות נפוצות
מהי מערכת מרובת סוכנים?
מערכת מרובת סוכנים מתאמת בין כמה סוכנים סביב משימה או תהליך משותף. לרכיבים יכולים להיות ידע, כלים או תחומי אחריות שונים. ביישום עסקי, כל רכיב צריך קלט, פלט ואחראי ברורים, והתהליך הכולל צריך לאמת שהמשימה הושלמה. ריבוי סוכנים אינו מוכיח כשלעצמו אבטחה חזקה יותר, דיוק גבוה יותר או עלות תפעול נמוכה יותר.
מה ההבדל בין סוכן יחיד למערכת מרובת סוכנים?
בתכנון עם סוכן יחיד, סוכן אחד שומר על השליטה ומשתמש בכלים ובהקשר הזמינים לו. מערכת מרובת סוכנים מחלקת אחריות ומוסיפה תיאום. יש להשוות את האפשרויות על אותם מקרים עסקיים, כולל תוצאות, אינטגרציה, גישה לנתונים, תפעול ועלות כוללת. המורכבות הנוספת מוצדקת רק כאשר ההפרדה מספקת תועלת שימושית שאפשר להדגים.
איך בונים מערכת מרובת סוכנים?
מתחילים מתהליך בסיס ומזהים בעיה אחת שהפרדת אחריות יכולה לסייע בה. מגדירים לכל רכיב קלט, נתונים מותרים, חוזה פלט והתנהגות בכשל. שומרים אחראי למשימה הכוללת ובודקים העברות, מחלוקות ותוצאות חסרות. לפני הרחבה משווים את הפיצול המוצע לגרסת הבסיס, ומתעדים מדוע נדרש כל סוכן נוסף ומה הוא מוסיף לתהליך העסקי.
לקריאה נוספת
רוצים לבחון איך זה מתאים למערכות שלכם?
לשירות הרלוונטי