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

نمط رئيس الأركان: متى تُنسّق بين الوكلاء ومتى تكتب سكربتًا فقط

لا يُجدي تنسيق الوكلاء المتعددين إلا عندما تحتاج المهام الفرعية إلى سياق مختلف أو أدوات مختلفة أو تحقق مستقل. وإلا فهو استدعاء دالة أبطأ.

صورة بسيطة ليد روبوتية تمتد على خلفية بيضاء.

الحجة ضد اللجوء إلى الأسراب افتراضيًا

من أنماط الفشل الشائعة في هندسة الوكلاء أن تلجأ إلى سرب قبل أن تلجأ إلى دالة. تُفكَّك المهمة إلى أدوار، ويُضاف مشرف، ويُعلَن النظام "وكيليًا". وما بُني في الواقع هو نظام موزّع مع نموذج لغوي في الحلقة، والتكاليف هي تكاليف التوزيع المألوفة مضافًا إليها تكاليف اللاحتمية غير المألوفة.

كل وكيل إضافي يُدخل عملية تسليم. عند كل تسليم، يُسلسِل الوكيل المُنتِج حالته إلى نص، ويُفكِّك الوكيل المستهلك ذلك النص إلى سياق. هذه الرحلة ذهابًا وإيابًا فاقدة. نتيجة مُهيكلة تحمل درجة ثقة ومرجع مصدر وعلامة فشل جزئي تصبح، في النثر، جملة تُسقط الثلاثة جميعًا. والفقد ليس عشوائيًا؛ بل يرتبط ارتباطًا وثيقًا بالمعلومات التي يحتاجها الوكيل اللاحق بالضبط ليقرر المضي أو إعادة المحاولة أو التصعيد.

كما تنمو كلفة التنسيق أسرع مما يوفره التفكيك. إذا استغرقت مهمة T وحدة عمل وانقسمت إلى n مهمة فرعية، فالوفر المثالي نحو T/n. أما كلفة التنسيق فليست T/n؛ بل هي مجموع عمليات التسليم، وكل منها يتطلب prompt واستدعاء نموذج وتحليلًا وتحققًا. عمليًا، إضافة وكلاء بعد النقطة التي تصبح فيها المهام الفرعية مستقلة فعليًا تُنتج نظامًا أبطأ وأغلى وأصعب في التنقيح من الاستدعاء الواحد الذي استبدله.

أعمق مشكلة هي قابلية الاختبار. الكود الحتمي يمكن اختباره وحديًا. الدالة التي تأخذ مدخلًا مُنمَّطًا وتعيد مخرجًا مُنمَّطًا لها عقد يمكن التأكيد عليه. أما prompt المنسّق فليس كذلك. يمكنك تقييم مخرجاته على مجموعة بيانات، وينبغي لك ذلك، لكن لا يمكنك كتابة اختبار يفشل عندما يغيّر المنسّق سياسة توجيهه بصمت بين إصدارات النموذج. الـ prompt مواصفة معبَّر عنها بلغة بلا مُصرِّف.

هذه ليست حجة ضد الأنظمة متعددة الوكلاء. إنها حجة ضد التعامل معها كخيار افتراضي. نمط رئيس الأركان، كما ورد في هذا المقال حول تنسيق جلسات Claude Code، مفيد تحديدًا لأنه يسمّي الشروط التي تستحق فيها طبقة تنسيق أن تُبقى.

إشارات تبرر التنسيق

ثلاث إشارات، عمليًا، تميز مهمة تحتاج منسّقًا عن مهمة تحتاج سكربتًا.

مجموعات أدوات منفصلة أو سياقات منفصلة

إذا كانت المهمة الفرعية A تحتاج وصول قراءة إلى قاعدة شيفرة والمهمة الفرعية B تحتاج وصول كتابة إلى هدف نشر، فهما تحتاجان مجموعتي أدوات مختلفتين. الوكيل الواحد الذي يحمل الأداتين يجب أن يُؤتمن على كلتيهما، ويجب أن يحمل سياقه مخططات كلتيهما وبيانات اعتمادهما وأنماط فشلهما. فصلُهما يعني أن سياق كل وكيل أصغر وسلطته أضيق. والحجة نفسها تنطبق على نوافذ السياق: إذا كانت المادة الخام لمهمة فرعية ستستهلك معظم النافذة، والمادة الخام لأخرى ستستهلك الباقي، فسيقتطع الوكيل الواحد أو يلخّص، والتلخيص هو حيث يكمن فقدان المعلومات.

Detail view of an aircraft's sophisticated control panel with instruments and switches.

استقلال حقيقي

الوكيل الثاني يستحق كلفته عندما يكون مستقلًا فعليًا، لا عندما يكون إعادة صياغة للأول. الاستقلال يعني أنه لا يشارك الوكيل الأول سياقه ولا افتراضاته ولا أنماط فشله. المدقق الذي يقرأ السياق نفسه والاستدلال نفسه سيميل إلى الاتفاق مع المُنتِج، لأنه يشغّل التوزيع نفسه على الرموز نفسها. أما المدقق الذي يقرأ الأثر فقط، ويملك أدواته الخاصة لفحصه، فيمكنه أن يختلف. وهذا الاختلاف هو القيمة.

مهام طويلة الأفق

بعض المهام طويلة الأفق بما يكفي لأن سياقًا واحدًا لا يستوعبها. هجرة تمس مئات الملفات، مهمة بحثية تتراكم مصادرها على مدى ساعات، استجابة لحادث تمتد عبر أنظمة متعددة: هذه تتجاوز ما يمكن لنافذة واحدة الاحتفاظ به، ونمط الفشل ليس إجابة خاطئة بل إجابة منسية. هنا وظيفة المنسّق ليست الاستدلال حول المهمة بل إدارة سجل ما أُنجز وما تبقى.

إذا لم تكن أي من هذه الإشارات الثلاث موجودة، فالإجابة الهندسية الصادقة هي سكربت. سكربت يستدعي نموذجًا واحدًا، ويتحقق من المخرج مقابل مخطط، ويعيد المحاولة عند الفشل، هو قابل للاختبار وقابل للمراقبة ورخيص. وهو أيضًا، في معظم الحالات، أسرع.

تنفيذ النمط

عندما يكون التنسيق مبررًا، تحدد تفاصيل التنفيذ ما إذا كان سينجح. ثلاث آليات تهم أكثر من اختيار الإطار.

سجل مهام مرجعي واحد

ينبغي للوكلاء أن يقرأوا ويكتبوا في سجل مشترك واحد، لا أن يتبادلوا ملخصات نثرية. السجل هو مصدر الحقيقة لما جُرِّب وما نجح وما هو معطَّل. كل مدخل سجل: معرّف المهمة والحالة والمدخلات والمخرجات وأي خطأ. يطالب الوكلاء بالمهام ويحدّثون الحالة ويضيفون النتائج. المنسّق

هذا يقلب النمط المعتاد. فبدلًا من أن يحتفظ المنسّق بالحالة في سياقه ويلخصها للعاملين، تعيش الحالة خارج كل سياق وتُقرأ عند الطلب. العامل الذي يحتاج معرفة ما إذا كانت تبعية قد نجحت يقرأ السجل بدلًا من الوثوق بملخص. يبقى سياق المنسّق صغيرًا، وهذا هو المقصود.

Close-up of automated canning equipment in a brewery, highlighting the manufacturing process.

عقود التسليم كحمولات مُنمَّطة

ينبغي أن يكون التسليم حمولة مُنمَّطة، لا ملخصًا نثريًا. عرّف المخطط مرة واحدة، وتحقق على الجانبين، وافشل بصوت عالٍ عند عدم التطابق. عقد أدنى لنتيجة وكيل فرعي قد يبدو هكذا:

{
  "task_id": "string",
  "status": "succeeded | failed | blocked",
  "artefacts": [{"path": "string", "hash": "string"}],
  "claims": [{"text": "string", "evidence": "string"}],
  "open_questions": ["string"]
}

المخطط يفعل شيئين. فهو يُلزم الوكيل المُنتِج بالتمييز بين ما فعله وما يعتقده، وهما شيئان مختلفان. ويمنح الوكيل المستهلك واجهة مستقرة، فتغيير في استدلال المُنتِج لا يغيّر مدخل المستهلك بصمت. وحيث لا يمكن ملء حقل، يجب على الوكيل أن يقول ذلك، وblocked حالة صالحة. الملخصات النثرية تخفي هذه الحالة بالضبط.

قِس زمن التسليم وفقدان المعلومات

زمن التسليم قابل للقياس: الوقت من إكمال المُنتِج إلى بدء المستهلك، والوقت المستغرق في التحقق وإعادة المحاولات. أما فقدان المعلومات فأصعب لكنه ليس مستحيلًا. قِسه بمقارنة ما أصدره المُنتِج بما تصرف عليه المستهلك. إذا كانت حمولة المُنتِج تحتوي ثلاثة أسئلة مفتوحة ولم يعالج إجراء المستهلك التالي أيًا منها، فذلك فقدان، ويستحق التسجيل. وعلى مدى تشغيلات كثيرة، يخبرك توزيع هذه الخسائر أين تكون العقود رقيقة جدًا.

تعامل مع كليهما كمقاييس من الدرجة الأولى، إلى جانب معدل نجاح المهمة والكلفة لكل مهمة. نظام تنسيق صحيح لكن عمليات تسليمه تستغرق وقتًا أطول من العمل الذي تنسقه هو نظام ينبغي طيّه عائدًا إلى سكربت.

المقايضة الصادقة

نمط رئيس الأركان ليس مجانيًا، وليس صحيحًا دائمًا. تكاليفه حقيقية: أجزاء متحركة أكثر، وprompts أكثر للصيانة، وأنماط فشل أكثر للمراقبة، وتجربة تنقيح تمتد عبر سياقات متعددة لا سياق واحد. وفوائده حقيقية أيضًا، لكنها مشروطة. تظهر عندما تحتاج المهام الفرعية إلى سياق مختلف أو أدوات مختلفة أو تحقق مستقل، وتختفي إلى حد كبير عندما لا تحتاج.

الانضباط العملي هو البدء بالسكربت. اكتب الاستدعاء الواحد، وتحقق من مخرجاته، وقِس أين يفشل. وعندما يفشل لأن السياق كبير جدًا، أو الأدوات متعارضة، أو التحقق غير مستقل، أضف المنسّق. ليس قبل ذلك. النمط استجابة لمجموعة محددة من القيود، وتطبيقه دون تلك القيود يُنتج مظهر التطور على حساب الشيء نفسه.

مشاركةXLinkedInرابط دائم6 دقيقة قراءة

قراءات ذات صلة

الأسئلة التي يجيب عنها هذا

When should a task be handled by a single script instead of multiple agents?

When subtasks share the same context and tool set, when verification is not genuinely independent, and when the task fits in one context window. In those cases a single validated model call is testable, observable, and faster than a coordinated set of agents.

What is a handoff contract in a multi-agent system?

A handoff contract is a typed payload passed between agents, with a defined schema validated on both sides. It replaces prose summaries, which tend to omit confidence, evidence, and partial-failure information that downstream agents need.

How is information loss measured across agent handoffs?

By comparing what a producing agent emitted against what the consuming agent acted on. If open questions or artefacts in the payload are not addressed by the next action, that is a measurable loss, and its distribution over many runs shows where contracts are too thin.

Why can an orchestrator prompt be harder to maintain than code?

Deterministic code can be unit tested against a typed contract. An orchestrator prompt is a specification in a language with no compiler, so its routing policy can change silently between model versions without any test failing.