HyperAIHyperAI
il y a 2 mois

BigCodeBench : Évaluation de la génération de code avec des appels de fonctions variés et des instructions complexes

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
BigCodeBench : Évaluation de la génération de code avec des appels de fonctions variés et des instructions complexes
Résumé

L'ingénierie logicielle automatisée a été considérablement renforcée par les récentes avancées des grands modèles de langage (LLMs) pour la programmation. Bien que les évaluations actuelles aient montré que les LLMs peuvent effectuer diverses tâches d'ingénierie logicielle comme des développeurs humains, la majorité de ces évaluations sont limitées à des tâches algorithmiques courtes et autonomes. La résolution de tâches de programmation complexes et pratiques nécessite la capacité d'utiliser divers appels de fonctions comme des outils pour mettre en œuvre efficacement des fonctionnalités telles que l'analyse de données et le développement web. De plus, l'utilisation de plusieurs outils pour résoudre une tâche nécessite un raisonnement compositionnel en comprenant précisément des instructions complexes. Satisfaire ces deux caractéristiques peut poser un défi majeur pour les LLMs.Pour évaluer la capacité des LLMs à résoudre des tâches de programmation complexes et pratiques, nous présentons Bench, un benchmark qui met au défi les LLMs d'invoquer plusieurs appels de fonctions comme des outils provenant de 139 bibliothèques et 7 domaines pour 1 140 tâches de programmation détaillées. Pour évaluer rigoureusement les LLMs, chaque tâche de programmation comprend en moyenne 5,6 cas de test avec une couverture de branches atteignant 99 %. De plus, nous proposons une variante orientée vers le langage naturel de Bench, appelée Benchi, qui transforme automatiquement les docstrings originaux en instructions courtes ne contenant que les informations essentielles.Notre évaluation approfondie de 60 LLMs montre que ces modèles ne sont pas encore capables de suivre des instructions complexes pour utiliser précisément les appels de fonctions, avec des scores allant jusqu'à 60 %, bien inférieurs aux performances humaines qui atteignent 97 %. Ces résultats soulignent la nécessité d'avancées supplémentaires dans ce domaine.

BigCodeBench : Évaluation de la génération de code avec des appels de fonctions variés et des instructions complexes | Articles de recherche récents | HyperAI