Comparing Developer and LLM Biases in Code Evaluation
تقدم هذه الورقة إطار عمل TRACE، الذي يكشف عن عدم توافق كبير بين أحكام النماذج اللغوية الكبيرة والمطورين البشريين في تقييم الأكواد عبر ثلاثة أنماط، مما يظهر أن أفضل النماذج حتى الآن يقل أداؤها عن البشر بنسبة تتراوح بين 12 و23% وتُظهر تحيزات منهجية، مثل تفضيل التفسيرات الطويلة، في معظم أبعاد جودة الأكواد الحالية.
البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل
تخيل أنك طاهٍ تحاول تعليم روبوت كيفية الطبخ. تطلب من الروبوت صنع شطيرة، فيقدم لك خيارين. تختار أنت الخيار الذي يحتوي على خس طازج ومقرمش. لكن "مُتذوق الطعام" الخاص بالروبوت (ذكاء اصطناعي آخر) يختار الشطيرة التي تحتوي على خس ذابل ومرتخي لأنه يعتقد أن "المزيد من الخس = شطيرة أفضل".
هذه هي المشكلة الجوهرية التي يستكشفها البحث المعنون بـ "مقارنة انحيازات المطورين والنماذج اللغوية الكبيرة في تقييم الأكواد".
إليك تفصيل ما وجده الباحثون، باستخدام تشبيهات بسيطة:
1. المشكلة: القاضي الآلي منفصل عن الواقع
بينما نستخدم الذكاء الاصطناعي لكتابة الأكواد، نحتاج إلى وسيلة لتقييم هذا الكود. وبدلاً من توظيف بشري للتحقق من كل سطر، نستخدم "ذكاءً اصطناعيًا قاضيًا" ليقول: "هذا الكود جيد، وهذا الكود سيء".
تساءل الباحثون: هل يفكر هؤلاء القضاة من الذكاء الاصطناعي حقًا مثل المطورين البشر؟
وجدوا أن الإجابة هي لا، هم لا يفعلون. فحتى أذكى القضاة من الذكاء الاصطناعي يخطئون الهدف. إنهم أسوأ بنسبة تتراوح بين 12% إلى 23% في اختيار ما يحبه المطور البشري مقارنة بما يختاره بشر آخرون. الأمر يشبه امتلاك ناقد طعام يحب الخبز المحمص المحترق لأنه يعتقد أنه يبدو "ريفياً"، بينما يريد الجميع مجرد قطعة خبز طازجة.
2. الأداة: TRACE (المحقق في معايير التقييم)
لمعرفة لماذا يخطئ الروبوتات، قام المؤلفون ببناء أداة تسمى TRACE.
فكر في TRACE كأنها عدسة مكبرة للمحقق.
- الخطوة 1: تنظر إلى مهمة برمجية حيث اختار الإنسان "الخيار أ" واختار القاضي الآلي "الخيار ب".
- الخطوة 2: تقوم بتفكيك الخيارين إلى "عناصر معايير" (مثل بطاقة تسجيل النقاط). قد تكون هذه العناصر أشياء مثل: "هل الكود سريع؟"، "هل توجد تعليقات؟"، أو "هل هو سهل القراءة؟".
- الخطوة 3: تقارن بين بطاقات التسجيل. وتسأل: "هل اهتم الإنسان أكثر بالسرعة؟ هل اهتم الذكاء الاصطناعي أكثر بالتعليقات؟"
كشف هذا عن 35 طريقة محددة يختلف فيها قضاة الذكاء الاصطناعي عن المطورين البشر.
3. السيناريوهات الثلاثة (إعدادات "المطبخ")
اختبر الباحثون القضاة الآليين في ثلاثة "مطابخ" (سيناريوهات برمجية)، وارتبك الروبوتات بطرق مختلفة في كل منها:
أ. طاهي الإكمال التلقائي (إكمال الكود - Code Completion)
- المشهد: أنت تكتب كوداً، ويقترح عليك الذكاء الاصطناعي الكلمات التالية.
- التفضيل البشري: يريد البشر أن يكون الاقتراح واضحاً وسهل القراءة ضمن سياق الملف الذي يعملون عليه حالياً.
- انحياز الروبوت: أحب قضاة الذكاء الاصطناعي الاقتراحات التي كانت صحيحة وظيفياً ولكنها فوضوية أو صعبة القراءة. لقد تجاهلوا حقيقة أن الكود يجب أن يتناسب بسلاسة مع الملف الحالي.
- التشبيه: الإنسان يريد شطيرة تناسب طبقه تماماً. أما القاضي الروبوت فيختار الشطيرة التي هي صالحة للأكل تقنياً ولكن طولها 3 أقدام وتتسبب في انسكاب كل شيء حولها.
ب. المحرر (تعديل الكود - Code Editing)
- المشهد: تقوم بتحديد جزء مكسور من الكود وتقول للذكاء الاصطناعي: "أصلح هذا".
- التفضيل البشري: يريد البشر أن يكون الإصلاح دقيقاً وواضحاً. هم لا يريدون من الذكاء الاصطناعي إعادة كتابة الملف بالكامل أو إضافة حشو غير ضروري.
- انحياز الروبوت: غالباً ما فضل قضاة الذكاء الاصطناعي الإجابات التي كانت غامضة أو أضافت الكثير من النصوص "التفسيرية"، بدلاً من تقديم إصلاح جراحي نظيف.
- التشبيه: تطلب من الروبوت استبدال مصباح مكسور. الإنسان يريد مصباحاً جديداً. أما القاضي الروبوت فيختار الإجابة التي قام فيها الروبوت باستبدال المصباح وكذلك أعاد توصيل كهرباء المنزل بالكامل وكتب دليلاً من 10 صفحات، رغم أنك كنت تريد فقط تشغيل الضوء.
ج. الدردشة (البرمجة عبر الدردشة - Chat-based Coding)
- المشهد: تسأل الذكاء الاصطناعي سؤالاً مثل: "كيف أقوم بترتيب هذه القائمة؟"
- التفضيل البشري: يريد البشر إجابة ذكية ومدركة للسياق تظهر فهم المشكلة المحددة.
- انحياز الروبوت: أحب قضاة الذكاء الاصطناعي الشروحات العامة والمطولة. لقد اعتقدوا أن "المزيد من الكلمات = إجابة أفضل"، حتى لو كانت الإجابة مملة ولم تحل المشكلة المحددة.
- التشبيه: تسأل "كيف أصلح إطاراً مثقوباً؟". الإنسان يريد تعليمات خطوة بخطوة. أما القاضي الروبوت فيختار الإجابة التي تكتب مقالاً من 500 كلمة عن تاريخ المطاط، لأن ذلك يبدو "مثيراً للإعجاب".
4. المفاجأة الكبرى: حتى الروبوتات "المتخصصة" تفشل
اختبر الباحثون 13 نموذجاً مختلفاً من الذكاء الاصطناعي. بعضها كان عام الأغراض (مثل السكين السويسري)، وبعضها كان "قضاة متخصصين" تم تدريبهم خصيصاً لتقييم الأكواد.
النتيجة: لم تكن القضاة المتخصصة أفضل بكثير من القضاة العامين.
- التشبيه: الأمر يشبه استئجار ناقد طعام محترف لتقييم برجر. قد تتوقع أن يكون رائعاً. ولكن في هذه الحالة، كان الناقد "المحترف" مرتبكاً تماماً مثل الناقد "الهاوي". كلاهما أخطأ في ملاحظة الأشياء الدقيقة التي تجعل البرجر (أو الكود) جيداً حقاً بالنسبة للبشر.
5. الخلاصة: نحن بحاجة إلى تدريب أفضل
يخلص البحث إلى أننا لا نستطيع الوثوق بالذكاء الاصطناعي لتقييم الذكاء الاصطناعي بعد. "المعايير" (القواعد التي يستخدمونها للتقييم) تختلف عن القواعد التي يستخدمها البشر.
- البشر يهتمون بـ: سهولة القراءة، السياق، الدقة، و"الشعور بأن الشيء صحيح".
- قضاة الذكاء الاصطناعي يهتمون بـ: الطول، الصحة العامة، والميزات السطحية.
الخلاصة المستفادة:
إذا أردنا للذكاء الاصطناعي أن يساعدنا في بناء البرمجيات، فنحن بحاجة إلى تعليم "قضاة الذكاء الاصطناعي" كيف يفكرون مثل المطورين البشر. نحن بحاجة إلى التوقف عن تدريبهم على البحث عن "الصحة" فقط، والبدء في تدريبهم على فهم السياق، والوضوح، والواقع الفوضوي لكيفية عمل البشر فعلياً.
وحتى ذلك الحين، فإن القاضي الآلي يشبه روبوتاً يعتقد أن الحل الفوضوي والمعقد للغاية هو تحفة فنية، بينما يريد المطور البشري فقط إنجاز المهمة.
غارق في أبحاث مجالك؟
تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.