XYZNOT

الأوراق البحثية · arXiv 2407.17789

محاكاة متعددة الوكلاء فائقة النطاق في AgentScope

Very Large-Scale Multi-Agent Simulation in AgentScope

تاريخ النشر cs.MAcs.AI arXivPDF

اقرأ مع الترجمة والذكاء الاصطناعي

الملخص في ثلاثة أسطر

  1. 🎯 تواجه منصات محاكاة الوكلاء المتعددين اختناقات رئيسية في قابلية التوسع، وتنوع مجتمع الوكلاء، وإدارة دورة الحياة عبر أجهزة متعددة على نطاق واسع.
  2. 🔧 تطبيق آلية موزعة قائمة على الفاعل (actor) مع نمطي معالجة (واحد لواحد) و(متعدد لواحد)، وتحويل تلقائي لسير العمل عبر to_dist، وبيئات متعددة الطبقات، ومولد شخصيات مؤتمت.
  3. 📈 نجاح محاكاة مليون وكيل عبر 4 أجهزة متعددة وحدات معالجة الرسومات في 12 دقيقة (Llama3-8B) وإكمال تقييم مرجعي صوري لمليون وكيل في 40 ثانية فقط.

الملخص

فتحت التطورات الحديثة في النماذج اللغوية الكبيرة (LLMs) آفاقًا جديدة لتطبيق الأنظمة متعددة الوكلاء في عمليات المحاكاة فائقة النطاق. ومع ذلك، لا تزال هناك تحديات عديدة تواجه إجراء محاكاة متعددة الوكلاء باستخدام المنصات الحالية، مثل محدودية قابلية التوسع وانخفاض الكفاءة، وعدم كفاية تنوع الوكلاء، والعمليات الإدارية التي تتطلب جهدًا كثيفًا. ولمعالجة هذه التحديات، طورنا ميزات ومكونات جديدة متعددة لمنصة AgentScope، وهي منصة سهلة الاستخدام متعددة الوكلاء، مما يعزز ملاءمتها ومرونتها لدعم المحاكاة فائقة النطاق. تحديدًا، نقترح آلية موزعة قائمة على الفاعل (actor-based) كبنية تحتية تكنولوجية أساسية لتحقيق قابلية توسع هائلة وكفاءة عالية، ونوفر دعمًا مرنًا للبيئة لمحاكاة سيناريوهات واقعية متنوعة، مما يتيح التنفيذ المتوازي لعدة وكلاء، والتحويل التلقائي لسير العمل من أجل النشر الموزع، والتفاعلات بين الوكلاء وبعضهم وبين الوكلاء والبيئة. علاوة على ذلك، قمنا بدمج أداة سهلة الاستخدام وقابلة للتهيئة ومسار توليد تلقائي للخلفيات في AgentScope، مما يبسط عملية إنشاء وكلاء بإعدادات خلفية متنوعة ومفصلة. وأخيرًا وليس آخرًا، نوفر واجهة مستندة إلى الويب للمراقبة المريحة وإدارة عدد كبير من الوكلاء الذين قد يتم نشرهم عبر أجهزة متعددة. نجري محاكاة شاملة لإثبات فعالية هذه التحسينات المقترحة في AgentScope، ونقدم ملاحظات مفصلة ومناقشات متعمقة لتسليط الضوء على الإمكانات الكبيرة لتطبيق الأنظمة متعددة الوكلاء في المحاكاة واسعة النطاق. تم إصدار الشيفرة المصدرية على GitHub عبر https://github.com/modelscope/agentscope/tree/main/examples/paper_large_scale_simulation لإلهام المزيد من البحث والتطوير في المحاكاة واسعة النطاق متعددة الوكلاء.

الملخص الأصلي (بالإنجليزية)

Recent advances in large language models (LLMs) have opened new avenues for applying multi-agent systems in very large-scale simulations. However, there remain several challenges when conducting multi-agent simulations with existing platforms, such as limited scalability and low efficiency, unsatisfied agent diversity, and effort-intensive management processes. To address these challenges, we develop several new features and components for AgentScope, a user-friendly multi-agent platform, enhancing its convenience and flexibility for supporting very large-scale multi-agent simulations. Specifically, we propose an actor-based distributed mechanism as the underlying technological infrastructure towards great scalability and high efficiency, and provide flexible environment support for simulating various real-world scenarios, which enables parallel execution of multiple agents, automatic workflow conversion for distributed deployment, and both inter-agent and agent-environment interactions. Moreover, we integrate an easy-to-use configurable tool and an automatic background generation pipeline in AgentScope, simplifying the process of creating agents with diverse yet detailed background settings. Last but not least, we provide a web-based interface for conveniently monitoring and managing a large number of agents that might deploy across multiple devices. We conduct a comprehensive simulation to demonstrate the effectiveness of these proposed enhancements in AgentScope, and provide detailed observations and insightful discussions to highlight the great potential of applying multi-agent systems in large-scale simulations. The source code is released on GitHub at https://github.com/modelscope/agentscope/tree/main/examples/paper_large_scale_simulation to inspire further research and development in large-scale multi-agent simulations.

دليل القراءة

المشكلة والدافع

تتيح وكلاء النماذج اللغوية الكبيرة (LLM) عمليات محاكاة تفاعلية وواقعية دون الحاجة إلى برمجة قواعد يدوية مكثفة. ومع ذلك، فإن توسيع نطاق المحاكاة متعددة الوكلاء لتصل إلى أحجام ديموغرافية واقعية يكشف عن ثلاثة اختناقات حرجة:

  1. حدود قابلية التوسع والكفاءة: يعيق التنفيذ المركزي وقفل المفسر العام (GIL) في Python تنفيذ الوكلاء. تقوم أطر عمل الفواعل الحالية (مثل Ray) بإنشاء عملية جديدة لكل فاعل، مما يهدر الموارد عند التعامل مع ملايين الوكلاء الخفيفين المقيدين بعمليات الإدخال/الإخراج (I/O-bound).
  2. توزيعات سكانية غير مرضية وضعف تنوع الوكلاء: يتصرف الوكلاء الذين يمتلكون مطالبات خلفية متطابقة وبسيطة بشكل متجانس، مما يفشل في تمثيل التوزيعات الديموغرافية الواقعية (على سبيل المثال، عبر مستويات التعليم، أو العمر، أو المهنة).
  3. صعوبة الإدارة: يتطلب تنظيم وإطلاق ومراقبة وإنهاء مئات الآلاف أو الملايين من الوكلاء الموزعين عبر العناقيد عبئًا تشغيليًا كبيرًا.

الأفكار الرئيسية

  • معمارية موزعة قائمة على الفاعل (Actor): يقوم الوكلاء بالحوسبة بشكل مستقل كفواعل. تدعم المنصة كلاً من تعيين واحد لواحد (وكيل لكل عملية، وتجنب GIL للمهام كثيفة الحوسبة) وتعيين متعدد لواحد (يتشارك الوكلاء العمليات، مما يزيد من مشاركة وقت أنوية وحدة المعالجة المركزية إلى الحد الأقصى أثناء فترات انتظار الإدخال/الإخراج).
  • تحويل موزع بدون إعادة هيكلة الكود (to_dist): يقوم المستخدمون بكتابة مسارات عمل مركزية، ويتم تحويلها بسلاسة إلى إعدادات موزعة باستخدام وكلاء محليين (proxies) وعناصر نائبة غير متزامنة للرسائل (placeholders).
  • البيئة كوكيل: يتم تصميم البيئات كوكلاء متخصصين يدعمون صيانة الحالة، والوصول المتزامن عالي التردد عبر RPC، والمشغلات ثنائية الاتجاه (عبر listeners)، والهياكل متداخلة الطبقات لمحاكاة مستوى المجموعات.
  • مسار مجتمع غير متجانس وقابل للتهيئة: يحدد المستخدمون التوزيعات الديموغرافية في ملفات التكوين، ويقوم مسار مطالبات توجيهية عليا (meta-prompt) بواسطة LLM بتوليد شخصيات متنوعة وفردية للوكلاء.
  • Agent-Manager: واجهة رسومية مستندة إلى الويب وشبكة خوادم عن بُعد دائمة لنشر ومراقبة وتنظيف الوكلاء عبر عقد العنقود.

المنهجية

التنفيذ الموزع والتحويل التلقائي

في AgentScope، يتم تنفيذ الوكلاء المستقلين بشكل متزامن. عندما يتم تمييز مسار مركزي باستخدام .to_dist()، تحدث مرحلتان:

  1. يتم تشغيل الوكلاء الموزعين عبر العمال البعيدين؛ وتبقى كائنات الوكيل الخفيفة (proxies) على المنسق المركزي.
  2. ترجع الكائنات الوسيطة على الفور عناصر نائبة للرسائل بمجرد تلقي استدعاء. لا يتعطل الوكلاء اللاحقون إلا عندما يفحصون العناصر النائبة التي تشير إلى عمليات حوسبة معلقة من وكلاء سابقين.

ديناميكيات المحاكاة

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

النتائج

  • قابلية التوسع: اكتملت محاكاة لـ 1,000,000 وكيل في 12 دقيقة باستخدام 4 عقد (تحتوي كل منها على 8 وحدات معالجة رسومات من طراز A100-80G GPUs، و64 نواة CPU، و1 تيرابايت RAM) باستخدام Llama3-8B بمطالبات أساسية، وفي 85 دقيقة مع مطالبات سلسلة الأفكار (CoT) (والتي وسعت عدد الرموز بأكثر من 150 ضعفًا). وفي تقييم مرجعي لحوسبة صورية استبعد زمن استجابة استدلال LLM، عمل 1 مليون وكيل في 40 ثانية، مقارنة بـ 8.6 ساعات عبر الإدخال/الإخراج غير المتزامن القياسي في Python و**~12 يومًا** عبر التنفيذ التسلسلي.
  • التوسع الأفقي: مع تثبيت 10,000 وكيل لكل جهاز، ظل وقت التشغيل الإجمالي ثابتًا مع زيادة حجم العنقود من 1 إلى 4 عقد.
  • المطالبة وعمق الاستدلال: في ظل التوجيه الأساسي، أبلغت معظم النماذج عن قيم تقارب 50 (على الرغم من أن MistralAI-8x7B حقق متوسط 36.63 وMistralAI-8x22B متوسط 31.69). أدت إضافة تعليمات CoT إلى دفع النتائج نحو 0 (انخفضت الأرقام الفائزة لـ Qwen2-72B من 33.70 إلى 12.76، وانخفضت متوسطات الجولة الخامسة متعددة الجولات من 25.16 إلى 2.02).
  • الديموغرافيا والأدوار: أنتجت مستويات التعليم المعينة الأعلى بشكل منهجي تخمينات أقل وأكثر مثالية من منظور نظرية الألعاب (أبلغ وكلاء درجة الدكتوراه عن أرقام أقل من وكلاء المدرسة الابتدائية). وسجلت وظائف مثل أساتذة نظرية الألعاب والاقتصاديين أدنى الأرقام.
  • المتغيرات البديلة: عندما تم إزاحة التوازن إلى 10 ()، تقارب الوكلاء تكراريًا حول 10 على مدار عدة جولات.

القيود والأسئلة المفتوحة

  • عدم اتساق تقمص الأدوار في الحالات الحدية: عند توجيه الوكلاء للتصرف كطفل يبلغ من العمر 7 سنوات، استمر الوكلاء في تنفيذ عمليات حسابية واستدلالات تكرارية متعددة الخطوات تتعارض مع الشخصية المفترضة.
  • أخطاء حسابية بسيطة: ارتكب الوكلاء أحيانًا هفوات حسابية أساسية (خاصة التي تتضمن كسورًا أو أعدادًا عشرية)، حتى عندما كان منطق استدلالهم الاستراتيجي سليمًا.
  • الحساسية للبيانات المسبقة في التدريب: أدى تحويل النسبة المستهدفة من إلى إلى تدهور الأداء بسبب اعتماد النماذج على أنماط نظرية الألعاب المحفوظة مسبقًا؛ ولم يتعاف الأداء إلا عندما نصت المطالبات صراحةً على أن اللعبة كانت نوعًا مختلفًا من "تخمين المتوسط".

المصطلحات الرئيسية

AgentScope
منصة متعددة الوكلاء مصممة للتطبيقات القائمة على النماذج اللغوية الكبيرة (LLM)، وتمت توسعتها هنا لدعم عمليات المحاكاة الموزعة فائقة النطاق.
Actor Model (نموذج الفاعل)
نمط حوسبة متزامنة حيث يعمل كل فاعل كوحدة حوسبة ذاتية تتواصل عبر تمرير الرسائل دون ذاكرة مشتركة.
to_dist
دالة مدمجة في AgentScope تحول سير العمل المركزي المكتوب بالتتابع لعدة وكلاء إلى مسار تنفيذ موزع باستخدام كائنات وسيطة وعناصر نائبة.
Placeholders (العناصر النائبة)
رموز استجابة غير متزامنة ترجعها الكائنات الوسيطة للوكلاء فورًا حتى تستمر أدوات التنسيق في التنفيذ دون حظر بانتظار استجابات العمال البعيدين.
Agent-Manager (مدير الوكلاء)
لوحة تحكم مرئية مركزية مستندة إلى الويب وبنية تحتية لخادم خلفي تُستخدم لنشر ومراقبة وإدارة دورة حياة الوكلاء عبر عقد العنقود البعيدة.
Guess 2/3 of the Average (تخمين ثلثي المتوسط)
معيار كلاسيكي في نظرية الألعاب حيث يختار اللاعبون أرقامًا في النطاق [0، 100] بهدف إصابة ثلثي المتوسط الإجمالي، وله توازن ناش نظري عند 0.
Many-to-One Multi-Process Mode (نمط العمليات المتعددة متعدد لواحد)
نمط تنفيذ في AgentScope يقيم فيه وكلاء متعددون في عملية نظام تشغيل واحدة لمشاركة الخيوط وأنوية المعالج ومنافذ الشبكة أثناء فترات انتظار الإدخال/الإخراج.

أسئلة شائعة

كم عدد الوكلاء الذين يمكن لـ AgentScope محاكاتهم في وقت واحد؟

أثبت المؤلفون إمكانية إجراء عمليات محاكاة مع ما يصل إلى 1,000,000 وكيل نشط يعملون عبر 4 عقد عنقودية مادية (مجهزة كل منها بـ 8 وحدات معالجة رسومات A100-80G).

كيف يتجنب AgentScope قيود GIL في Python عند التوازي واسع النطاق؟

يطبق المعالجة المتعددة القائمة على الفواعل بنمطي تنفيذ: واحد لواحد (عملية لكل وكيل) للمهام كثيفة الحوسبة، ومتعدد لواحد (عدة وكلاء يتشاركون عملية واحدة) للمهام المقيدة بانتظار واجهات برمجة التطبيقات والإدخال/الإخراج، متجنبًا تنازع GIL عبر استدعاءات الإجراءات البعيدة (RPC).

كيف يتم توليد مجتمعات وكلاء واقعية؟

يقدم المستخدمون توزيعات ديموغرافية عامة (مثل التعليم، والجنس، والعمر، والمهنة) في ملف تكوين، ويقوم مسار مطالبات عليا مدفوع بالنماذج اللغوية الكبيرة بأخذ عينات منها وتوسيعها إلى سير ذاتية مفصلة للشخصيات.

ماذا يحدث عندما تنحرف قواعد اللعبة عن المعايير القياسية لنظرية الألعاب؟

عند تغيير النسبة إلى 51/100 أو تحويل معادلة الهدف إلى 5 + 1/2 المتوسط، عانى الوكلاء في البداية بسبب الأنماط المحفوظة في التدريب، ولكن إضافة ملاحظات سياقية أو مطالبات CoT سمح لنماذج مثل Qwen2-72B وMistralAI-8x22B بالتقارب بنجاح نحو التوازن الجديد المُزاح.

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

اقرأ مع الترجمة والذكاء الاصطناعي