Benchmark · agentic
Terminal-Bench
يقيس Terminal-Bench مدى قدرة وكلاء الذكاء الاصطناعي على إنجاز مهام سطر الأوامر الحقيقية داخل الطرفية (terminal)، مثل تثبيت البرامج وتصحيح الأخطاء وعمليات النظام. الدرجة هي النسبة المئوية للمهام التي يكملها الوكيل بنجاح.
اقرأ المزيد
- مثال
- المهمة النموذجية تمنح الوكيل بيئة معطوبة أو فارغة وتطلب منه الوصول بها إلى حالة عاملة — مثل تثبيت التبعيات (dependencies) الصحيحة وإصلاح الإعدادات كي يعمل برنامج ما، وكل ذلك عبر أوامر الطرفية.
- طريقة التقييم
- تُقيَّم كل مهمة بنجاح أو فشل بناءً على ما إذا كان الوكيل قد بلغ الحالة النهائية المطلوبة، ودرجة المعيار هي النسبة المئوية للمهام المحلولة من إجماليها.
- التحقق
- لا تُقبل النتيجة إلا إذا أكدت فحوص آلية داخل بيئة معزولة (sandbox) أن الهدف المقصود من المهمة قد تحقق — وليس عبر تصويت بشري أو مطابقة نصية دقيقة.
- لماذا يهم
- مهارات الطرفية — التثبيت وتصحيح الأخطاء وتشغيل الأنظمة من سطر الأوامر — أساسية في العمل الهندسي الحقيقي، لذا يُظهر هذا المعيار ما إذا كان الوكيل قادرًا على التصرف باستقلالية وموثوقية في سطر أوامر حقيقي. كما أن نسخته 2.x الأصعب ترفع سقف التحدي كلما تحسّن الوكلاء.
مثال محلول
المهمة
داخل حاوية Docker الخاصة بـ Terminal-Bench، يحتوي الملف /app/access.log على سجلات وصول Apache. اكتب أمرًا واحدًا يحسب عدد عناوين IP المختلفة للعملاء (الحقل الأول المفصول بمسافات في كل سطر) ويحفظ ذلك العدد فقط في /app/answer.txt.
الحل
awk '{print $1}' /app/access.log | sort -u | wc -l > /app/answer.txt
الشرح
يطبع awk الحقل الأول (عنوان IP للعميل) من كل سطر في السجل، ويزيل sort -u التكرارات، ويحسب wc -l عناوين IP الفريدة المتبقية، مع إعادة توجيه النتيجة إلى /app/answer.txt. يقيّم Terminal-Bench الحل بتشغيل اختبار pytest داخل الحاوية يقرأ /app/answer.txt ويتحقق من مساواته لعدد عناوين IP الفريدة المعروف.