BigCodeBench: Evaluación de la Generación de Código con Llamadas a Funciones Diversas e Instrucciones Complejas
BigCodeBench: Benchmarking Code Generation with Diverse Function Calls and Complex Instructions
June 22, 2024
Autores: Terry Yue Zhuo, Minh Chien Vu, Jenny Chim, Han Hu, Wenhao Yu, Ratnadira Widyasari, Imam Nur Bani Yusuf, Haolan Zhan, Junda He, Indraneil Paul, Simon Brunner, Chen Gong, Thong Hoang, Armel Randy Zebaze, Xiaoheng Hong, Wen-Ding Li, Jean Kaddour, Ming Xu, Zhihan Zhang, Prateek Yadav, Naman Jain, Alex Gu, Zhoujun Cheng, Jiawei Liu, Qian Liu, Zijian Wang, David Lo, Binyuan Hui, Niklas Muennighoff, Daniel Fried, Xiaoning Du, Harm de Vries, Leandro Von Werra
cs.AI
Resumen
La ingeniería de software automatizada ha sido enormemente potenciada por los recientes avances en los Modelos de Lenguaje de Gran Escala (LLMs) para programación. Si bien los benchmarks actuales han demostrado que los LLMs pueden realizar diversas tareas de ingeniería de software como desarrolladores humanos, la mayoría de sus evaluaciones se limitan a tareas algorítmicas cortas y autónomas. Resolver tareas de programación desafiantes y prácticas requiere la capacidad de utilizar diversas llamadas a funciones como herramientas para implementar eficientemente funcionalidades como análisis de datos y desarrollo web. Además, el uso de múltiples herramientas para resolver una tarea necesita un razonamiento composicional al comprender con precisión instrucciones complejas. Cumplir ambas características puede representar un gran desafío para los LLMs. Para evaluar qué tan bien los LLMs pueden resolver tareas de programación desafiantes y prácticas, presentamos Bench, un benchmark que desafía a los LLMs a invocar múltiples llamadas a funciones como herramientas de 139 bibliotecas y 7 dominios para 1,140 tareas de programación detalladas. Para evaluar rigurosamente los LLMs, cada tarea de programación abarca 5.6 casos de prueba con una cobertura de ramas promedio del 99%. Además, proponemos una variante orientada al lenguaje natural de Bench, Benchi, que transforma automáticamente las cadenas de documentación originales en instrucciones cortas solo con información esencial. Nuestra extensa evaluación de 60 LLMs muestra que los LLMs aún no son capaces de seguir instrucciones complejas para usar llamadas a funciones con precisión, con puntajes de hasta el 60%, significativamente más bajos que el rendimiento humano del 97%. Los resultados subrayan la necesidad de avances adicionales en esta área.
English
Automated software engineering has been greatly empowered by the recent
advances in Large Language Models (LLMs) for programming. While current
benchmarks have shown that LLMs can perform various software engineering tasks
like human developers, the majority of their evaluations are limited to short
and self-contained algorithmic tasks. Solving challenging and practical
programming tasks requires the capability of utilizing diverse function calls
as tools to efficiently implement functionalities like data analysis and web
development. In addition, using multiple tools to solve a task needs
compositional reasoning by accurately understanding complex instructions.
Fulfilling both of these characteristics can pose a great challenge for LLMs.
To assess how well LLMs can solve challenging and practical programming tasks,
we introduce Bench, a benchmark that challenges LLMs to invoke multiple
function calls as tools from 139 libraries and 7 domains for 1,140 fine-grained
programming tasks. To evaluate LLMs rigorously, each programming task
encompasses 5.6 test cases with an average branch coverage of 99%. In addition,
we propose a natural-language-oriented variant of Bench, Benchi, that
automatically transforms the original docstrings into short instructions only
with essential information. Our extensive evaluation of 60 LLMs shows that LLMs
are not yet capable of following complex instructions to use function calls
precisely, with scores up to 60%, significantly lower than the human
performance of 97%. The results underscore the need for further advancements in
this area.Summary
AI-Generated Summary