ChatPaper.aiChatPaper

IterPref: Aprendizaje de Preferencias Focales para la Generación de Código mediante Depuración Iterativa

IterPref: Focal Preference Learning for Code Generation via Iterative Debugging

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

Resumen

El aprendizaje de preferencias mejora los modelos de lenguaje de código (Code LLMs) más allá del ajuste fino supervisado al aprovechar comparaciones relativas de calidad. Los métodos existentes construyen pares de preferencia a partir de candidatos basados en el éxito de casos de prueba, tratando la muestra con mayor tasa de aprobación como positiva y la de menor tasa como negativa. Sin embargo, este enfoque no identifica errores específicos en el código, lo que impide que el modelo aprenda patrones más informativos de corrección de errores, ya que alinear el código fallido en su conjunto carece de la granularidad necesaria para capturar relaciones significativas de resolución de errores. Para abordar estos problemas, proponemos IterPref, un nuevo marco de alineación de preferencias que imita la depuración iterativa humana para refinar los Code LLMs. IterPref localiza explícitamente las regiones de error y alinea los tokens correspondientes mediante un algoritmo DPO adaptado. Para generar pares informativos, presentamos el conjunto de datos CodeFlow, donde las muestras se refinan iterativamente hasta pasar las pruebas, capturando las correcciones de errores en las modificaciones. Experimentos extensos muestran que una suite diversa de Code LLMs equipados con IterPref logra mejoras significativas en la generación de código y avanza en tareas desafiantes como BigCodeBench. Un análisis en profundidad revela que IterPref produce menos errores. Nuestro código y datos estarán disponibles públicamente.
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