تقييم وكلاء البرمجة
كيفية تقييم وكلاء البرمجة عبر مراجعة الـ diff ومخرجات الطرفية وتتبّعات SWE-bench/Aider/Claude Code، باستخدام عرض تتبّع البرمجة في Potato.
يحرّر وكيل البرمجة الملفات، ويشغّل الأوامر، ويقرأ المخرجات لحلّ مهمة برمجية. وتقييمه أشبه بمراجعة طلب سحب (pull request) يتضمّن أيضًا جلسة الطرفية: فأنت تحكم على تغييرات الكود وعلى الخطوات التي أنتجتها. علّق مسارات SWE-agent وAider وClaude Code باستخدام Potato، وهو أداة مجانية مستضافة ذاتيًا تعرض الـ diff وكتل الطرفية للمراجعة.
ويأتي هذا مكمّلًا للمعايير الآلية مثل SWE-bench؛ فالمراجعة البشرية تلتقط الترقيع المعقول ظاهريًّا لكنه خاطئ الذي يجتاز اختبارًا ضعيفًا.
ما الذي يراجعه المُعلّق في تشغيل وكيل برمجة؟
- الـ diff: diff موحّد مُلوَّن لكل تغيير في ملف، مع أرقام الأسطر وشريط جانبي بشجرة الملفات.
- الأوامر والمخرجات: كتل طرفية تُظهر ما شغّله الوكيل وما الذي عاد منه.
- التفكير: أفكار الوكيل بين الإجراءات.
يقرأ Potato تتبّعات وكلاء البرمجة بصيغ منها SWE-bench وAider و Claude Code. انظر تعليق وكلاء البرمجة وتعليق مراجعة الكود.
ما الذي ينبغي أن أحكم عليه في تشغيل وكيل برمجة؟
- الصحة: هل يحلّ التغيير المهمة دون أن يُعطِب أمورًا أخرى؟
- جودة الخطوات: هل كان كل تعديل/أمر منطقيًّا، أم كان تخبّطًا؟
- الكفاءة: هل سلك مسارًا معقولًا؟
yaml
annotation_schemes:
- annotation_type: per_turn_rating
name: step_correctness
description: "Judge each edit or command."
target: agentic_steps
rating_type: radio
labels: ["Correct", "Partially correct", "Incorrect", "Unnecessary"]
- annotation_type: radio
name: overall
description: "Does the final change solve the task?"
labels: [Solved, Partially solved, Not solved]كيف أُبقي تقييم وكلاء البرمجة موثوقًا؟
- أعطِ المُعلّقين وصف المهمة وسياق المستودع؛ فالـ diff بلا معنى من دون الهدف.
- لسلاسل التفكير الخاصة بأول خطأ، انظر نماذج مكافأة العملية.
- لمشاهدة وكيل يبرمج في الوقت الحقيقي بدلًا من مراجعة تسجيل، انظر التقييم المباشر للوكلاء.