75 ألف وكيل في 8 غيغابايت: أمازون تفتح مصدر بيئة تشغيل Infinity
تستطيع 8 غيغابايت من الذاكرة، أي ما يحمله حاسوب Raspberry Pi 5، أن تستوعب نحو 75 ألف وكيل ذكاء اصطناعي خامل في الوقت نفسه، بحسب Infinity، بيئة التشغيل التي فتحت AWS مصدرها في 23 أكتوبر ضمن مشروع Hydro بالتعاون مع جامعة كاليفورنيا في بيركلي.
· نُشر أصلاً على ontime+ · آخر تحقق: 26 أكتوبر 2026 (Sukaina Khalid)

أبرز النقاط
- أطلقت AWS مع جامعة كاليفورنيا في بيركلي بيئة تشغيل Infinity مفتوحة المصدر برخصة Apache 2.0 لتشغيل عشرات آلاف الوكلاء معاً.
- البيئة تعلّق الوكيل حين ينتظر نتيجة أداة، فلا يستهلك الخامل سوى نحو 100 كيلوبايت، معظمها لتاريخ المحادثة.
- الإصدار بحثي مبكر طُرح لجمع الملاحظات، لكنه يجعل تشغيل 75 ألف وكيل ممكناً بذاكرة حاسوب Raspberry Pi 5.
خبر:
تستطيع 8 غيغابايت من الذاكرة، أي ما يحمله حاسوب Raspberry Pi 5، أن تستوعب نحو 75 ألف وكيل ذكاء اصطناعي خامل في الوقت نفسه، بحسب Infinity، بيئة التشغيل التي فتحت AWS مصدرها في 23 أكتوبر ضمن مشروع Hydro بالتعاون مع جامعة كاليفورنيا في بيركلي. الفكرة أن الوكيل الذي ينتظر نتيجة أداة لا يحتفظ في الذاكرة بشيء سوى تاريخ محادثته. الشركة تصف الإصدار بأنه بحثي مبكر.
تفصيل:
- آلية التعليق: تعتمد البيئة على coroutines بلا مكدس، وهي التقنية التي تستخدمها لغات مثل Rust لتعليق الدوال غير المتزامنة واستئنافها. حين يستدعي الوكيل أداة، ترسل Infinity الاستدعاء وتحفظ المحادثة وتعلّق الوكيل، ثم تستأنفه عند وصول النتيجة، بدل إبقائه قيد التشغيل طوال الانتظار.
- الشرائح: يعمل كل وكيل في شرائح محدودة؛ تحمّل الشريحة تاريخ الوكيل من مخزن قابل للاستبدال، وتنفّذ إكمالاً واحداً للنموذج، وتحفظ الناتج، وترسل استدعاء أداة واحداً على الأكثر. تصل كل الأحداث عبر طابور إدخال مشترك، وتُعالج رسائل كل خيط بالترتيب بينما تعمل الخيوط المختلفة بالتوازي.
- الأحداث الاصطناعية: تُسلَّم الأحداث غير المتزامنة للنموذج على شكل استدعاءات أدوات اصطناعية باسم receive_event__injected، حتى لا تنكسر بنية نتيجة واحدة لكل استدعاء في واجهات النماذج. اللاحقة __injected تميّز ما أنشأته البيئة من استدعاءات، ولا يستطيع النموذج نفسه استدعاء هذا الاسم كأداة من عنده.
- الخيوط الفرعية: يستطيع الوكيل إنشاء خيوط فرعية عبر spawn_thread، وتبلغ الخيوط الفرعية نتائجها إلى الأصل عبر report_to_parent وتنتهي بـclose_thread. ويمكن معالجة الحدث الوارد في خيط فرعي منفصل، وهو الوضع الافتراضي، أو إضافته مباشرة إلى تاريخ الخيط الأصل في ما يسميه المنشور الوضع الترابطي.
- الأرقام: يستهلك الوكيل الخامل نحو 100 كيلوبايت، معظمها لتاريخ المحادثة، فيتسع نحو 75,000 وكيل في 8 غيغابايت. وفي اختبار الفريق، عمل 80,000 وكيل بـ20 دوراً لكل منها، بمجموع 3.2 مليون إكمال، على خيط واحد من معالج AMD EPYC 9R14 مع مخازن في الذاكرة ونموذج محاكى.
- حدود الاختبار: بلغ حجم كل إكمال نحو 1.2 كيلوبايت، ونمت الذاكرة خطياً مع عدد الوكلاء. استُخدم في الاختبار نموذج محاكى لا نموذج لغوي حقيقي ومخازن في الذاكرة لا قواعد بيانات خارجية، ولم يذكر الفريق مدة الاختبار. ويصف المنشور الإصدار كله بأنه مشروع بحثي طُرح لجمع الملاحظات المبكرة.
- النشر دون خوادم: تدعم البيئة وضع الخطوة، حيث تستدعي المنصة الدالة step مرة لكل دفعة رسائل ولا يبقى شيء في الذاكرة بين الاستدعاءات. ويستخدم النشر المرجعي من AWS طوابير SQS FIFO وAWS Lambda وقاعدة Aurora DSQL لتواريخ المحادثات وDynamoDB لإزالة التكرار وEventBridge Scheduler للمؤقتات.
- أسئلة مفتوحة: أدرج المؤلفون أربعة أسئلة لم تُحسم: أثر الأحداث المتداخلة في قرارات الوكلاء، وسياسات الجدولة والأولويات، وضغط أشجار الوكلاء الكبيرة الطويلة الأمد، وإثبات أصالة الأحداث مع بقاء البيئة بلا حالة. الشيفرة منشورة على GitHub ضمن مشروع hydro-project مع توثيق وبدء سريع.
ماذا بعد؟
متابعة مستودع hydro-project/infinity على GitHub لمعرفة ما إذا كانت الأسئلة الأربعة المفتوحة، وفي مقدمتها إثبات أصالة الأحداث وسياسات الجدولة، ستُحسم في إصدارات لاحقة.