تحليل معايير الوكلاء
ProgramBench: كل نموذج ذكاء اصطناعي عام يسجل 0% في أصعب اختبار برمجة حتى الآن
ProgramBench يتحدى وكلاء الذكاء الاصطناعي لإعادة بناء البرامج من الملفات الثنائية فقط، دون كود مصدري أو أوصاف مشكلات. جميع النماذج العامة تفشل في حل أي مهمة بالكامل، مما يكشف نقاط ضعف في الاستقصاء، والهندسة المعمارية، والحكم على التوقف. المعيار هو اختبار ضغط لوكلاء البرمجة الذين يتجاوزون سير العمل القائم على التصحيحات.

ProgramBench هو معيار جديد صارم للبرمجة قائم على نماذج اللغة الكبيرة يستهدف قدرة نادراً ما تمسها قوائم القيادة: هل يمكن لنموذج إعادة بناء برنامج كامل من السلوك الملاحظ، دون رؤية الكود المصدري أبداً؟ the-verification-horizon-why-rewarding-coding-agents-is-getting-harder
الإعداد بسيط لكنه قاسٍ. يتلقى الوكيل ملفًا تنفيذيًا مُجمَّعًا ووثائق استخدامه. مهمته: استقصاء البرنامج، استنتاج طريقة عمله، اختيار استراتيجية تنفيذ، كتابة الكود المصدري، صياغة سكريبت بناء، وتقديم برنامج مرشح. ثم يُقارَن الإخراج بالأصل من خلال اختبارات سلوكية مخفية.
هذا بعيد كل البعد عن إكمال دالة واحدة، أو حل مشكلة مسابقة، أو تصحيح مستودع معروف.
ما يختبره ProgramBench ولا تختبره المعايير الأخرى
ProgramBench مهم لتقييم وكلاء البرمجة وليس نماذج الدردشة. إذا كان سير عملك هو "اطلب من النموذج كتابة دالة صغيرة"، فمن المحتمل أن ProgramBench صعب جدًا وغير مباشر. HumanEval وLiveCodeBench وتقييمات البرمجة الخاصة بلغة معينة ستخبرك أكثر. إذا كان سير عملك هو "اطلب من النموذج تصحيح مستودع معروف"، فإن SWE-bench Pro وSWE-Rebench وSWE-bench Verified تظل أكثر صلة مباشرة.
يصبح ProgramBench مثيرًا للاهتمام عندما تكون المهمة أقل تنظيماً. بالنسبة لمشتري النماذج، ليس بعد قائمة قيادة "اختر أفضل نموذج واشحنه". إنه أشبه بتحذير: وكلاء البرمجة الحاليون لا يزالون يتعثرون عندما يختفي الكود المصدري ووصف المشكلة والسقالات. بالنسبة لبناة الوكلاء، هو أداة تشخيصية، يكشف ما إذا كان الوكيل قادرًا على التحقيق قبل التنفيذ. the-verification-horizon-why-rewarding-coding-agents-is-getting-harder
تم بناء ProgramBench حول مفهوم إعادة البناء في غرفة نظيفة. تبدأ كل مهمة بملف تنفيذي مُجمَّع ووثائق. يجب على النموذج أن يقرر الأسئلة التي يطرحها على الملف التنفيذي. يمكنه تشغيل البرنامج بمدخلات وملاحظة المخرجات، لكنه لا يستطيع النظر إلى التنفيذ الأساسي. هذا يجعل ProgramBench معيارًا للهندسة المعمارية واكتشاف المواصفات، وليس مجرد كتابة كود.
كيف يقارن ProgramBench بمعايير البرمجة الرئيسية
معظم معايير البرمجة لا تزال تقدم للنماذج الكثير من الهيكل. HumanEval يوفر توقيع دالة ونص توثيق. SWE-bench Verified يعطي مستودعًا موجودًا ومشكلة محددة. LiveCodeBench يقدم بيانات مشكلة على غرار مسابقات البرمجة التنافسية. ProgramBench يجرد معظم هذه السقالات. يسأل عما إذا كان الوكيل قادرًا على إعادة بناء السلوك المستهدف من التفاعل وحده.
هذا التمييز مهم لأن هندسة البرمجيات الحقيقية غالبًا ما تبدأ من مواصفات جزئية. المطورون يهندسون عكسيًا لسير العمل، ويستقصون واجهات برمجة التطبيقات، ويستكشفون الأنظمة القديمة، ويستنتجون الحالات الحدودية من السلوك الملاحظ. ProgramBench يضغط هذا النوع من العمل في إطار تقييم. why-your-ai-agent-might-ace-the-task-but-flunk-the-process-enter-skillcoach
أقرب مقارنة هي SWE-bench، لكن شكل المهمة مقلوب تقريبًا. SWE-bench يسأل عما إذا كان الوكيل يمكنه تعديل قاعدة كود حقيقية بشكل صحيح. ProgramBench يسأل عما إذا كان الوكيل يمكنه اكتشاف ما يفعله البرنامج وبناء قاعدة كود جديدة تتصرف بشكل مماثل. the-migration-isnt-finished-until-the-build-server-says-it-is-why-ai-agents-keep-failing-at-enterprise-java
قائمة القيادة الحالية: لمحة واقعية
قائمة القيادة العامة الأولية واقعية عمدًا:
- Claude Opus 4.7: 0.0% محلولة بالكامل، 3.0% شبه محلولة
- Claude Opus 4.6: 0.0% محلولة بالكامل، 2.5% شبه محلولة
- Claude Sonnet 4.6: 0.0% محلولة بالكامل، 1.0% شبه محلولة
- GPT 5.4: 0.0% محلولة بالكامل، 0.0% شبه محلولة
- Gemini 3.1 Pro: 0.0% محلولة بالكامل، 0.0% شبه محلولة
المقياس الأساسي هو المهام المحلولة بالكامل. كل نموذج عام حاليًا عند 0%. ProgramBench يبلغ أيضًا عن المهام "شبه المحلولة"، وهي عمليات تشغيل تجتاز 95% على الأقل من الاختبارات السلوكية. يستخدم BenchLM هذا المقياس المساعد في صفحة العرض لأنه الفاصل المرئي الوحيد بين النماذج الآن.
كيفية قراءة قائمة القيادة بشكل صحيح
قائمة قيادة ProgramBench تتطلب قراءة أكثر دقة من معيار برمجة عادي. في معظم قوائم قيادة البرمجة، الدرجة الأعلى تعني مباشرة مهام محلولة أكثر. في ProgramBench اليوم، المقياس الأساسي الرسمي مسطح: كل نموذج عام تم تقييمه عند 0% محلولة بالكامل. الفصل الوحيد يأتي من معدل "شبه محلول" المساعد.
هذا يعني ثلاثة أشياء. أولًا، لا تفرط في ترتيب الثلاثة الأوائل الحاليين. Claude Opus 4.7 في المقدمة بنسبة 3.0% شبه محلول هو إشارة ذات معنى أنه اقترب أكثر في كثير من الأحيان، لكنه ليس معدل نجاح إنتاجي. ثانيًا، لا تعامل 0.0% شبه محلول على أنها جودة نموذج متطابقة. يمكن لنموذج أن يفشل في ProgramBench بعدة طرق. ثالثًا، توقع أن تأثيرات الإطار مهمة، ProgramBench هو معيار للوكيل، وليس معيارًا نقيًا للنموذج.
الإخفاقات المكشوفة: لماذا الدرجات قريبة من الصفر
الدرجات المنخفضة في ProgramBench تكشف عدة أنماط فشل في وقت واحد. الاستقصاء السطحي يقود الوكلاء إلى استنتاج الكثير من القليل من الملاحظات. التنفيذ المبكر، الذي تشجعه العديد من سير عمل الوكيل المحسّنة للتحرير السريع، يضر عندما يكون التحدي الرئيسي هو اكتشاف المواصفات. الحالات السلبية المفقودة تعني أن الوكلاء يتجاهلون العلامات غير الصالحة والأخطاء ورموز الخروج. الهندسة المعمارية الضعيفة دون هيكل أساسي تؤدي إلى تطبيقات هشة لا يمكن توسيع نطاقها. ضعف الاختبار الذاتي يمنع الوكلاء من التحقق من بدائلهم. الثقة المفرطة مشكلة عملية خطيرة: غالبًا ما يعلن الوكلاء عن الإكمال ويقدمون عملاً غير مكتمل، كما لوحظ في مناقشة إطلاق LocalLLaMA. هشاشة حلقة الأداة يمكن أن تقتل حتى النماذج الأساسية القوية.
أنماط الفشل هذه هي تحديدًا السبب في أن ProgramBench مفيد. وهي أيضًا السبب في أن قائمة القيادة العامة المستقبلية يجب أن تبلغ عن أكثر من رقم واحد. للتحليل الجاد، نحتاج إلى معرفة ما إذا كانت حالات الفشل ناتجة عن استقصاء سيء، أو كود سيء، أو بنيات فاشلة، أو حدود زمنية، أو حالات حدية مفقودة، أو قرارات توقف سيئة. why-your-ai-agent-might-ace-the-task-but-flunk-the-process-enter-skillcoach
كيفية تشغيل ProgramBench
نشر الفريق مستودع GitHub، ومجموعات بيانات Hugging Face، ومواد Docker والاستدلال. سير العمل المحلي الأساسي هو تثبيت الحزمة وتقييم تقديم باستخدام programbench eval. يجب على الوكلاء الحفاظ على إعداد المعيار: لا وصول للإنترنت، ولا بحث مباشر في الكود المصدري، ولا اختصارات فك التجميع. بالنسبة للفرق التي تبني وكلاء برمجة، القيمة العملية أقل في ملاحقة قائمة القيادة الحالية وأكثر في إجراء تجارب داخلية خاضعة للرقابة.
الخطوات التالية للمعيار
سيصبح ProgramBench أكثر فائدة إذا فصلت التقديمات العامة جودة النموذج عن جودة الإطار، إذا حصلت نتائج الوزن المفتوح على تغطية أوسع، وإذا تحرك المقياس الأساسي للحل. يتتبع BenchLM ProgramBench على صفحة معيار مخصصة ويبقيه للعرض فقط في قائمة قيادة البرمجة حتى تصبح الإشارة أكثر استقرارًا. في الوقت الحالي، من الأفضل التعامل معه كضوء تحذير حدودي حول حدود وكلاء البرمجة الحاليين في إعادة البناء في غرفة نظيفة. all-llms-corrupt-your-documents-when-you-delegate-a-close-look-at-the-delegate-52-benchmark