ChatPaper.aiChatPaper

IterPref : Apprentissage des préférences focales pour la génération de code via un débogage itératif

IterPref: Focal Preference Learning for Code Generation via Iterative Debugging

March 4, 2025
Auteurs: Jie Wu, Haoling Li, Xin Zhang, Jianwen Luo, Yangyu Huang, Ruihang Chu, Yujiu Yang, Scarlett Li
cs.AI

Résumé

L'apprentissage des préférences améliore les modèles de langage pour le code (Code LLMs) au-delà du réglage fin supervisé en exploitant des comparaisons relatives de qualité. Les méthodes existantes construisent des paires de préférences à partir de candidats basés sur la réussite des cas de test, traitant l'échantillon avec le taux de réussite le plus élevé comme positif et celui avec le taux le plus bas comme négatif. Cependant, cette approche ne localise pas les erreurs spécifiques dans le code, ce qui empêche le modèle d'apprendre des modèles de correction d'erreurs plus informatifs, car l'alignement du code défaillant dans son ensemble manque de la granularité nécessaire pour capturer des relations significatives de résolution d'erreurs. Pour résoudre ces problèmes, nous proposons IterPref, un nouveau cadre d'alignement des préférences qui imite le débogage itératif humain pour affiner les Code LLMs. IterPref localise explicitement les régions d'erreur et aligne les tokens correspondants via un algorithme DPO adapté. Pour générer des paires informatives, nous introduisons le jeu de données CodeFlow, où les échantillons sont raffinés de manière itérative jusqu'à ce qu'ils passent les tests, avec des modifications capturant les corrections d'erreurs. Des expériences approfondies montrent qu'une suite diversifiée de Code LLMs équipés d'IterPref obtient des gains de performance significatifs en génération de code et s'améliore sur des tâches complexes comme BigCodeBench. Une analyse approfondie révèle qu'IterPref produit moins d'erreurs. Notre code et nos données seront rendus publics.
English
Preference learning enhances Code LLMs beyond supervised fine-tuning by leveraging relative quality comparisons. Existing methods construct preference pairs from candidates based on test case success, treating the higher pass rate sample as positive and the lower as negative. However, this approach does not pinpoint specific errors in the code, which prevents the model from learning more informative error correction patterns, as aligning failing code as a whole lacks the granularity needed to capture meaningful error-resolution relationships. To address these issues, we propose IterPref, a new preference alignment framework that mimics human iterative debugging to refine Code LLMs. IterPref explicitly locates error regions and aligns the corresponding tokens via a tailored DPO algorithm. To generate informative pairs, we introduce the CodeFlow dataset, where samples are iteratively refined until passing tests, with modifications capturing error corrections. Extensive experiments show that a diverse suite of Code LLMs equipped with IterPref achieves significant performance gains in code generation and improves on challenging tasks like BigCodeBench. In-depth analysis reveals that IterPref yields fewer errors. Our code and data will be made publicaly available.

Summary

AI-Generated Summary

PDF62March 5, 2025