ICE-Score: Instructing Large Language Models to Evaluate Code

Terry Yue Zhuo
4/27/2023
cs.AIcs.CLcs.SE

Official code: terryyz/ice-score (80 stars, MIT, last commit 2024-06-16).

Abstract

Recent advancements in the field of natural language generation have facilitated the use of large language models to assess the quality of generated text. Although these models have shown promising results in tasks such as machine translation and summarization, their applicability in code intelligence tasks remains limited without human involvement. The complexity of programming concepts required for such tasks makes it difficult to develop evaluation metrics that align with human judgment. Token-matching-based metrics, such as BLEU, have demonstrated weak correlations with human practitioners in code intelligence tasks. Moreover, utilizing human-written test suites to evaluate functional correctness can be challenging in domains with low resources. To overcome these obstacles, we propose \texttt{ICE-Score}, a new evaluation metric via instructing large language models (LLMs) for code assessments. Our metric addresses the limitations of existing approaches by achieving superior correlations with functional correctness and human preferences, without the need for test oracles or references. We evaluate the efficacy of our metric on two different aspects (\textit{human preference} and \textit{execution success}) and four programming languages. Our results demonstrate that our metric surpasses state-of-the-art metrics for code generation, delivering high levels of accuracy and consistency across various programming languages and tasks. We also make our evaluation metric and datasets available to the public\footnote{\url{https://github.com/terryyz/ice-score}}, encouraging further research in evaluating code intelligence tasks.

View on arXivView PDF

Code Implementations(1)

terryyz/ice-scoreOfficial100%
MIT

[EACL 2024] ICE-Score: Instructing Large Language Models to Evaluate Code

8010Python, Jupyter NotebookApr 26, 20232 years agoMIT
automatic-evaluationcode-generationcode-qualityevaluationgpt-4+2 more

Similar Papers

Cite this paper

@article{zhuo2023icescore,
  title  = {ICE-Score: Instructing Large Language Models to Evaluate Code},
  author = {Terry Yue Zhuo},
  year   = {2023},
  eprint = {2304.14317},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2304.14317v2}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2304.14317.svg)](https://codeofpaper.com/paper/2304.14317)

Discussion