Het evalueren en afstemmen van CodeLLMs op menselijke voorkeur
Evaluating and Aligning CodeLLMs on Human Preference
December 6, 2024
Auteurs: Jian Yang, Jiaxi Yang, Ke Jin, Yibo Miao, Lei Zhang, Liqun Yang, Zeyu Cui, Yichang Zhang, Binyuan Hui, Junyang Lin
cs.AI
Samenvatting
Grote taalmodellen voor code (codeLLMs) hebben aanzienlijke vooruitgang geboekt in codegeneratie. De meeste eerdere codegerelateerde benchmarks, die bestaan uit verschillende programmeeroefeningen samen met de bijbehorende testcases, worden gebruikt als een gangbare maatstaf om de prestaties en mogelijkheden van codeLLMs te evalueren. Echter, de huidige codeLLMs richten zich op het synthetiseren van de juiste codefragment, waarbij de afstemming met menselijke voorkeuren wordt genegeerd, waarbij de query moet worden gesampled uit praktijkscenario's en de door het model gegenereerde antwoorden aan de menselijke voorkeur moeten voldoen. Om de kloof tussen het door het model gegenereerde antwoord en de menselijke voorkeur te overbruggen, presenteren we een strikt door mensen samengestelde benchmark CodeArena om de complexiteit en diversiteit van real-world coderingstaken na te bootsen, waarbij 397 hoogwaardige voorbeelden die 40 categorieën en 44 programmeertalen bestrijken zorgvuldig zijn samengesteld uit gebruikersquery's. Verder stellen we een divers synthetisch instructiecorpus SynCode-Instruct voor (bijna 20B tokens) door instructies van de website te schalen om de effectiviteit van het fijnafstemmen van grootschalige synthetische instructies te verifiëren, waarbij Qwen2.5-SynCoder volledig getraind op synthetische instructiedata topklasse prestaties van open-source codeLLMs kan behalen. De resultaten tonen prestatieverschillen tussen uitvoeringsgebaseerde benchmarks en CodeArena. Onze systematische experimenten met CodeArena op 40+ LLMs onthullen een opmerkelijke prestatiekloof tussen open SOTA-codeLLMs (bijv. Qwen2.5-Coder) en eigen LLMs (bijv. OpenAI o1), waarbij het belang van de afstemming op menselijke voorkeur wordt benadrukt.
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/ }