יחידה 10 / 11

זרימות עבודה של סוכן ומשימות מרובות שלבים

רווחים:

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

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

קנה מידה מהפתרון הפשוט ביותר לסוכן

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

  1. קריאה בודדת: אם המשימה נפתרת באמצעות שיחת דגם בודדת (לסכם, לסווג) עצור כאן.
  2. שיחה בודדת עם RAG: אם נדרש מידע, הוסף שליפה ושוב שיחה בודדת.
  3. זרימת עבודה קבועה: אם השלבים ידועים מראש, רצף אותם באופן ידני (זרימת קוד). המודל עושה עבודת משנה בכל שלב, אבל אתה קובע את הסדר.
  4. סוכן מונע מודל: אם לא ניתן לדעת מראש את השלבים, המודל מחליט לאיזה סוכן להתקשר ומתי. האפשרות החזקה ביותר אך היקרה והמסוכנת ביותר.

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

טיפ: "האם אני יכול לכתוב את השלבים למשימה זו מראש?" לִשְׁאוֹל. אם אתה יכול לכתוב את זה, בנה זרימת עבודה - זולה יותר, בטוחה יותר, ניתנת לבדיקה. עם זאת, אם השלבים משתנים בהתאם לקלט ולא ניתן לחזות אותם, נדרש סוכן.

שלושה דפוסי זרימת עבודה בסיסיים

שרשור מהיר: הפלט של שלב אחד הוא הקלט של השלב הבא. "צור טיוטה → עריכה → פורמט." כל צעד פשוט וממוקד; קל לנפות באגים.

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

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

דפוס

מתי

דוגמה

כבול

השלבים הם עוקבים ותלויים

טיוטה → עריכה → פורמט

הפניה מחדש

עיבוד שונה בהתאם לסוג הקלט

סיווג בקשת תמיכה

מקביל

עבודות משנה עצמאיות

סכם מספר מסמכים בנפרד

סוכן (לולאה)

לא ניתן לחזות צעדים מראש

מחקר/תיקון פתוח

# תבנית ניתוב (קונספטואלית)סוג = pattern.classify(request) # "return" | "טכניקה" | "invoice"if tour == "return": answer = return_flow(request)elif tur == "technical": answer = technical_flow(request)else: answer = invoice_flow(request)

מחזור תכנון-ביצוע-אימות

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

# Plan-execute-verify (conceptual)plan = model.uret("פרק משימה זו לשלבים: " + task)for step in plan: result = agent_loop(step) # execute with toolscheck = model.uret("האם הפלט הזה עומד במשימה? ספר לי אם חסר משהו: " + task + results)if check.missing: # תיקון סבב

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

עיצוב חלש/חזק

חלש (שם הכל על סוכן ענק אחד):

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

רב עוצמה (זרימה ראשונה, סוכן רק במידת הצורך, מוגבל):

ראשית חלקו את העבודה לשלבים קבועים (ניתוב + שרשור). השתמש בסוכן רק בתת-מטלות שבהן השלבים אינם ידועים; הוסף מגבלת צעדים, מעקב אחר התקדמות וסבב אימות.

שלושה מיני מארזים

מקרה 1 - זרימת עבודה במקום סוכן. צוות אחד הגדיר את משימת "בקשת תמיכה בתהליך" עם סוכן חופשי; לפעמים הסוכן היה פונה 15 צעדים והולך בדרך הלא נכונה. השלבים תוקנו למעשה (סווג → אחזר מידע רלוונטי → כתוב טיוטה → שלח לאישור). כאשר עברנו לזרימת העבודה של ניתוב + שרשור, העקביות עלתה מ-58% ל-96% והעלות ירדה בחצי.

מקרה 2 - רווח מקביל. צוות משפטי סיכם 20 חוזים בזה אחר זה; זה לקח 4 דקות בסך הכל. כשעברנו לדפוס מקביל (הכל באותו זמן, ואז לשלב), הזמן הצטמצם ל-25 שניות והאיכות עלתה ככל שכל סיכום קיבל את מלוא תשומת הלב.

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

טעויות נפוצות

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

לסיכום

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

משימת יישום

בחר משימה מרובת שלבים מהעסק שלך (למשל "הכן והפצת דוח חודשי"). (1) האם תוכל לכתוב את השלבים של משימה זו מראש? אם אתה יכול לכתוב אותו, עצב אותו כזרימת עבודה (איזה דפוס: שרשור/ניתוב/מקביל?); אם אינך יכול לכתוב, הסבר מדוע יש צורך בסוכן. (2) צייר את העיצוב שבחרת באמצעות דיאגרמת חץ תיבה. (3) אם סוכנות: כתוב כיצד תגדיר את תנאי העצירה, מעקב ההתקדמות וסבב האימות. (4) רשום 3 סיכונים בביצוע אותה משימה עם "סוכן מפתח יחיד".

רשימת בדיקה

  • [ ] אני יכול לבחור את הרמה הנכונה בסולם "מורכבות לפי הצורך".
  • [ ] אני יכול להבחין בהבדל בשליטה בין Workflow לסוכן.
  • [ ] אני יכול למפות דפוסי שרשור, ניתוב ותבניות מקבילות למשימות מתאימות.
  • [ ] אני יכול להגדיר את מחזור התוכנית-ביצוע-אימות, מצב עצירה ומעקב אחר התקדמות בסוכנים.
  • [ ] אני זוכר שיותר מדי גמישות מביאה לחוסר חיזוי ועלויות.