StackEval: Benchmarking LLMs in Coding Assistance
Nidhish Shah, Zulkuf Genc, Dogu Araci
TL;DR
StackEval and StackUnseen offer a rigorous, multi-language suite for evaluating LLMs on coding tasks, including writing, debugging, code review, and conceptual understanding. The paper also introduces a robust evaluation framework where LLMs act as judges, leveraging reference answers and, optionally, chain-of-thought reasoning to measure alignment with human experts. Key findings show that reference-based evaluation improves reliability, while generalization to emergent content remains challenging for current models. By making datasets and an interactive leaderboard public, the work aims to drive progress in AI-assisted coding and establish reproducible, scalable benchmarks. The study also analyzes self-preference biases in LLM judges, finding that grounding evaluations in high-quality references mitigates such biases. Overall, StackEval/StackUnseen provide practical, dynamic benchmarks with implications for deploying and improving AI copilots in real-world software development.
Abstract
We present two comprehensive benchmarks to evaluate the performance of language models in coding assistance tasks, covering code writing, debugging, code review, and conceptual understanding. Our main contribution includes two curated datasets: StackEval, a large-scale benchmark derived from Stack Overflow questions, and StackUnseen, a dynamic benchmark featuring the most recent Stack Overflow content. These benchmarks offer novel insights into the capabilities and limitations of LLMs, particularly in handling new and emerging content. Additionally, we assess LLMs' proficiency as judges for coding tasks using a curated, human-annotated dataset, exploring their evaluation capabilities and potential biases, including whether they favor their own generated solutions. Our findings underscore the potential of these benchmarks to advance LLM development and application in coding assistance. To ensure reproducibility, we publicly share our datasets and evaluation code at https://github.com/ProsusAI/stack-eval .
