# מערכה 2: הרכיבו את צוות הפודקאסט שלכם 🎬 ![lab2](../../../../translated_images/he/lab2.48444b9d549e7863.webp) ## העלילה מסתבכת אלכס (עוזר ה-AI שלך מהמערכה הראשונה) מעולה, אבל סוכן אחד לא יכול לנהל אולפן פודקאסט שלם. אתה צריך *צוות*: - 🔍 **סוכן מחקר**: סורק את האינטרנט למידע חדש - ✍️ **סוכן תסריט**: הופך את המחקר לדו-שיח מעניין - 👤 **אתה (העורך)**: מאשר תסריטים או מחזיר אותם לתיקונים ברוכים הבאים ל**אורקסטרציה של סוכני AI** — שם אתה הופך למנהל הצוות שלך של ה-AI. תחשוב על זה כמו אוונג'רס, אבל לייצור פודקאסט. ## מהי אורקסטרציה של סוכנים? (הגרסה הפשוטה) תדמיין שאתה מנהל מסעדה. אתה לא עושה הכל לבד, נכון? יש לך: - 🍳 שף שמבשל - 👨‍🍳 סו-שף שמכין מראש - 👩‍🍳 מלצרית שמשרתת אורקסטרציה של סוכנים זה אותו הרעיון, אבל עם AI. לכל סוכן יש התמחות, ואתה מתאם ביניהם להשגת יעדים גדולים יותר. אף סוכן לא מוצף, והעבודה נעשית מהר יותר. ### האנלוגיה עם הלהקה 🎸 סוכני ה-AI שלך הם כמו להקה: - **זמר מוביל**: הסוכן הראשי שמתמודד עם משימות מול הלקוחות - **מתופף**: שומר על הקצב, מטפל בעיבוד ברקע - **נגן בס**: תומך בכולם, מושך נתונים - **אתה (מנהל הלהקה)**: מתאם את הכל! בלי תיאום? רק רעש. עם אורקסטרציה? מוזיקה יפהפייה. ### למה זה חשוב סוכן AI אחד שמנסה לעשות הכל = שחיקה. סוכנים מומחים שעובדים יחד = יעילות מוגברת! 🚀 **דבר אמיתי**: זוכר כשניסית לחקור, לכתוב, ולקלוט את הפודקאסט לבד? כן, זה די מבאס. עם אורקסטרציה, כל סוכן מטפל במה שהוא הכי טוב בו. אתה פשוט מקבל את ההחלטות הסופיות. **דוגמה מהעולם האמיתי**: בוטים של שירות לקוחות שיודעים מתי לטפל בחשבוניות מול נושאים טכניים ומתי להעביר לאדם. זו אורקסטרציה! ## סוכן מול זרימת עבודה: מה ההבדל? תחשוב על זה ככה: ### 🤖 סוכן AI = מוזיקאי ג'אז - **מקבל החלטות בזמן אמת** בהתבסס על מה שהוא שומע - **מפרטג** פתרונות באמצעות הכלים שלו - **חושב** עם מוח LLM - **מתאים עצמו** לכל מה שאתה זורק עליו ### 🎵 זרימת עבודה = תזמורת מנגנת מוזיקה קלאסית - **עוקבת אחרי תווים** (שלבים מוגדרים מראש) - **נתיב ביצוע צפוי** - **מתאמת** בין סוכנים, אנשים, מערכות - **מבנה** כמו מתכון **הקסם**: זרימות עבודה *מאורקסטרות* סוכנים! אתה בונה זרימת עבודה שאומרת לסוכנים מתי לנגן את החלק שלהם. הטוב משני העולמות. 🎭 ## שלוש דרכים לתאם את צוות ה-AI שלך ### 1. 🎯 ריכוזי (אתה הבוס) סוכן ראשי אחד מנהל את כל ההחלטות. תחשוב על זה כמו שאתה מנהל צוות — אתה מחליט מי עושה מה ומתי. **יתרונות**: - ✅ הנהגה ברורה (ללא בלבול) - ✅ החלטות עקביות - ✅ קל לתחקור תקלות **שימוש ל**: - ניתוב שירות לקוחות ("זה חיוב או תמיכה טכנית?") - זרימות עבודה לאישור תוכן ("התסריט עובר?") - ייצור פודקאסט (בדיוק מה שאנו בונים!) ### 2. 🤝 מבוזר (סוכנים מארגנים את עצמם) הסוכנים משוחחים ישירות זה עם זה ומחליטים כקבוצה. כמו צ'אט קבוצתי שבו כולם מתואמים. **יתרונות**: - ✅ מתרחב בקלות (הוסף סוכנים בכל עת) - ✅ אין נקודה בודדת של כשל - ✅ שיתופי פעולה טבעיים בין סוכנים **שימוש ל**: - צוותי מחקר (כל סוכן חוקר מקורות שונים) - סשנים של חשיבה יצירתית - פתרון בעיות מבוזר ### 3. 🔀 היברידי (הטוב משני העולמות) אתה מגדיר את הכיוון הכללי, אבל לסוכנים יש חופש לארגן את עצמם למשימות. כמו מנכ"ל שמאמין בצוות שלו. **מתאים ל**: פרויקטים מורכבים שדורשים גם שליטה וגם גמישות. ## Microsoft Agent Framework: ערכת הכלים שלך לאורקסטרציה 🧰 הגיע הזמן לבנות! הנה מה שתשתמש בו: ### אבני הבניין #### 1. 🧱 מבצעים (העובדים שלך) - **מה הם**: יחידות עיבוד בודדות — יכולות להיות סוכנים או לוגיקה מותאמת אישית - **מה הם עושים**: מקבלים קלט, מבצעים עבודה, מפיקים פלט - **תחשוב עליהם כמו**: תחנות בקו הרכבה #### 2. ➡️ קצוות (החיבורים) - **מה הם**: דרכים בין המבצעים - **מה הם עושים**: משלטים בזרימת ההודעות ("אחרי A, לך ל-B") - **תחשוב עליהם כמו**: חיצים על דיאגרמת זרימה #### 3. 🗺️ זרימות עבודה (התכנית הכללית) - **מה הם**: הגרף המלא של המבצעים והקצוות - **מה הם עושים**: מגדירים את התהליך כולו מההתחלה לסוף - **תחשוב עליהם כמו**: מפת צינור הייצור שלך ### תכונות מגניבות שתאהב **🛡️ בטיחות טיפוסית**: הודעות בין סוכנים נבדקות טיפוסית. אין הפתעות של "אופס, טיפוס נתונים שגוי". **🔀 ניתוב גמיש**: - תנאים "אם אז" ("אם מאושר, לפרסם; אחרת, לכתוב מחדש") - עיבוד במקביל (מספר סוכנים עובדים בו זמנית) - דרכים דינמיות (זרימת העבודה מתאימה את עצמה לפי התוצאות) **🔌 אינטגרציה חיצונית**: - התחברות ל-APIs - הוספת נקודות ביקורת עם מעורבות אנושית (אתה מאשר לפני פרסום) - בניית זרימות בקשה/תגובה **💾 שמירת נקודות ביקורת**: שומר התקדמות! אם משהו מתרסק, ממשיכים מהנקודה שנשארה. **🤝 תיאום רב-סוכני**: - הפעלת סוכנים ברצף (A → B → C) - הפעלה במקביל (A + B + C יחד) - העברה בין סוכנים - עיבוד שיתופי ## שיטות עבודה מומלצות (טיפים מקצועיים) 🎯 ### 1. שמור על מודולריות כל סוכן צריך לעשות דבר אחד ממש טוב. אל תיצור "סוכן-על" שעושה הכל — תתחרט כשאתה בודק תקלות. ### 2. תכנן לכשלונות סוכנים טועים. רשתות נופלות. בנה טיפול בשגיאות ותוכניות גיבוי. העתיד שלך יודה לך. ### 3. נטר הכול עקוב אחרי מה שהסוכנים שלך עושים. השתמש ב-DevUI (נסקור את זה!) כדי לראות את זרימות העבודה בפעולה. ### 4. אופטימיזציה לגודל ההודעה אל תעביר קבצים ענקיים בין סוכנים. שמור על הודעות קלות ומהירות. ### 5. בחר את התבנית הנכונה צריך שליטה? לך על ריכוזי. צריך קנה מידה? לך על מבוזר. לא בטוח? היברידי! ## DevUI: המדליק זרימות העבודה שלך 🔍 ### מה זה DevUI? DevUI הוא כמו מגרש משחקים לבחינת הסוכנים וזרימות העבודה שלך. זו ממשק אינטרנט שבו אתה יכול: - 👀 לצפות בזרימת העבודה שלך בפעולה - 💬 לשוחח ישירות עם הסוכנים - 🔍 לדבג כשדברים משתבשים - 📊 לראות מעקבים ומדדי ביצועים > **חשוב**: DevUI מיועד רק לפיתוח! אל תשתמש בזה בייצור. תחשוב עליו כסביבת בדיקות מקומית. ### מה עושה את זה מדהים - **🖥️ ממשק אינטרנט אינטראקטיבי**: הקלק, הקלד, בדוק — ללא צורך בטרמינל - **📁 גרור ושחרר מוכן**: העלאת קבצים, בדיקה עם קלטים שונים - **📂 גילוי אוטומטי**: מצביע על תיקיה, ומוצא את כל הסוכנים אוטומטית - **📋 מצב ללא הגדרה**: רישום סוכנים בקוד, לא צריך מבנה תיקיות - **🔌 תואם OpenAI**: עובד עם OpenAI SDK (תאימות FTW!) - **👁️ מעקב מובנה**: רואה בדיוק מה הסוכנים עושים ### איך הקלט עובד DevUI חכם לגבי קלטים: - **בודק סוכנים?** אתה מקבל תיבות טקסט וכפתורי העלאת קבצים - **בודק זרימות עבודה?** הממשק יוצר שדות קלט אוטומטית לפי מה שזרימת העבודה מצפה זה כמו קסם, אבל זה פשוט קוד טוב. ✨ ## המשימות שלך: בנה אולפן פודקאסט 🎬 ### משימה 1: צור סוכן יחיד עם DevUI 📂 [01.AgentDevUI](../../../../WorkshopForAgentic/code/02.Workflow/01.AgentDevUI) **האתגר**: לפני שהרכבנו צוות שלם, נבדוק את DevUI עם סוכן אחד: מומחה חיפוש באינטרנט. **מה אתה בונה**: סוכן מחקר שיכול לחפש באינטרנט נושאי פודקאסט. תבדוק אותו דרך ממשק הווב של DevUI בכתובת `http://localhost:8090`. **כישורים שתלמד**: - 🚀 הפעלת סוכנים ב-DevUI - 🔍 בדיקת תגובות הסוכן בזמן אמת - 🛠️ בניית כלים מותאמים (חיפוש באינטרנט) - 📊 הפעלת מעקב לדיבוג בעיות - 🖥️ שימוש בממשק האינטראקטיבי **הקוד**: - `agent.py`: ה-SearchAgent שלך עם כוחות חיפוש באינטרנט - משתמש ב-OllamaChatClient להתחברות ל-Qwen - מממש את פונקציית הכלי `web_search()` - מופעל עם `serve()` — פותח את DevUI אוטומטית **תנאי לניצחון**: תשאל את הסוכן שלך "מה טרנדי ב-AI?" ותראה אותו מחפש באינטרנט! 🎉 ### משימה 2: בנה זרימת עבודה רב-סוכנית 📂 [02.WorkflowDevUI](../../../../WorkshopForAgentic/code/02.Workflow/02.WorkflowDevUI) **האתגר**: עכשיו הכיף האמיתי מתחיל! בנה זרימת עבודה שלמה לייצור פודקאסט עם: 1. 🔍 **סוכן חיפוש** → מחקר בנושא שלך 2. ✍️ **סוכן תסריט** → כותב דו-שיח בין שני מגישים (בסינית!) 3. 👤 **מבצע סקירה** → מבקש ממך לאשר או לדחות 4. 🔄 **לולאה חוזרת** → אם נדחה, כותב מחדש לפי המשוב שלך **כישורים שתלמד**: - 🧱 יצירת סוכנים ייעודיים למשימות שונות - 🔗 קישור סוכנים עם WorkflowBuilder - 🔀 מימוש לולאות אישור (מעורבות אדם!) - 🚦 ניתוב מותנה (אם מאושר או נדחה) - 🔧 יצירת מבצעים מותאמים ללוגיקה עסקית **זרימת העבודה**: ``` SearchAgent → ScriptAgent → ReviewExecutor ↑ ↓ (if rejected) ←───────── ``` **הקוד**: - `search_agent/agent.py`: מומחה המחקר שלך - `generate_script_agent/agent.py`: כותב התסריט שלך (כותב בסינית!) - `workflow/workflow.py`: כאן מתרחשת הקסם של האורקסטרציה - `main.py`: מפעיל את הכל ב-DevUI **תנאי לניצחון**: תן נושא, בדוק את התסריט, דחה פעם אחת לבדוק את הלולאה, ואז תאשר! 🎉 ### משימה 3: בנה אפליקציית קונסולה 📂 [03.Application](../../../../WorkshopForAgentic/code/02.Workflow/03.Application) **האתגר**: קח את זרימת העבודה מ-DevUI והפוך אותה לאפליקציית טרמינל משובחת עם פלט בצבעים, ספינרים וממשק שמירת קבצים. זהו חומר מוכן לייצור! **כישורים שתלמד**: - ⚡ הרצת זרימות עבודה בתכנות (ללא DevUI) - 📡 ארכיטקטורה מונעת אירועים עם סטרימינג - 🎨 יצירת ממשקי טרמינל יפים (צבעים, ספינרים, פס התקדמות) - 💾 שמירת תסריטים סופיים לקבצים - 🔄 טיפול בזרימות עבודה אסינכרוניות עם asyncio של פייתון **מה זה עושה**: 1. מבקש ממך נושא לפודקאסט 2. מציג התקדמות בזמן אמת ("סוכן החיפוש עובד...") 3. מציג את התסריט שנוצר עם צבעים 4. מבקש את אישורך 5. שומר את התסריט המאושר לקובץ `podcast.txt` **הקוד**: - `podcast_app.py`: האפליקציה הראשית עם טיפול באירועים - `workflow.py`: משתמש שוב בזרימת העבודה מהמשימה השנייה - מטפל באירועים: `AgentRunUpdateEvent`, `RequestInfoEvent`, `WorkflowOutputEvent` - משתמש בצבעי ANSI לעיצוב הטרמינל **תנאי לניצחון**: הרץ את האפליקציה, צור תסריט לפודקאסט, וראה שהוא נשמר! בנית כלי אמיתי. 🚀 ## מה שהשגת 🏆 לאחר המערכה השנייה, אתה יכול: - ✅ לארקסטר סוכני AI מרובים כמו מקצוען - ✅ לבנות זרימות עבודה עם לוגיקה רציפה ותנייתית - ✅ להוסיף נקודות אישור עם מעורבות אדם - ✅ להשתמש ב-DevUI לבדיקה ודיבוג של זרימות עבודה - ✅ ליצור אפליקציות קונסולה מוכנות לייצור - ✅ לטפל בשגיאות בדרך חלקה במערכות מורכבות - ✅ לבחור את דפוס האורקסטרציה הנכון לכל פרויקט ## כשדברים משתבשים 🔧 ### "זרימת העבודה שלי מורכבת מדי!" **התיקון**: חלק אותה לזרימות משנה קטנות יותר. כל זרימת עבודה צריכה לעשות דבר אחד טוב. חבר אותן יחד אם צריך. ### "אני לא יכול לעקוב מה קורה!" **התיקון**: השתמש בשמירת נקודות בדיקה בזרימת העבודה. הפעל מעקב ב-DevUI כדי לראות כל שלב. ### "טעות של סוכן אחד מפילה הכל!" **התיקון**: הוסף גבולות לטיפול בשגיאות. כל סוכן צריך לטפל בכישלונות שלו ולהחזיק בתוכנית חלופית. ### "זה כל כך איטי" **התיקון**: האם אפשר להריץ סוכנים במקביל? זרימות רציפות נוחות אבל איטיות. חפש הזדמנויות לריצה במקביל! ## משאבים מועילים 🔗 - [מסמכי זרימות עבודה](https://learn.microsoft.com/en-us/agent-framework/user-guide/workflows/overview) — מדריכים רשמיים של מיקרוסופט - [תבניות אורקסטרציה](https://www.ibm.com/think/topics/ai-agent-orchestration) — הפרספקטיבה של IBM - [Agent Framework GitHub](https://github.com/microsoft/agent-framework) — עיין בקוד המקור - [דוגמאות קוד](https://github.com/microsoft/agent-framework/tree/main/python/samples) — גנוב דפוסים מכאן --- **מוכן לסיום?** יש לך את הסקריפט שלך. עכשיו בוא נהפוך את זה לקול אמיתי! → [המקטע 3: תן לפודקאסט שלך חיים](03.Multi-SpeakerPodcastGenerationWithVibeVoice.md) 🎤 --- **נתקעת? מבולבל? מתרגש?** שתף בצ'אט של הסדנה! כולנו לומדים יחד. 🚀 --- **כתב ויתור**: מסמך זה תורגם באמצעות שירות תרגום מבוסס בינה מלאכותית [Co-op Translator](https://github.com/Azure/co-op-translator). למרות שאנו משתדלים לשמור על דיוק, יש לקחת בחשבון שתרגומים אוטומטיים עשויים להכיל שגיאות או אי דיוקים. המסמך המקורי בשפת המקור שלו נחשב למקור הרשמי והמהימן. עבור מידע קריטי, מומלץ לפנות לתרגום מקצועי על ידי אדם. אין אנו אחראים לכל אי הבנה או פרשנות שגוייה שעלולות לנבוע משימוש בתרגום זה.