انتقل إلى المحتوى الرئيسي

جارٍ تحميل المختبر المرئي…

#multi-agentsالذكاء الاصطناعي الوكيلي

العملاء المتعدّدون: planner وworkers وverifier. رسم بياني (DAG) يتفوّق على العميل الأحادي.

ما ستُجرّبه

  1. مرحبًا بك في قناة #multi-agents. العميل الأحادي (انظر #react-loop) نموذج لغوي كبير (LLM) يدور في حلقته وحده. هنا تُقسِّم المهمة: عميل Planner (نيلي، في الأعلى) يُقسِّم الهدف، ثم N من عملاء Workers المتخصصين (أخضر، في الوسط) يعملون بالتوازي، ثم Verifier (ذهبي، في الأسفل) يفحص ويُجمِّع. هذا النمط (AutoGen وCrewAI وLangGraph وClaude Sub-agents) يتفوّق على النمط الأحادي في المهام الطويلة، جودةً ووقتًا معًا. على الشاشة: الرسم البياني الموجَّه اللاحلَقي (DAG) في وضع السكون — ثلاث عقد باهتة، وحواف fan-out وfan-in تظهر كخطوط رمادية متقطّعة.
  2. لنُحمِّل هدفًا. اكتب /scenario article: يستقبل الـPlanner الطلب «اكتب مقالة مدوّنة عن RLHF»، ويظهر ثلاثة Workers (researcher وwriter وcritic).
  3. يتقدّم الـPlanner. اكتب /plan: ينبض بالنيلي، ويُوزِّع الأدوار على الـWorkers (تنطلق نقاط وردية صغيرة على طول الحواف)، ثم يُسلِّم المهمة.
  4. يبدأ الـWorkers العمل. اكتب /step: تنبض الكُريات الخضراء باللون الأزرق (مشغول)، بالتوازي افتراضيًا — أي في الوقت نفسه، تِك واحد للثلاثة.
  5. اكتب /step مرّة أخرى. ينتهي الـWorkers (أخضر ثابت = نجاح) وتنطلق نقاطهم نحو الـVerifier (fan-in). يتحوّل الشريط إلى VERIFICATION.
  6. اكتب /step مرّة أخيرة. يقبل الـVerifier، فتنتقل المرحلة إلى AGGREGATION ثم إلى DONE (شريط أخضر). المخرَج النهائي هو المقالة المُجمَّعة.
  7. لننتقل إلى سيناريو أغنى. اكتب /scenario code-review: يظهر ثلاثة Workers جدد (syntax وsecurity وstyle) لتدقيق ملف Python.
  8. لنُحاكِ رفضًا من الـVerifier. اكتب /retry: في الجولة التالية سيرفض الـVerifier المخرَج، ستُضيء حافّة التغذية الراجعة الحمراء، ويعود الـWorkers إلى الدورة الثانية.
  9. دورك. جرّب: /run لتشغيل دورة إعادة المحاولة كاملةً؛ /workers 5 ثم /strategy parallel ثم /run لرؤية fan-out ضخم (5 Workers في تِك واحد)؛ /strategy sequential لقياس التكلفة دون توازٍ؛ /inspect worker-2 لقراءة مخرَج عميل ما؛ /reset لإعادة البدء. المحطة التالية: قناة #planning-reflection (بريميوم) — يصبح الـPlanner قادرًا على التأمّل — وقناة #slash-commands (بريميوم) — كيف تصير هذه الأنماط اختصارات في Claude Code وCursor.

أوامر القناة

  • /scenario <article|translation|code-review>يُحمِّل سيناريو كاملًا (هدف + مخزون تخصّصات).
  • /planيُقسِّم الـPlanner الهدف ويوزِّع الأدوار على الـWorkers.
  • /stepيتقدَّم درجةً واحدة في التنسيق.
  • /runيُشغِّل التنسيق كاملًا حتى الإتمام أو الفشل.
  • /workers <n=2..5>يُغيِّر عدد الـWorkers النشطين (2..5).
  • /strategy <parallel|sequential>انتشار متزامن (parallel) أو واحد تلو الآخر (sequential).
  • /retryيفرض على الـVerifier أن يرفض عند الفحص التالي (إعادة محاولة).
  • /inspect <id>يعرض آخر رسالة لعميل ما (planner أو worker-1..N أو verifier).
  • /resetيُعيد ضبط الرسم البياني (article، 3 workers، parallel).

المسرد

العملاء المتعدّدون (multi-agents)
نمط تنسيق يتعاون فيه عدّة نماذج LLM (أو عدّة أدوار لنموذج واحد) على مهمّة مُركّبة. لكل عميل دور (planner، worker، verifier، critic…) وتخصّص. في المهام الطويلة، يتفوّق الرسم البياني متعدّد العملاء على العميل الأحادي في الجودة والوقت معًا.
Planner (مُخطِّط)
العميل في قمّة الرسم البياني الذي يُقسِّم الهدف إلى مهامّ فرعية ويُوزِّع الأدوار على الـWorkers. لا يُنجز العمل بنفسه، بل يُوجِّه. تُسمّي Anthropic هذا النمط orchestrator-workers في Building effective agents (2024).
Worker (عامل)
عميل مُنفِّذ، أُحادي التركيز: باحث، كاتب، مُختبِر، مُترجِم، مُدقِّق أمني… يتلقّى مهمّة فرعية من الـPlanner ويُرجع تسليمًا جزئيًا. قد يكون نموذج LLM مستقلًّا، أو نفس النموذج بموجّه دور، أو دالة حتمية.
Verifier (مُتحقِّق)
العميل في أسفل الرسم البياني الذي يفحص ويُجمِّع مخرَجات الـWorkers. إذا اكتشف عيبًا (اتّساق، schema، نبرة) أرسل توجيهًا إلى الـPlanner: تلك هي حلقة retry. غالبًا ما يكون Verifier نموذجًا أصغر وأرخص من الـWorkers.
DAG (رسم بياني موجَّه لاحلَقي)
رسم بياني موجَّه بلا دورات: العُقد عملاء، والحواف تبادلات رسائل. كونه لاحلقيًّا يضمن أنه يُبسَط في عدد محدود من الخطوات. تُنمذَج الحلقة (تغذية راجعة / إعادة محاولة) بوصفها دورة إضافية، لا حافّة حلقيّة.
fan-out / fan-in
fan-out: تُرسل عقدة واحدة (الـPlanner) مهمّةً إلى N عقد بالتوازي. fan-in: تُجمِّع N عقد مخرَجاتها في عقدة واحدة (الـVerifier). هذا هو النمط الذي يمنح توفيرات الزمن في تعدّد العملاء.
AutoGen
إطار عمل من Microsoft (2023) شاع منه الحوار متعدّد العملاء: لكل عميل موجِّه دور نظام، ويتبادلون الرسائل حتى يتقاربون. يُذكر كثيرًا بوصفه أوّل إطار عمل متعدّد العملاء واسع الانتشار.
CrewAI
إطار عمل بايثوني (2024) مُستوحى من AutoGen لكنه موجَّه بالعمليات: تُعرِّف Crew بأدوار (باحث، كاتب، مُراجِع)، ومهامّ، وتدفّق. مقاربة عملية شائعة الاستخدام في الإنتاج.
LangGraph
مكتبة LangChain (2024) تُنمذج التنسيق صراحةً بوصفه رسمًا بيانيًا للحالة. مناسبة لمهام سير العمل الشرطية (retry، تفريع، إدخال الإنسان في الحلقة). تستخدمها عدّة منظومات عملاء في الإنتاج.
Claude Sub-agents
ميزة في Claude Code (Anthropic، 2024) تسمح بتعريف عملاء فرعيين متخصّصين (test-runner، refactor، doc-writer…) يستدعيهم العميل الرئيس عبر /agent. تطبيق مباشر لنمط orchestrator-workers.

قنوات أخرى في الذكاء الاصطناعي الوكيلي

  • #react-loopحلقة ReAct لدى الوكيل: فكرة ← فعل ← ملاحظة، مباشرةً.
  • #tool-callingاستدعاء الأدوات (function calling / MCP): الـJSON الذي يجعل النموذج LLM يفعل.
  • #slash-commandsأوامر الشرطة المائلة، على غرار Claude Code / Cursor: قوالب، وسائط، تسلسل.
  • #context-memoryنافذة السياق وذاكرة العميل: عدّ الرموز، الاقتطاع، التلخيص، الفهرسة.
  • #planning-reflectionالتخطيط والتأمّل والتصحيح الذاتي: من 60% إلى 90% نجاحًا.
  • #multi-agentsالعملاء المتعدّدون: planner وworkers وverifier. رسم بياني (DAG) يتفوّق على العميل الأحادي.