SWE-Edit: Rethinking Code Editing for Efficient SWE-Agent
يعمل SWE-Edit على تحسين أداء وكلاء هندسة البرمجيات من خلال فصل فحص الكود وتعديله إلى وكلاء فرعيين متخصصين وتقديم نموذج تحرير تكيفي متعدد التنسيقات تم تدريبه باستخدام GRPO، مما يزيد بشكل عام من معدلات نجاح إكمال المهام مع تقليل تكاليف الاستدلال بشكل كبير.
البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل
تخيل أنك مهندس معماري بارع (الوكيل الرئيسي) تحاول إصلاح مبنى ضخم ومعقد (برمجية برمجية). هدفك هو إصلاح تسرب محدد أو تدعيم جدار ضعيف.
في الطريقة القديمة، كان على المهندس المعماري إتمام ثلاث مهام في وقت واحد:
- البحث: التجول في كل غرفة، وفتح كل خزانة، للعثور على التسرب.
- التخطيط: اتخاذ قرار بشأن كيفية إصلاحه بدقة.
- التنفيذ: كتابة تعليمات الإصلاح بلغة صارمة وشديدة الدقة (مثل روبوت لا يفهم إلا القياسات الدقيقة).
ما المشكلة؟ بينما كان المهندس المعماري يتجول في المبنى بحثاً عن الأدلة، ملأ عقله بتفاصيل غير ذات صلة (إيصالات قديمة، تنظيف الغبار، أثاث عشوائي). وبحلول الوقت الذي حاول فيه كتابة تعليمات الإصلاح، كان عقله مثقلاً بـ "الضجيج" لدرجة أنه ارتكب أخطاءً. علاوة على ذلك، فإن اللغة الصارمة التي كان يتعين عليه استخدامها تعني أن فاصلة واحدة خاطئة قد تؤدي إلى فشل عملية الإصلاح.
SWE-Edit هو سير عمل جديد يحل هذه المشكلة من خلال توظيف مساعدين متخصصين وإنشاء سير عمل "نظيف" للمهندس المعماري.
المساعدان الجديدان
1. "المراقب" (الكشاف المتخصص)
بدلاً من أن يتجول المهندس المعماري في المبنى بأكمله، يطلب المساعدة من المراقب.
- كيف يعمل: يسأل المهندس المعماري: "أرني الأنابيب القريبة من حوض المطبخ". يذهب المراقب إلى هناك، وينظر فقط إلى الأنابيب، ويعود بملاحظة نظيفة وقصيرة تحتوي فقط على التفاصيل ذات الصلة.
- الميزة: يظل عقل المهندس المعماري صافياً. ليس عليه الخوض في آلاف الأسطر من الأكواد غير ذات الصلة. هذا يوفر الوقت والمال لأن المهندس المعماري لا يضطر لمعالجة كمية هائلة من المعلومات "القمامة".
2. "المحرر" (البناء المتخصص)
بمجرد أن يضع المهندس المعماري الخطة، فإنه لا يكتب تعليمات الإصلاح بنفسه. بل يخبر المحرر: "استبدل الأنبوب الصدئ بأنبوب نحاسي جديد".
- كيف يعمل: المحرر هو متخصص يعرف تماماً كيف يكتب تعليمات الإصلاح باللغة الصارمة والدقيقة التي يتطلبها الكمبيوتر.
- الميزة: يمكن للمهندس المعماري التركيز تماماً على ما يجب إصلاحه (المنطق)، بينما يركز المحرر على كيفية كتابته بشكل مثالي (التنسيق). هذا يمنع المهندس المعماري من ارتكاب أخطاء تنسيق سخيفة قد تؤدي إلى فشل عملية الإصلاح.
"المفتاح الذكي" (الوضع التكيفي)
اكتشفت الدراسة أيضاً أن بعض الإصلاحات البسيطة (مثل استبدال كلمة واحدة) يفضل القيام بها بطريقة معينة، بينما الإصلاحات الضخمة والمعقدة (مثل إعادة كتابة غرفة كاملة) تعمل بشكل أفضل بطريقة أخرى.
سابقاً، كان النظام مقيداً باستخدام طريقة واحدة فقط (مثل محاولة إصلاح منزل كامل باستبدال طوبة واحدة فقط). النظام الجديد يعلم المحرر أن يكون ذكياً:
- إذا كانت المهمة صغيرة، فإنه يستخدم طريقة دقيقة ومنخفضة التكلفة (البحث والاستبدال).
- إذا كانت المهمة ضخمة وفوضوية، فإنه ينتقل إلى طريقة قوية تشمل الملف بالكامل (إعادة كتابة الشيء برمته).
الأمر يشبه حرفياً يعرف متى يستخدم مفك البراغي ومتى يخرج المطرقة الثقيلة، بدلاً من محاولة استخدام مفك البراغي لكل شيء.
النتائج
من خلال تقسيم هذه المهمة، وجد الفريق ما يلي:
- نجاح أفضل: أصلح النظام المزيد من المشكلات بشكل صحيح (بنسبة 2% تقريباً أكثر).
- أرخص: كانت تكلفة تشغيله أقل بكثير (بنسبة 18% تقريباً أقل) لأن "العقل" الرئيسي لم يكن مضطراً لقراءة الكثير من بيانات القمامة.
- أخطاء أقل: تم تنسيق تعليمات الإصلاح بشكل صحيح في كل مرة تقريباً، لذا لم يرفضها الكمبيوتر.
"اختبار الممارسة" (معيار PR-Edit)
أخيراً، وجد الباحثون أن اختبار هذه الأنظمة على إصلاحات مبانٍ كاملة ومكلفة يستغرق وقتاً طويلاً ويكلف الكثير من المال. لذلك أنشأوا اختبار ممارسة مصغر (يسمى PR-Edit).
وجدوا أنه إذا أدى المحرر أداءً جيداً في هذا الاختبار السريع والرخيص، فمن المضمون تقريباً أن يؤدي أداءً جيداً في المهمة الحقيقية المكلفة. هذا يشبه اختبار القيادة: إذا نجحت في اختبار ركن السيارة، فمن المرجح أن تجتاز اختبار الطريق السريع أيضاً دون الحاجة للقيادة على الطريق السريع أولاً لمعرفة ذلك.
باخت-صار: يمنع SWE-Edit الذكاء الاصطناعي من محاولة القيام بكل شيء في وقت واحد. إنه يمنحه فريقاً نظيفاً من المتخصصين (كشاف وبناء) وطريقة ذكية لاختيار الأداة المناسبة للمهمة، مما يجعل إصلاح البرمجيات أسرع، وأرخص، وأكثر موثوقية.
غارق في أبحاث مجالك؟
تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.