Evaluación y Alineación de Modelos de Lenguaje de Código según la Preferencia Humana
Evaluating and Aligning CodeLLMs on Human Preference
December 6, 2024
Autores: Jian Yang, Jiaxi Yang, Ke Jin, Yibo Miao, Lei Zhang, Liqun Yang, Zeyu Cui, Yichang Zhang, Binyuan Hui, Junyang Lin
cs.AI
Resumen
Los modelos de lenguaje de código extenso (codeLLMs) han avanzado significativamente en la generación de código. La mayoría de los benchmarks previos relacionados con el código, que consisten en varios ejercicios de programación junto con los casos de prueba correspondientes, se utilizan como una medida común para evaluar el rendimiento y las capacidades de los codeLLMs. Sin embargo, los actuales codeLLMs se centran en sintetizar el fragmento de código correcto, ignorando la alineación con las preferencias humanas, donde la consulta debería ser muestreada de los escenarios de aplicación práctica y las respuestas generadas por el modelo deberían satisfacer la preferencia humana. Para cerrar la brecha entre la respuesta generada por el modelo y la preferencia humana, presentamos un riguroso benchmark curado por humanos, CodeArena, para emular la complejidad y diversidad de tareas de codificación del mundo real, donde se incluyen 397 muestras de alta calidad que abarcan 40 categorías y 44 lenguajes de programación, cuidadosamente seleccionadas a partir de consultas de usuarios. Además, proponemos un corpus de instrucciones sintéticas diversas, SynCode-Instruct (casi 20 mil millones de tokens), escalando instrucciones del sitio web para verificar la efectividad del ajuste fino de instrucciones sintéticas a gran escala, donde Qwen2.5-SynCoder, totalmente entrenado en datos de instrucciones sintéticas, puede lograr un rendimiento de primer nivel en codeLLMs de código abierto. Los resultados revelan diferencias de rendimiento entre los benchmarks basados en la ejecución y CodeArena. Nuestros experimentos sistemáticos en CodeArena con más de 40 LLMs muestran una notable brecha de rendimiento entre los codeLLMs de código abierto de última generación (por ejemplo, Qwen2.5-Coder) y los codeLLMs propietarios (por ejemplo, OpenAI o1), subrayando la importancia de la alineación con las preferencias humanas.
English
Code large language models (codeLLMs) have made significant strides in code
generation. Most previous code-related benchmarks, which consist of various
programming exercises along with the corresponding test cases, are used as a
common measure to evaluate the performance and capabilities of code LLMs.
However, the current code LLMs focus on synthesizing the correct code snippet,
ignoring the alignment with human preferences, where the query should be
sampled from the practical application scenarios and the model-generated
responses should satisfy the human preference. To bridge the gap between the
model-generated response and human preference, we present a rigorous
human-curated benchmark CodeArena to emulate the complexity and diversity of
real-world coding tasks, where 397 high-quality samples spanning 40 categories
and 44 programming languages, carefully curated from user queries. Further, we
propose a diverse synthetic instruction corpus SynCode-Instruct (nearly 20B
tokens) by scaling instructions from the website to verify the effectiveness of
the large-scale synthetic instruction fine-tuning, where Qwen2.5-SynCoder
totally trained on synthetic instruction data can achieve top-tier performance
of open-source code LLMs. The results find performance differences between
execution-based benchmarks and CodeArena. Our systematic experiments of
CodeArena on 40+ LLMs reveal a notable performance gap between open SOTA code
LLMs (e.g. Qwen2.5-Coder) and proprietary LLMs (e.g., OpenAI o1), underscoring
the importance of the human preference
alignment.\url{https://codearenaeval.github.io/ }Summary
AI-Generated Summary