במסמך הזה מפורטות הנחיות שיעזרו לכם לבחור דפוס עיצוב למערכת ה-AI האקטיבי שלכם. דפוסי עיצוב של סוכנים הם גישות ארכיטקטוניות נפוצות לבניית אפליקציות שמבוססות על סוכנים. תבנית עיצוב של סוכן מציעה מסגרת ייחודית לארגון הרכיבים של מערכת, לשילוב המודל ולתזמור של סוכן יחיד או של כמה סוכנים כדי להשלים תהליך עבודה.
סוכני AI יעילים לאפליקציות שפותרות בעיות פתוחות, שעשויות לדרוש קבלת החלטות אוטונומית וניהול מורכב של תהליכי עבודה מרובי-שלבים. סוכנים מצטיינים בפתרון בעיות בזמן אמת באמצעות נתונים חיצוניים, ובאוטומציה של משימות שדורשות ידע רב. סוכני AI מתאימים כשרוצים ש-AI ישלים משימות שמתמקדות ביעדים מסוימים, עם מידה מסוימת של אוטונומיה. בתרחישי שימוש אחרים, אפשר להשתמש באפליקציות של AI גנרטיבי ו-AI מסייע. כדי להבין את ההבדלים בין סוכני AI לבין אפליקציות AI לא סוכניות, אפשר לעיין במאמר מה ההבדל בין סוכני AI, עוזרי AI ובוטים?
המדריך הזה מניח שיש לכם ידע בסיסי במערכות AI מבוססות-סוכן ובאופן שבו הארכיטקטורה שלהן שונה מזו של מערכות לא מבוססות-סוכן, כמו מערכות שמשתמשות בהסקה ישירה של מודלים או ביצירה משופרת באחזור (RAG).
סיכום של ההנחיות לגבי דפוסי סוכנים מופיע בהמשך המאמר בקטע השוואה בין דפוסי עיצוב.
סקירה כללית של תהליך העיצוב
אלה השלבים העיקריים לבחירת דפוס עיצוב למערכת AI אקטיבי. בהמשך המאמר מפורטים השלבים האלה.
- הגדרת הדרישות: צריך להעריך את המאפיינים של עומס העבודה, כולל מורכבות המשימה, זמן האחזור וציפיות הביצועים, תקציב העלויות והצורך בהתערבות אנושית.
- עיון בתבניות עיצוב נפוצות של סוכנים: במדריך הזה מוסבר על תבניות עיצוב נפוצות, כולל מערכות עם סוכן יחיד ומערכות עם כמה סוכנים.
- בחירת תבנית: בוחרים את תבנית העיצוב המתאימה על סמך מאפייני עומס העבודה.
התהליך הזה לא מסתכם בהחלטה חד-פעמית. מומלץ לחזור לשלבים האלה מדי פעם כדי לשפר את הארכיטקטורה, ככל שמאפייני עומס העבודה משתנים, הדרישות מתפתחות או שתכונות חדשות של Google Cloud זמינות.
הגדרת הדרישות
השאלות הבאות הן לא רשימות מקיפות לתכנון. השאלות האלה יכולות לשמש כנקודת התחלה לזיהוי המטרה העיקרית של המערכת האגנטית ולבחירת דפוס העיצוב הטוב ביותר.
- מאפייני המשימה: האם אפשר להשלים את המשימה בשלבים מוגדרים מראש בתהליך העבודה, או שהמשימה פתוחה? האם צריך להשתמש במודל AI כדי לתזמן את תהליך העבודה?
- זמן האחזור והביצועים: האם אתם צריכים לתת עדיפות לתשובות מהירות או אינטראקטיביות על חשבון דיוק או תשובות באיכות גבוהה? או שהאפליקציה יכולה להמתין כדי לקבל תוצאה מדויקת או מקיפה יותר?
- עלות: מה התקציב שלכם לעלויות ההסקה? האם אפשר לתמוך בדפוסים שדורשים כמה קריאות למודל עבור בקשה אחת?
- מעורבות אנושית: האם המשימה כוללת החלטות חשובות, פעולות קריטיות לבטיחות או אישורים סובייקטיביים שדורשים שיקול דעת אנושי?
אם עומס העבודה שלכם צפוי או מובנה מאוד, או אם אפשר לבצע אותו באמצעות קריאה אחת למודל AI, יכול להיות שיהיה משתלם יותר לבחון פתרונות לא מבוססי-סוכן למשימה שלכם. לדוגמה, יכול להיות שלא תצטרכו תהליך עבודה מבוסס-סוכן למשימות כמו סיכום מסמך, תרגום טקסט או סיווג משוב מלקוחות. למידע על בחירת רכיבי ארכיטקטורה לאפליקציות AI גנרטיבי שלא דורשות תשתית מבוססת-סוכן, אפשר לעיין במאמר בחירת מודלים ותשתית לאפליקציית AI גנרטיבי.
בקטעים הבאים מתוארות תבניות עיצוב נפוצות של סוכנים ליצירת מערכת אמינה ויעילה של AI אקטיבי.
מערכת עם סוכן יחיד
מערכת עם סוכן יחיד משתמשת במודל AI, בקבוצה מוגדרת של כלים ובהנחיית מערכת מקיפה כדי לטפל באופן אוטונומי בבקשת משתמש או כדי להשלים משימה ספציפית. בדפוס הבסיסי הזה, הסוכן מסתמך על יכולות החשיבה הרציונלית של המודל כדי לפרש את בקשת המשתמש, לתכנן רצף של שלבים ולהחליט באילו כלים להשתמש מתוך קבוצה מוגדרת. ההנחיה למערכת מגדירה את המשימה העיקרית של הסוכן, את התפקיד שלו ואת הפעולות שהוא מבצע, וגם את התנאים הספציפיים לשימוש בכל כלי.
התרשים הבא מציג תצוגה כללית של תבנית סוכן יחידה:
מערכת עם סוכן יחיד מתאימה למשימות שדורשות כמה שלבים וגישה לנתונים חיצוניים. לדוגמה, נציג תמיכת לקוחות צריך לשלוח שאילתה למסד נתונים כדי למצוא את סטטוס ההזמנה, או שעוזר מחקר צריך להתקשר לממשקי API כדי לסכם חדשות מהזמן האחרון. מערכת לא מבוססת-סוכנים לא יכולה לבצע את המשימות האלה כי היא לא יכולה להשתמש בכלים באופן אוטונומי או לבצע תוכנית רב-שלבית כדי לסנתז תשובה סופית.
אם אתם בשלבים מוקדמים של פיתוח סוכן, מומלץ להתחיל עם סוכן יחיד. כשמתחילים לפתח סוכן עם מערכת של סוכן יחיד, אפשר להתמקד בשיפור ההיגיון הבסיסי, ההנחיה והגדרות הכלים של הסוכן לפני שמוסיפים רכיבים ארכיטקטוניים מורכבים יותר.
הביצועים של סוכן יחיד עשויים להיות פחות יעילים כשהוא משתמש ביותר כלים וכשהמשימות מורכבות יותר. יכול להיות שתבחינו בזה כהשהיה מוגברת, כבחירה או שימוש לא נכונים בכלי, או ככישלון בהשלמת המשימה. לרוב אפשר לצמצם את הבעיות האלה על ידי שיפור תהליך החשיבה הרציונלית של הסוכן באמצעות טכניקות כמו דפוס הפעולה Reason and Act (ReAct). עם זאת, אם תהליך העבודה שלכם דורש מסוכן לנהל כמה תחומי אחריות שונים, יכול להיות שהטכניקות האלה לא יספיקו. במקרים כאלה, כדאי לשקול שימוש במערכת מרובת סוכנים, שיכולה לשפר את החוסן והביצועים על ידי הקצאת מיומנויות ספציפיות לסוכנים מומחים.
מערכות מרובות סוכנים
מערכת מרובת סוכנים מתזמנת כמה סוכנים מומחים כדי לפתור בעיה מורכבת שסוכן יחיד לא יכול לפתור בקלות. העיקרון המרכזי הוא לפרק יעד גדול למשימות משנה קטנות יותר, ולהקצות כל משימת משנה לסוכן ייעודי עם מיומנות ספציפית. הסוכנים האלה מקיימים אינטראקציה באמצעות תהליכי עבודה היררכיים או שיתופיים כדי להשיג את היעד הסופי. דפוסי שימוש בכמה סוכנים מספקים עיצוב מודולרי שיכול לשפר את יכולת ההתאמה לעומס, את האמינות ואת יכולת התחזוקה של המערכת הכוללת בהשוואה לסוכן יחיד עם הנחיה מונוליטית.
במערכת מרובת סוכנים, כל סוכן צריך הקשר ספציפי כדי לבצע את המשימה שלו בצורה יעילה. ההקשר יכול לכלול תיעוד, העדפות היסטוריות, קישורים רלוונטיים, היסטוריית שיחות או אילוצים תפעוליים. התהליך של ניהול זרימת המידע הזו נקרא הנדסת הקשר. הנדסת הקשר כוללת אסטרטגיות כמו בידוד הקשר לסוכן ספציפי, שמירת מידע בכמה שלבים או דחיסת כמויות גדולות של נתונים כדי לשפר את היעילות.
יצירת מערכת מרובת סוכנים דורשת שיקולים נוספים של הערכה, אבטחה, מהימנות ועלות בהשוואה למערכת עם סוכן יחיד. לדוגמה, במערכות מרובות סוכנים צריך להטמיע אמצעי בקרה מדויקים לגישה לכל סוכן מומחה, לתכנן מערכת תזמור חזקה כדי להבטיח תקשורת מהימנה בין הסוכנים ולנהל את העלויות התפעוליות המוגדלות שנובעות מהתקורה החישובית של הפעלת כמה סוכנים. דוגמה לארכיטקטורת הפניה ליצירת מערכת מרובת סוכנים מופיעה במאמר מערכות AI עם כמה סוכנים ב- Google Cloud.
דפוס רציף
התבנית הרציפה של כמה סוכנים מפעילה סדרה של סוכנים עם התמחויות שונות בסדר ליניארי מוגדר מראש, שבו הפלט של סוכן אחד משמש כקלט ישיר לסוכן הבא. בדפוס הזה נעשה שימוש בסוכן עם תהליך עבודה רציף שפועל לפי לוגיקה מוגדרת מראש, בלי להסתמך על מודל AI לניהול של סוכני המשנה שלו.
התרשים הבא מציג תצוגה כללית של תבנית רציפה עם כמה סוכנים:
משתמשים בתבנית רציפה לתהליכים מובנים מאוד שניתנים לחזרה, שבהם רצף הפעולות לא משתנה. לדוגמה, צינור לעיבוד נתונים יכול להשתמש בדפוס הזה כדי שסוכן לחילוץ נתונים ימשוך קודם נתונים גולמיים, ואז יעביר את הנתונים האלה לסוכן לניקוי נתונים כדי לעצב אותם, והסוכן הזה יעביר את הנתונים הנקיים לסוכן לטעינת נתונים כדי לשמור אותם במסד נתונים.
השימוש בתבנית רציפה יכול להפחית את זמן האחזור ואת עלויות התפעול בהשוואה לתבנית שמשתמשת במודל AI כדי לתזמן את תהליך העבודה של המשימה. עם זאת, היעילות הזו באה על חשבון הגמישות. המבנה הקשיח והמוגדר מראש של צינור העיבוד מקשה על התאמה לתנאים דינמיים או על דילוג על שלבים מיותרים, מה שעלול לגרום לעיבוד לא יעיל או להוביל לזמן אחזור מצטבר גבוה יותר אם שלב מיותר הוא איטי.
דפוס מקביל
דפוס מקבילי של כמה סוכנים, שנקרא גם דפוס מקבילי, הוא דפוס שבו כמה סוכני משנה מיוחדים מבצעים משימה או משימות משנה באופן עצמאי בו-זמנית. הפלט של הסוכנים המשניים מסוכם כדי ליצור את התשובה הסופית המאוחדת. בדומה לדפוס רציף, בדפוס המקביל נעשה שימוש בסוכן זרימת עבודה מקבילה כדי לנהל את האופן והזמן שבהם הסוכנים האחרים פועלים, בלי להסתמך על מודל AI כדי לתזמר את סוכני המשנה.
התרשים הבא מציג תצוגה כללית של דפוס מקבילי של כמה סוכנים:
משתמשים בדפוס המקביל כשניתן להפעיל משימות משנה במקביל כדי לצמצם את זמן האחזור או לאסוף נקודות מבט מגוונות, למשל איסוף נתונים ממקורות שונים או הערכה של כמה אפשרויות בו-זמנית. לדוגמה, כדי לנתח משוב מלקוחות, סוכן מקביל יכול להפיץ רשומה אחת של משוב לארבעה סוכנים מומחים בו-זמנית: סוכן לניתוח סנטימנט, סוכן לחילוץ מילות מפתח, סוכן לסיווג וסוכן לזיהוי דחיפות. סוכן סופי אוסף את ארבע התוצאות האלה לניתוח מקיף אחד של המשוב.
התבנית המקבילה יכולה להפחית את זמן האחזור הכולל בהשוואה לגישה רציפה, כי היא יכולה לאסוף מידע מגוון מכמה מקורות בו-זמנית. עם זאת, הגישה הזו כרוכה בפשרות בנוגע לעלות ולמורכבות. הפעלת כמה סוכנים במקביל יכולה להגדיל את ניצול המשאבים המיידי ואת צריכת הטוקנים, וכתוצאה מכך להוביל לעלויות תפעול גבוהות יותר. בנוסף, שלב האיסוף דורש לוגיקה מורכבת כדי לסנתז תוצאות שעלולות להיות סותרות, מה שמגדיל את התקורה של הפיתוח והתחזוקה של המערכת.
תבנית לולאה
תבנית הסוכן של לולאת כמה סוכנים מריצה שוב ושוב רצף של סוכני משנה עם התמחויות שונות עד שמתקיים תנאי סיום ספציפי. בדפוס הזה נעשה שימוש בסוכן של תהליך עבודה בלולאה, שפועל כמו סוכנים אחרים של תהליכי עבודה על בסיס לוגיקה מוגדרת מראש, בלי להסתמך על מודל AI לתיאום. אחרי שכל הסוכנים המשניים מסיימים את המשימות שלהם, הסוכן הראשי בודק אם מתקיים תנאי יציאה. התנאי יכול להיות מספר מקסימלי של איטרציות או מצב מותאם אישית. אם התנאי ליציאה לא מתקיים, סוכן הלולאה מתחיל שוב את רצף סוכני המשנה. אפשר להטמיע דפוס של לולאה שבה תנאי היציאה מוערך בכל נקודה בתהליך. אפשר להשתמש בתבנית הלולאה למשימות שדורשות שיפור איטרטיבי או תיקון עצמי, כמו יצירת תוכן ושימוש בסוכן מבקר כדי לבדוק אותו עד שהוא עומד בתקן איכות מסוים.
התרשים הבא מציג תצוגה כללית של דפוס לולאה עם כמה סוכנים:
תבנית הסוכן של לולאה מספקת דרך לבנות תהליכי עבודה מורכבים ואיטרטיביים. היא מאפשרת לסוכנים לשפר את העבודה שלהם ולהמשיך בעיבוד עד להשגת איכות או מצב ספציפיים. עם זאת, החיסרון העיקרי של התבנית הזו הוא הסיכון ללולאה אינסופית. אם תנאי הסיום לא מוגדר בצורה נכונה או אם הסוכנים המשניים לא מצליחים ליצור את המצב שנדרש כדי לעצור, הלולאה יכולה לפעול ללא הגבלה. הדבר עלול להוביל לעלויות תפעול גבוהות מדי, לצריכת משאבים גבוהה ולמערכת שעלולה לקרוס.
דפוס של סקירה וביקורת
דפוס הביקורת וההערות של כמה סוכנים, שנקרא גם דפוס הגנרטור והמבקר, משפר את האיכות והמהימנות של התוכן שנוצר באמצעות שימוש בשני סוכנים ייעודיים, בדרך כלל בתהליך עבודה רציף. הדפוס של ביקורת והערכה הוא הטמעה של דפוס סוכן הלולאה.
בדפוס של ביקורת וניתוח, סוכן גנרטיבי יוצר פלט ראשוני, כמו בלוק קוד או סיכום של מסמך. לאחר מכן, סוכן מבקר מעריך את הפלט הזה לפי קבוצה מוגדרת מראש של קריטריונים, כמו דיוק עובדתי, עמידה בכללי עיצוב או הנחיות בטיחות. על סמך הבדיקה, המבקר יכול לאשר את התוכן, לדחות אותו או להחזיר אותו לגנרטור עם משוב לתיקון.
התרשים הבא מציג סקירה כללית של דפוס ביקורת ומשוב של כמה סוכנים:
הדפוס הזה מתאים למשימות שבהן הפלט צריך להיות מדויק מאוד או לעמוד במגבלות מחמירות לפני שהוא מוצג למשתמש או משמש בתהליך המשך. לדוגמה, בתהליך עבודה של יצירת קוד, סוכן גנרטור עשוי לכתוב פונקציה כדי למלא בקשה של משתמש. הקוד שנוצר מועבר לסוכן מבקר שפועל כמבקר אבטחה. התפקיד של סוכן הביקורת הוא לבדוק את הקוד בהתאם למערכת אילוצים, כמו סריקה של נקודות חולשה באבטחה או אימות של הקוד כדי לוודא שהוא עובר את כל בדיקות היחידה, לפני שהשימוש בקוד מאושר.
השימוש בדפוס של ביקורת ותיקון יכול לשפר את האיכות, הדיוק והמהימנות של הפלט, כי הוא מוסיף שלב ייעודי של אימות. עם זאת, בקרת האיכות הזו כרוכה בעלויות ישירות של עלייה בחביון ובהוצאות התפעוליות. תהליך העבודה דורש לפחות קריאה נוספת למודל כדי שהמבקר יבצע את ההערכה. אם התהליך כולל לולאות של שינויים שבהן התוכן נשלח חזרה לשיפור, גם זמן האחזור וגם העלויות מצטברים עם כל איטרציה.
תבנית של שיפור איטרטיבי
דפוס השיפור האיטרטיבי משתמש במנגנון של לולאה כדי לשפר בהדרגה את הפלט על פני מחזורים רבים. תבנית השכלול האיטרטיבית היא הטמעה של תבנית הסוכן הלולאתי.
בדפוס הזה, סוכן אחד או יותר פועלים בלולאה כדי לשנות תוצאה שמאוחסנת במצב הסשן במהלך כל איטרציה. התהליך נמשך עד שהפלט עומד בסף איכות מוגדר מראש או עד שמגיעים למספר המקסימלי של איטרציות, כדי למנוע לולאות אינסופיות.
התרשים הבא מציג תצוגה כללית של דפוס שיפור איטרטיבי של כמה סוכנים:
הדפוס הזה מתאים למשימות מורכבות של יצירה שבהן קשה להשיג את הפלט בשלב אחד. דוגמאות למשימות כאלה: כתיבה וניפוי באגים של קטע קוד, פיתוח תוכנית מפורטת בת כמה חלקים או טיוטה ועריכה של מסמך ארוך. לדוגמה, בתהליך עבודה של כתיבה יוצרת, סוכן יכול ליצור טיוטה של פוסט בבלוג, לבקר את הטיוטה מבחינת רצף וטון, ואז לכתוב מחדש את הטיוטה על סמך הביקורת. התהליך הזה חוזר על עצמו בלולאה עד שהעבודה של הנציג עומדת בתקן איכות מוגדר מראש, או עד שהחזרה מגיעה למספר מקסימלי של איטרציות.
הדפוס של שיפור איטרטיבי יכול להפיק פלטים מורכבים או מלוטשים מאוד, שקשה להשיג בשלב אחד. עם זאת, מנגנון הלולאה מגדיל ישירות את זמן האחזור ואת עלויות התפעול בכל מחזור. הדפוס הזה גם מוסיף מורכבות ארכיטקטונית, כי הוא דורש תנאי יציאה מתוכננים בקפידה – כמו הערכת איכות או מגבלת איטרציה מקסימלית – כדי למנוע עלויות מוגזמות או ביצוע לא מבוקר.
דפוס מתאם
תבנית מתאם מרובה סוכנים משתמשת בסוכן מרכזי, המתאם, כדי לנהל תהליך עבודה. המתאם מנתח את הבקשה של המשתמש ומפרק אותה למשימות משנה, ואז הוא שולח כל משימת משנה לסוכן מומחה לביצוע. כל סוכן מומחה הוא מומחה בפונקציה ספציפית, כמו שליחת שאילתה למסד נתונים או הפעלת API.
מאפיין ייחודי של תבנית המתאם הוא השימוש במודל AI כדי לתזמר את המשימות ולנתב אותן באופן דינמי. לעומת זאת, תבנית מקבילית מסתמכת על תהליך עבודה שמוגדר בקוד כדי לשלוח משימות לביצוע בו-זמני, בלי צורך בתזמור של מודל AI.
התרשים הבא מציג תצוגה כללית של דפוס מתאם מרובה סוכנים:
אפשר להשתמש בתבנית של רכיב מתאם כדי להפוך לאוטומטיים תהליכים עסקיים מובנים שנדרש בהם ניתוב אדפטיבי. לדוגמה, נציג שירות לקוחות יכול לשמש כמתאם. הסוכן המתאם מנתח את הבקשה כדי לקבוע אם מדובר בבקשה לבדיקת סטטוס הזמנה, החזרת מוצר או החזר כספי. על סמך סוג הבקשה, רכז הפעילות מעביר את המשימה לסוכן המתמחה המתאים.
דפוס המתאם מציע גמישות בהשוואה לתהליכי עבודה קשיחים ומוגדרים מראש. שימוש במודל לניתוב משימות מאפשר לרכז לטפל במגוון רחב יותר של קלטים ולהתאים את תהליך העבודה בזמן הריצה. עם זאת, לגישה הזו יש גם חסרונות. מכיוון שהסוכן המתאם וכל סוכן מומחה מסתמכים על מודל לצורך חשיבה רציונלית, התבנית הזו מובילה ליותר קריאות למודל מאשר מערכת עם סוכן יחיד. למרות שהשימוש בתבנית של מתאם יכול להוביל לנימוקים באיכות גבוהה יותר, הוא גם מגדיל את קצב העברת הטוקנים, את העלויות התפעוליות ואת זמן האחזור הכולל בהשוואה למערכת עם סוכן יחיד.
תבנית של פירוק משימות היררכי
התבנית של פירוק משימות היררכי עם כמה סוכנים מארגנת את הסוכנים בהיררכיה רב-רמתית כדי לפתור בעיות מורכבות שדורשות תכנון מקיף. דפוס הפירוק ההיררכי של משימות הוא הטמעה של דפוס המתאם. סוכן הורה ברמה העליונה, או root, מקבל משימה מורכבת ואחראי על פירוק המשימה לכמה משימות משנה קטנות ופשוטות יותר. הסוכן הראשי מעביר כל משימת משנה לסוכן משנה מומחה ברמה נמוכה יותר. התהליך הזה יכול לחזור על עצמו בכמה שכבות, עם סוכנים שמפרקים בהדרגה את המשימות שהוקצו להם עד שהמשימות פשוטות מספיק כדי שסוכן עובד ברמה הנמוכה ביותר יוכל לבצע אותן ישירות.
התרשים הבא מציג תצוגה כללית של דפוס של פירוק משימות היררכי עם כמה סוכנים:
כדאי להשתמש בתבנית של פירוק משימות היררכי לבעיות לא ברורות ופתוחות שדורשות חשיבה רציונלית בכמה שלבים, כמו משימות שכוללות מחקר, תכנון וסינתזה. לדוגמה, כדי להשלים פרויקט מחקר מורכב, סוכן מתאם מפרק את המטרה ברמה הגבוהה למספר משימות, כמו איסוף מידע, ניתוח הממצאים וסינתוז הדוח הסופי. הסוכן המתאם מעביר את המשימות האלה לסוכני משנה מומחים, כמו סוכן לאיסוף נתונים, סוכן לניתוח וסוכן לכתיבת דוחות, כדי לבצע אותן או לפרק אותן עוד יותר.
תבנית הפירוק ההיררכי של משימות היא אידיאלית לפתרון בעיות מורכבות מאוד ודו-משמעיות, כי היא מפרקת אותן באופן שיטתי למשימות משנה שקל לנהל. התבנית הזו יכולה להניב תוצאות מקיפות ואיכותיות יותר מתבניות פשוטות יותר. עם זאת, היכולת המתקדמת הזו כרוכה בפשרות משמעותיות. המבנה הרב-שכבתי מוסיף מורכבות ארכיטקטונית משמעותית, שמקשה על תכנון המערכת, על ניפוי הבאגים שלה ועל התחזוקה שלה. בנוסף, ריבוי השכבות של ההאצלה וההסקה מוביל למספר גבוה של קריאות למודל, מה שמגדיל באופן משמעותי את זמן האחזור הכולל ואת עלויות התפעול בהשוואה לדפוסים אחרים.
תבנית נחיל
תבנית נחיל מרובה סוכנים משתמשת בגישה שיתופית של תקשורת בין כולם. בדפוס הזה, כמה סוכנים מומחים עובדים יחד כדי לשפר באופן איטרטיבי פתרון לבעיה מורכבת.
התרשים הבא מציג תצוגה כללית של דפוס נחיל מרובה סוכנים:
בדפוס נחיל משתמשים בסוכן שילוח כדי להפנות בקשת משתמש לקבוצה שיתופית של סוכנים מומחים. הסוכן לניתוב שיחות מפרש את הבקשה וקובע איזה סוכן בנחיל מתאים ביותר להתחיל את המשימה. בדפוס הזה, כל סוכן יכול לתקשר עם כל סוכן אחר, מה שמאפשר להם לשתף ממצאים, לבקר הצעות ולבנות על העבודה של כל אחד מהם כדי לשפר את הפתרון באופן איטרטיבי. כל נציג בנחיל יכול להעביר את המשימה לנציג אחר שלדעתו מתאים יותר לטפל בשלב הבא, או להעביר את התשובה הסופית בחזרה למשתמש דרך הנציג המתאם.
בדרך כלל, ל-Swarm אין סוכן מרכזי שמפקח או מתאם את התהליך. סוכן השליחה לא מתזמן את תהליך העבודה שמבוסס על סוכנים, בניגוד לדפוס המתאם. במקום זאת, סוכן השליטה מאפשר תקשורת בין הסוכנים המשניים של קבוצת הסוכנים לבין המשתמש. כדי לוודא שהנחיל יפסיק בסופו של דבר ויחזיר תוצאה, צריך להגדיר תנאי יציאה מפורש. התנאי הזה הוא לרוב מספר מקסימלי של איטרציות, מגבלת זמן או השגת יעד ספציפי, כמו הגעה להסכמה.
תשתמשו בשיטת הנחיל לבעיות מורכבות מאוד או לבעיות עם פתרונות לא ברורים, שיועילו להן דיון ושיפור חוזר. לדוגמה, תהליך התכנון של מוצר חדש יכול לכלול סוכן לחקר שוק, סוכן הנדסי וסוכן ליצירת מודלים פיננסיים. הסוכנים ישתפו רעיונות ראשוניים, ידונו בפשרות בין התכונות והעלויות, ויגיעו יחד למפרט עיצוב סופי שמאזן בין כל הדרישות המתחרות.
דפוס ה-swarm מדמה צוות מומחים שמשתף פעולה, ולכן הוא יכול להפיק פתרונות יצירתיים ואיכותיים במיוחד. עם זאת, הוא מייצג את התבנית המורכבת והיקרה ביותר להטמעה מבין התבניות של ריבוי סוכנים. היעדר סוכן שמבוסס על מודל AI לניהול התהליך עלול להוביל ללולאות לא יעילות או לכך שלא תהיה התכנסות לפתרון. לכן, צריך לתכנן לוגיקה מורכבת לניהול התקשורת המורכבת בין הסוכנים, לשלוט בתהליך העבודה האיטרטיבי ולטפל בעלויות התפעוליות הגבוהות ובזמן האחזור שקשורים להפעלת שיחה דינמית מרובת תפניות בין כמה סוכנים.
דפוס של סיבה ופעולה (ReAct)
דפוס ReAct הוא גישה שבה מודל ה-AI מנסח את תהליכי החשיבה והפעולות שלו כרצף של אינטראקציות בשפה טבעית. בדפוס הזה, הסוכן פועל בלולאה איטרטיבית של מחשבה, פעולה ותצפית עד שמתקיים תנאי יציאה.
- מחשבה: המודל מנתח את המשימה ומחליט מה לעשות בהמשך. המודל מעריך את כל המידע שהוא אסף כדי לקבוע אם הבקשה של המשתמש נענתה במלואה.
- פעולה: על סמך תהליך החשיבה שלו, המודל מבצע אחת משתי פעולות:
- אם המשימה לא הושלמה, הוא בוחר כלי ואז יוצר שאילתה כדי לאסוף מידע נוסף.
- אם המשימה הושלמה, הוא מנסח את התשובה הסופית לשליחה למשתמש, וכך מסתיים הלולאה.
- תצפית: המודל מקבל את הפלט מהכלי ושומר מידע רלוונטי בזיכרון שלו. המודל שומר את הפלט הרלוונטי, ולכן הוא יכול להסתמך על תצפיות קודמות. כך הוא לא חוזר על עצמו ולא מאבד את ההקשר.
הלולאה האיטרטיבית מסתיימת כשהסוכן מוצא תשובה חד-משמעית, מגיע למספר המקסימלי של איטרציות שהוגדר מראש או נתקל בשגיאה שמונעת ממנו להמשיך. הלולאה האיטרטיבית הזו מאפשרת לסוכן לבנות תוכנית באופן דינמי, לאסוף ראיות ולהתאים את הגישה שלו תוך כדי שהוא פועל להשגת תשובה סופית.
התרשים הבא מציג סקירה כללית של דפוס ReAct:
משתמשים בדפוס ReAct למשימות מורכבות ודינמיות שדורשות תכנון והתאמה מתמשכים. לדוגמה, נניח שיש סוכן רובוטי שצריך ליצור נתיב למעבר ממצב התחלתי למצב יעד:
- מחשבה: המודל מנתח את הנתיב האופטימלי למעבר מהמצב הנוכחי למצב היעד. במהלך תהליך החשיבה, המודל מבצע אופטימיזציה למדדים כמו זמן או אנרגיה.
- פעולה: המודל מבצע את השלב הבא בתוכנית שלו על ידי מעבר לאורך קטע מחושב של נתיב.
- תצפית: המודל מתבונן במצב החדש של הסביבה ושומר אותו. המודל שומר את המיקום החדש ואת כל השינויים בסביבה שהוא מזהה.
הלולאה הזו מאפשרת לסוכן לפעול בהתאם למגבלות דינמיות, כמו הימנעות ממכשולים חדשים או ציות לתקנות התנועה, על ידי עדכון מתמיד של התוכנית שלו על סמך תצפיות חדשות. הסוכן ממשיך בלולאה האיטרטיבית שלו עד שהוא מגיע ליעד או נתקל בשגיאה.
סוכן ReAct יחיד יכול להיות פשוט יותר וחסכוני יותר להטמעה ולתחזוקה מאשר מערכת מרובת סוכנים מורכבת (MAS). התכונה 'חשיבה מודלית' מספקת תמליל של הנימוקים של המודל, ועוזרת בניפוי באגים. עם זאת, הגמישות הזו כרוכה בפשרות. האופי האיטרטיבי של הלולאה, שכולל כמה שלבים, יכול להוביל לחביון מקצה לקצה גבוה יותר בהשוואה לשאילתה יחידה. בנוסף, היעילות של הסוכן תלויה מאוד באיכות ההיגיון של מודל ה-AI. לכן, שגיאה או תוצאה מטעה מכלי בשלב אחד של התצפית יכולות להתפשט ולגרום לכך שהתשובה הסופית תהיה שגויה.
תבנית האדם שבתהליך
התבנית 'אדם בתהליך' משלבת נקודות להתערבות אנושית ישירות בתהליך העבודה של הסוכן. בנקודת ביקורת מוגדרת מראש, הסוכן משהה את ההרצה שלו וקורא למערכת חיצונית כדי לחכות שאדם יבדוק את העבודה שלו. הדפוס הזה מאפשר לאדם לאשר החלטה, לתקן שגיאה או לספק קלט נדרש לפני שהסוכן יכול להמשיך.
התרשים הבא מציג תצוגה כללית של דפוס של מעורבות אנושית בתהליך:
מומלץ להשתמש בדפוס Human-in-the-Loop למשימות שדורשות פיקוח אנושי, שיפוט סובייקטיבי או אישור סופי לפעולות קריטיות. הפעולות האלה כוללות אישור של עסקה פיננסית גדולה, אימות הסיכום של מסמך רגיש או מתן משוב סובייקטיבי על תוכן יצירתי שנוצר. לדוגמה, יכול להיות שסוכן יקבל משימה לבצע אנונימיזציה של קבוצת נתונים של מטופלים לצורך מחקר. הסוכן יזהה ויצנזר אוטומטית את כל המידע הרפואי המוגן, אבל הוא יושהה את הפעולה בנקודת ביקורת סופית. היא תמתין עד שאחראי על התאימות האנושי יאמת ידנית את קבוצת הנתונים ויאשר את השחרור שלו, כדי לוודא שלא נחשף מידע אישי רגיש.
הדפוס 'אדם בתהליך' משפר את הבטיחות והמהימנות על ידי שילוב של שיקול דעת אנושי בנקודות קריטיות בתהליך העבודה. הדפוס הזה יכול להוסיף מורכבות ארכיטקטונית משמעותית, כי הוא מחייב אתכם לבנות ולתחזק את המערכת החיצונית לאינטראקציה עם המשתמשים.
דפוס של לוגיקה מותאמת אישית
הלוגיקה המותאמת אישית מספקת את הגמישות המקסימלית בתכנון תהליך העבודה. הגישה הזו מאפשרת לכם להטמיע לוגיקה ספציפית של תזמור שמשתמשת בקוד, כמו משפטי תנאי, כדי ליצור תהליכי עבודה מורכבים עם כמה נתיבי הסתעפות.
התרשים הבא מציג דוגמה לשימוש בדפוס של לוגיקה בהתאמה אישית כדי לתעד תהליך של החזר כספי:
בתרשים שלמעלה, מוצג תהליך העבודה של סוכן עם יכולות AI בדוגמה של סוכן להחזר כספי ללקוח:
- המשתמש שולח שאילתה לסוכן להחזר כספי ללקוחות, שפועל כסוכן מתאם.
- הלוגיקה המותאמת אישית של הסוכן המתאם מפעילה קודם סוכן אימות מקביל, ששולח בו-זמנית שני סוכני משנה: סוכן אימות הרכישה וסוכן בדיקת הזכאות להחזר כספי.
- אחרי שהתוצאות נאספות, סוכן התיאום מריץ כלי כדי לבדוק אם הבקשה עומדת בדרישות לקבלת החזר כספי.
- אם המשתמש עומד בדרישות, המנהל מעביר את המשימה לסוכן לעיבוד החזרים כספיים, שמפעיל את הכלי
process_refund. - אם המשתמש לא עומד בדרישות, הרכז מעביר את המשימה לתהליך נפרד, שמתחיל בסוכן הקרדיט בחנות ובסוכן ההחלטה על קרדיט.
- אם המשתמש עומד בדרישות, המנהל מעביר את המשימה לסוכן לעיבוד החזרים כספיים, שמפעיל את הכלי
- התוצאה מכל אחד מהנתיבים נשלחת לסוכן התגובה הסופית כדי לגבש את התשובה למשתמש.
הדוגמה של סוכן החזרים הכספיים ללקוחות דורשת פתרון ייחודי לתיאום ברמת הלוגיקה, שחורג מהגישות המובנות שדפוסים אחרים מציעים. בתהליך העבודה הזה יש שילוב של דפוסים כי הוא מריץ בדיקה מקבילה, ואז הוא מבצע הסתעפות מותנית מותאמת אישית שמובילה לשני תהליכים שונים לחלוטין בהמשך. סוג כזה של תהליך עבודה מורכב עם דפוסים מעורבים הוא תרחיש השימוש האידיאלי לדפוס של לוגיקה מותאמת אישית.
משתמשים בדפוס של לוגיקה בהתאמה אישית כשרוצים שליטה מדויקת על הביצוע של הסוכן או כשזרימת העבודה לא מתאימה לאחד מהדפוסים האחרים שמתוארים במסמך הזה. עם זאת, הגישה הזו מגדילה את המורכבות של הפיתוח והתחזוקה. אתם אחראים לתכנון, להטמעה ולניפוי הבאגים של כל תהליך התיזמור, שדורש מאמץ פיתוח רב יותר ועלול להיות מועד יותר לשגיאות מאשר שימוש בתבנית מוגדרת מראש שנתמכת על ידי כלי כמו ערכת פיתוח סוכנים (ADK).
מידע על סוכנים מותאמים אישית ועל הטמעה של לוגיקה מותאמת אישית באמצעות ADK זמין במאמר סוכנים מותאמים אישית.
השוואה בין דפוסי עיצוב
בחירת תבנית סוכן היא החלטה ארכיטקטונית בסיסית. כל דפוס מציע יתרונות וחסרונות שונים מבחינת גמישות, מורכבות וביצועים. כדי לקבוע את הדפוס המתאים לעומס העבודה שלכם, כדאי לעיין בדפוסי העיצוב בקטעים הבאים.
תהליכי עבודה דטרמיניסטיים
תהליכי עבודה דטרמיניסטיים כוללים משימות שניתן לחזות אותן והן מתבצעות ברצף, ויש להם נתיב תהליך עבודה מוגדר בבירור מההתחלה ועד הסוף. השלבים במשימות ידועים מראש, והתהליך לא משתנה הרבה מריצה אחת לשנייה. בהמשך מפורטים דפוסי עיצוב של סוכנים לתהליכי עבודה דטרמיניסטיים:
| מאפיינים של עומס העבודה | תבנית עיצוב של סוכנים |
|---|---|
|
תבנית רציפה של כמה סוכנים |
|
תבנית מקבילית של כמה סוכנים |
|
דפוס של שיפור איטרטיבי של כמה סוכנים |
תהליכי עבודה שנדרש בהם תזמור דינמי
תהליכי עבודה שדורשים תזמור דינמי כוללים בעיות מורכבות שבהן הנציגים צריכים לקבוע את הדרך הטובה ביותר להתקדם. מערכת ה-AI האקטיבי צריכה לתכנן, להאציל ולתאם משימות באופן דינמי, ללא סקריפט מוגדר מראש. אלה דפוסי עיצוב של סוכנים לתהליכי עבודה שנדרש בהם תזמור אוטונומי ודינמי:
| מאפיינים של עומס העבודה | תבנית עיצוב של סוכנים |
|---|---|
|
תבנית של סוכן יחיד |
|
דפוס של מתאם בין כמה סוכנים |
|
תבנית של פירוק משימות היררכי עם כמה סוכנים |
|
דפוס של נחיל עם כמה סוכנים |
תהליכי עבודה שכוללים איטרציה
תהליכי עבודה שכוללים איטרציה כוללים משימות שבהן התוצאה הסופית מושגת באמצעות מחזורים של שיפור, משוב ושיפור. אלה דפוסי עיצוב של סוכנים לתהליכי עבודה שכוללים איטרציה:
| מאפיינים של עומס העבודה | תבנית עיצוב של סוכנים |
|---|---|
|
תבנית ReAct |
|
תבנית של לולאה עם כמה סוכנים |
|
דפוס של ביקורת והערות של כמה סוכנים |
|
דפוס של שיפור איטרטיבי של כמה סוכנים |
תהליכי עבודה עם דרישות מיוחדות
תהליכי עבודה עם דרישות מיוחדות כוללים משימות שלא פועלות לפי הדפוסים הנפוצים של סוכנים. המשימות יכולות לכלול לוגיקה עסקית ייחודית, או שהן יכולות לדרוש שיקול דעת אנושי והתערבות בנקודות קריטיות. מערכת ה-AI האקטיבי שלך היא מכונה בהתאמה אישית שנועדה למטרה ספציפית אחת. בהמשך מפורטים דפוסי עיצוב של סוכנים לתהליכי עבודה עם דרישות מיוחדות:
| מאפיינים של עומס העבודה | תבנית עיצוב של סוכנים |
|---|---|
|
דפוס של האדם שבתהליך |
|
תבנית לוגית בהתאמה אישית |
המאמרים הבאים
- מידע נוסף על יצירה וניהול של מערכות מרובות סוכנים באמצעות פרימיטיבים של ADK
- איך מארחים אפליקציות וסוכנים מבוססי-AI ב-Cloud Run
- מידע נוסף על דפוסי עיצוב מבוססי-סוכן: מדריך מעשי ליצירת מערכות חכמות
- איך יוצרים סוכן באמצעות ADK
- מידע נוסף על בניית מערכות AI מרובות סוכנים ב- Google Cloud
- לדוגמאות נוספות של ארכיטקטורות, תרשימים ושיטות מומלצות, עיינו במאמר Cloud Architecture Center.
שותפים ביצירת התוכן
מחבר: סמנתה הי | כותבת טכנית
תורמי תוכן אחרים:
- עבדול סאלח | מהנדס תוכנה
- Amina Mansour | Head of Cloud Platform Evaluations Team
- עמית מראג' | מהנדס קשרי מפתחים
- Casey West | Architecture Advocate, Google Cloud
- Jack Wotherspoon | אחראי קשרי מפתחים
- ג'ו פרננדז | כותב טכני
- Joe Shirey | Cloud Developer Relations Manager
- קרל ויינמייסטר | Director of Cloud Product Developer Relations
- קומאר דהנגופאל | מפתח פתרונות חוצי-מוצרים
- Lisa Shen | Senior Outbound Product Manager, Google Cloud
- מנדי גרובר | ראש תחום מרכז הארכיטקטורה
- Mark Lu | Technical Writer
- מייגן או'קיף | אחראית קשרי מפתחים
- אוליבייה בורז'ואה | מהנדס קשרי מפתחים
- Shir Meir Lador | Developer Relations Engineering Manager
- Vlad Kolesnikov | Developer Relations Engineer