HyperAIHyperAI
منذ 13 أيام

CodeT: توليد الكود مع اختبارات مُولَّدة

Bei Chen, Fengji Zhang, Anh Nguyen, Daoguang Zan, Zeqi Lin, Jian-Guang Lou, Weizhu Chen
CodeT: توليد الكود مع اختبارات مُولَّدة
الملخص

يمكن أن يستفيدtask توليد حلول الشفرة البرمجية لمشكلة برمجية معينة من استخدام نماذج اللغة المُدرّبة مسبقًا مثل Codex، التي تُنتج عينات متعددة ومتنوعة. ومع ذلك، يُعد التحدي الرئيسي في هذه المهمة هو اختيار الحل الأنسب من بين العينات المتعددة التي تولدها النماذج المُدرّبة مسبقًا. الطريقة الطبيعية لتقييم جودة وصحة حل الشفرة هي تشغيله مقابل مجموعة من حالات الاختبار، لكن إنشاء هذه الحالات يدويًا غالبًا ما يكون مكلفًا وطويل الأجل. في هذه الورقة، نقترح طريقة جديدة تُسمى CodeT، والتي تستفيد من نفس النماذج المُدرّبة مسبقًا لتحديد حالات اختبار تلقائيًا للعينات البرمجية، مما يقلل من الجهد البشري ويزيد من تغطية سيناريوهات الاختبار. بعد ذلك، تقوم CodeT بتشغيل العينات البرمجية باستخدام حالات الاختبار المُنتجة، وتُطبّق اتفاقًا ثنائيًا في التنفيذ، والذي يأخذ بعين الاعتبار اتساق النتائج بالنسبة لحالات الاختبار المُنتجة، وكذلك اتفاق النتائج مع عينات الشفرة الأخرى. أجرينا تجارب شاملة على أربع معايير: HumanEval، MBPP، APPS، وCodeContests، باستخدام خمسة نماذج مُدرّبة مسبقًا مختلفة في الحجم والقدرات. أظهرت نتائجنا أن CodeT يمكنها تحسين الأداء بشكل كبير في اختيار حلول الشفرة مقارنة بالطرق السابقة، مع تحقيق مكاسب ملحوظة وثابتة عبر النماذج المختلفة والمعايير. على سبيل المثال، حققت CodeT تحسينًا في مقياس pass@1 على HumanEval إلى 65.8%، ما يمثل تحسنًا مطلقًا بنسبة 18.8% مقارنةً بالنموذج code-davinci-002، وتحسينًا مطلقًا يزيد عن 20% مقارنةً بأفضل النتائج السابقة.

CodeT: توليد الكود مع اختبارات مُولَّدة | أحدث الأوراق البحثية | HyperAI