# الفصل 2: جمّع فريق إنتاج البودكاست الخاص بك 🎬 ![lab2](../../../../translated_images/ar/lab2.48444b9d549e7863.webp) ## تتعقد القصة أليكس (مساعدك الذكي من الفصل 1) رائع، لكن لا يمكن لوكيل واحد أن يدير استوديو بودكاست كامل. تحتاج إلى *فريق*: - 🔍 **وكيل البحث**: يبحث في الإنترنت عن معلومات جديدة - ✍️ **وكيل النص**: يحول البحث إلى حوار جذاب - 👤 **أنت (المحرر)**: توافق على النصوص أو تعيدها لإعادة الكتابة مرحبًا بك في **تنسيق وكلاء الذكاء الاصطناعي** — حيث تصبح مخرج فريقك الذكي. تخيل الأمر مثل المنتقمون، لكن لإنتاج البودكاست. ## ما هو تنسيق الوكلاء؟ (النسخة المبسطة) تخيل أنك تدير مطعماً. أنت لا تقوم بكل شيء بنفسك، صحيح؟ لديك: - 🍳 طاهٍ يطبخ - 👨‍🍳 مساعد طاهٍ يحضر الطعام - 👩‍🍳 نادل يقدم الطلبات تنسيق الوكلاء هو نفس الفكرة، لكن مع الذكاء الاصطناعي. كل وكيل له تخصص، وأنت تنسق بينهم لتحقيق أهداف أكبر. لا يتحمل وكيل واحد كل العبء، وتتم إنجاز الأعمال بسرعة أكبر. ### التشبيه مع الفرقة الموسيقية 🎸 وكلاء الذكاء الاصطناعي مثل فرقة موسيقية: - **المغني الرئيسي**: الوكيل الرئيسي الذي يتعامل مع العملاء - **عازف الطبل**: يحافظ على الإيقاع ويتولى المعالجة الخلفية - **عازف الباس**: يدعم الجميع ويجمع البيانات - **أنت (مدير الفرقة)**: تنسق الجميع! بدون التنسيق؟ مجرد ضوضاء. مع التنسيق؟ موسيقى جميلة. ### لماذا هذا مهم محاولة وكيل ذكاء اصطناعي واحد لفعل كل شيء = التعب والإرهاق. وكلاء متخصصون يعملون معًا = كفاءة عالية! 🚀 **حديث صريح**: هل تذكرت محاولتك للبحث، والكتابة، والتحرير وحدك؟ نعم، هذا مرهق. مع التنسيق، كل وكيل يتعامل مع ما يتقنه. وأنت تتخذ القرارات النهائية. **مثال واقعي**: روبوتات دعم العملاء التي تعرف متى تتعامل مع الفواتير، ومتى مع المشاكل التقنية، ومتى تحيل الأمر إلى الإنسان. هذا هو التنسيق! ## الفرق بين الوكيل وسير العمل هو ماذا؟ فكر فيها هكذا: ### 🤖 وكيل الذكاء الاصطناعي = عازف موسيقى جاز - **يتخذ قرارات بشكل فوري** بناءً على ما يسمعه - **يبدع حلولًا** باستخدام أدواته - **يفكر** بعقل نموذج اللغة الكبير (LLM) - **يتكيف** مع أي شيء تلقيه عليه ### 🎵 سير العمل = أوركسترا تعزف الموسيقى الكلاسيكية - **يتبع النوتة الموسيقية** (خطوات محددة مسبقًا) - **مسار تنفيذي متوقع** - **ينسق** بين وكلاء، وبشر، وأنظمة - **منظم** مثل وصفة طهي **السحر**: سير العمل *ينسق* الوكلاء! تبني سير عمل يقول للوكلاء متى يعزفون دورهم. أفضل ما في العالمين. 🎭 ## ثلاث طرق لتنسيق فريق الذكاء الاصطناعي الخاص بك ### 1. 🎯 مركزي (أنت المدير) وكيل رئيسي واحد يتخذ كل القرارات. اعتبره مثل إدارتك لفريق — أنت تقرر من يفعل ماذا ومتى. **الإيجابيات**: - ✅ قيادة واضحة (لا لبس) - ✅ قرارات متناسقة - ✅ سهل في التصحيح **استخدمه لـ**: - توجيه خدمة العملاء ("هل هذه الفاتورة أم الدعم الفني؟") - تدفقات الموافقة على المحتوى ("هل يمر هذا النص؟") - إنتاج البودكاست (تمامًا ما نبنيه!) ### 2. 🤝 موزع (الوكلاء ينظمون أنفسهم) الوكلاء يتحدثون مع بعضهم البعض مباشرة ويتفقون بمجموعة. مثل دردشة جماعية حيث ينسق الجميع. **الإيجابيات**: - ✅ قابل للتوسع بسهولة (أضف وكلاء متىً شئت) - ✅ لا نقطة فشل واحدة - ✅ الوكلاء يتعاونون بشكل طبيعي **استخدمه لـ**: - فرق البحث (كل وكيل يستكشف مصادر مختلفة) - جلسات العصف الذهني - حل المشكلات الموزعة ### 3. 🔀 هجين (أفضل ما في العالمين) أنت تحدد الاتجاه العام، لكن الوكلاء لهم حرية التنظيم الذاتي في المهام. مثل كونك المدير التنفيذي الذي يثق بفريقه. **مثالي لـ**: المشاريع المعقدة التي تحتاج إلى تحكم ومرونة في نفس الوقت. ## إطار عمل Microsoft Agent: أدوات التنسيق الخاصة بك 🧰 حان الوقت للبناء! هنا ما ستستخدمه: ### اللبنات الأساسية #### 1. 🧱 منفذون (عمالك) - **ما هم**: وحدات معالجة فردية — إما وكلاء أو منطق مخصص - **ما يفعلونه**: يستقبلون المدخلات، ينفذون العمل، ينتجون المخرجات - **تخيلهم كـ**: محطات في خط تجميع #### 2. ➡️ الحواف (الاتصالات) - **ما هي**: مسارات بين المنفذين - **ما تفعل**: تتحكم في تدفق الرسائل ("بعد A اذهب إلى B") - **تخيلها**: سهام في مخطط سير العمل #### 3. 🗺️ سير العمل (الخطة الرئيسية) - **ما هو**: الرسم البياني الكامل للمنفذين + الحواف - **ما يفعل**: يحدد العملية كاملة من البداية للنهاية - **تخيله**: مخطط خط إنتاجك ### ميزات رائعة ستعجبك **🛡️ سلامة النوع**: الرسائل بين الوكلاء تُفحص أنواعها. لا مفاجآت "خطأ في نوع البيانات". **🔀 التوجيه المرن**: - شروط If-then ("إن وافق، انشر؛ وإلا، أعد كتابة") - المعالجة المتوازية (عدة وكلاء يعملون في نفس الوقت) - المسارات الديناميكية (تتكيف وفق النتائج) **🔌 التكامل الخارجي**: - الاتصال بواجهات برمجة التطبيقات (API) - نقاط تحقق مع تدخل بشري (أنت توافق قبل النشر) - بناء تدفقات طلب/استجابة **💾 نقاط التحقق**: احفظ التقدم! إذا تعطل شيء، استمر من حيث توقفت. **🤝 تنسيق متعدد الوكلاء**: - تشغيل الوكلاء بالترتيب (A → B → C) - تشغيلهم بالتوازي (A + B + C معًا) - تمرير المهام بين الوكلاء - معالجة تعاونية ## أفضل الممارسات (نصائح احترافية) 🎯 ### 1. اجعله معياريًا كل وكيل يجب أن يقوم بشيء واحد جيد جداً. لا تصنع "وكيل خارق" يفعل كل شيء — ستندم عند التصحيح. ### 2. خطط للفشل الوكلاء يخطئون. الشبكات تتعطل. أدرج معالجة الأخطاء وخطط طوارئ. ذاتك المستقبلية ستشكرك. ### 3. راقب كل شيء تابع ما يفعله وكلاؤك. استخدم DevUI (سنشرحها لاحقًا!) لرؤية سير العمل أثناء التنفيذ. ### 4. احسن حجم الرسائل لا تمرر ملفات ضخمة بين الوكلاء. اجعل الرسائل خفيفة وسريعة. ### 5. اختر النمط المناسب هل تحتاج تحكم؟ اختَر النمط المركزي. تحتاج توسع؟ الجأ للموزع. غير متأكد؟ اختر الهجين! ## DevUI: مصحح سير العمل الخاص بك 🔍 ### ما هو DevUI؟ DevUI يشبه ملعب اختبار لوكلائك وسير العمل. إنه واجهة ويب حيث يمكنك: - 👀 مشاهدة سير العمل أثناء التنفيذ - 💬 الدردشة مباشرة مع الوكلاء - 🔍 تصحيح الأخطاء عند وقوعها - 📊 رؤية التتبع والقياسات الأداء > **مهم**: DevUI مخصص للتطوير فقط! لا تستخدمه في الإنتاج. فكر فيه كبيئة اختبار محلية. ### ما الذي يجعله رائعًا - **🖥️ واجهة ويب تفاعلية**: انقر، اكتب، جرب — بدون سطر أوامر - **📁 سحب وإفلات جاهز**: حمل ملفات، جرب مدخلات مختلفة - **📂 اكتشاف تلقائي**: وجهه لمجلد، يعثر على كل وكلائك تلقائيًا - **📋 وضع بلا إعدادات**: سجل وكلاء عبر الكود فقط، لا حاجة لبنية مجلدات - **🔌 متوافق مع OpenAI**: يعمل مع مجموعة أدوات OpenAI (التوافق مضمون!) - **👁️ تتبع مدمج**: شاهد بالضبط ما يفعله وكلاؤك ### كيف يعمل الإدخال DevUI ذكي مع المدخلات: - **تختبر وكلاء؟** تحصل على صناديق نص وأزرار رفع ملفات - **تختبر سير العمل؟** تولد الواجهة حقول إدخال تلقائيًا تبعًا لما يتوقعه سير العمل كأنها سحر، لكنها مجرد شفرة جيدة. ✨ ## مهماتك: بناء استوديو بودكاست 🎬 ### المهمة 1: إنشاء وكيل واحد مع DevUI 📂 [01.AgentDevUI](../../../../WorkshopForAgentic/code/02.Workflow/01.AgentDevUI) **التحدي**: قبل بناء فريق كامل، دعنا نختبر DevUI مع وكيل واحد: متخصص في البحث على الويب. **ما تبنيه**: وكيل بحث يمكنه البحث على الإنترنت عن مواضيع بودكاست. ستختبره باستخدام واجهة DevUI على `http://localhost:8090`. **المهارات التي ستتعلمها**: - 🚀 تشغيل الوكلاء في DevUI - 🔍 اختبار ردود الوكلاء في الوقت الحقيقي - 🛠️ بناء أدوات مخصصة (بحث على الويب) - 📊 تفعيل التتبع لتصحيح الأخطاء - 🖥️ استخدام واجهة الويب التفاعلية **الكود**: - `agent.py`: وكيل البحث الخاص بك مع قدرات البحث على الويب - يستخدم OllamaChatClient للاتصال بـ Qwen - ينفذ دالة `web_search()` - يُشغل بـ `serve()` — يفتح DevUI تلقائياً **شرط النجاح**: اسأل وكيلك "ما الجديد في الذكاء الاصطناعي؟" وشاهد كيف يبحث على الويب! 🎉 ### المهمة 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`: يعيد استخدام سير العمل من المهمة 2 - يتعامل مع الأحداث: `AgentRunUpdateEvent`، `RequestInfoEvent`، `WorkflowOutputEvent` - يستخدم ألوان ANSI لتنسيق الطرفية **شرط النجاح**: شغّل التطبيق، أنشئ نص بودكاست، وشاهد حفظه! لقد بنيت أداة حقيقية. 🚀 ## ما أتقنته 🏆 بعد الفصل 2، يمكنك: - ✅ تنسيق عدة وكلاء ذكاء اصطناعي مثل المحترفين - ✅ بناء سير عمل مع منطق متسلسل وشروط - ✅ إضافة نقاط تحقق بموافقة بشرية - ✅ استخدام 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). في حين نسعى إلى الدقة، يرجى العلم أن الترجمات الآلية قد تحتوي على أخطاء أو عدم دقة. يجب اعتبار المستند الأصلي بلغته الأصلية المصدر الموثوق به. للمعلومات الحساسة، يوصى بالاعتماد على ترجمة بشرية محترفة. نحن غير مسؤولين عن أي سوء فهم أو تفسير ناتج عن استخدام هذه الترجمة.