A Survey of Large Language Models for Code: Evolution, Benchmarking, and Future Trends

Auteurs : Zibin Zheng, Kaiwen Ning, Yanlin Wang, Jingwen Zhang, Dewu Zheng, Mingxi Ye, Jiachi Chen

Résultats du processus de synthèse de l'article arXiv : 2311.10372v1

  • Résumé Complet
  • Points clés
  • Résumé vulgarisé
  • Article de blog
Les modèles de langage larges (LLM) généraux, représentés par ChatGPT, ont démontré un potentiel significatif dans des tâches telles que la génération de code en génie logiciel. Cela a conduit au développement de LLM spécialisés pour le génie logiciel, connus sous le nom de Code LLM. Une partie considérable des Code LLM est dérivée des LLM généraux grâce à un ajustement fin du modèle. Par conséquent, les Code LLM sont souvent mis à jour fréquemment et leur performance peut être influencée par les LLM de base. Cependant, il existe actuellement un manque d'enquête systématique sur les Code LLM et leur performance. Dans cette étude, nous menons une enquête complète et une analyse des types de Code LLM et de leurs différences de performance par rapport aux LLM généraux. Nous cherchons à répondre à trois questions : (1) Quels sont les LLM spécifiquement conçus pour les tâches du génie logiciel et quelle est la relation entre ces Code LLM ? (2) Les Code LLM surpassent-ils vraiment les LLM généraux dans les tâches du génie logiciel ? (3) Quels sont les LLM plus performants dans différentes tâches du génie logiciel ? Pour répondre à ces questions, nous collectons d'abord la littérature pertinente et le travail provenant de cinq bases de données majeures et des communautés open-source, ce qui donne 134 travaux pour l'analyse. Ensuite, nous catégorisons les Code LLM en fonction de leurs éditeurs et examinons leurs relations avec les LLM généraux et entre eux.
Mots clés générés par l'IA : Modèles de langage Génération de code Génie logiciel LLM spécialisés Performance

Points clés générés par l'IA

  • Les modèles de langage larges (LLM) généraux, tels que ChatGPT, ont un potentiel significatif dans la génération de code en génie logiciel.
  • Des LLM spécialisés pour le génie logiciel, appelés Code LLM, ont été développés à partir des LLM généraux avec un ajustement fin du modèle.
  • Les Code LLM sont souvent mis à jour fréquemment et leur performance peut être influencée par les LLM de base.
  • Il y a actuellement un manque d'enquête systématique sur les Code LLM et leur performance.
  • Une enquête complète et une analyse des types de Code LLM et de leurs différences de performance par rapport aux LLM généraux sont menées dans cette étude.
  • Trois questions sont posées : (1) Quels sont les LLM spécifiquement conçus pour les tâches du génie logiciel et quelle est leur relation ? (2) Les Code LLM surpassent-ils vraiment les LLM généraux dans les tâches du génie logiciel ? (3) Quels sont les LLM plus performants dans différentes tâches du génie logiciel ?
  • 134 travaux provenant de cinq bases de données majeures et des communautés open-source ont été collectés pour l'analyse.
  • Les Code LLM sont catégorisés en fonction de leurs éditeurs et leurs relations avec les LLM généraux et entre eux sont examinées.
Accédez également à nos autres résultats générés par IA : Résumé complet, Résumé vulgarisé, Article de type blog; ou posez des questions sur cet article à notre Assistant IA.

Résumé : General large language models (LLMs), represented by ChatGPT, have demonstrated significant potential in tasks such as code generation in software engineering. This has led to the development of specialized LLMs for software engineering, known as Code LLMs. A considerable portion of Code LLMs is derived from general LLMs through model fine-tuning. As a result, Code LLMs are often updated frequently and their performance can be influenced by the base LLMs. However, there is currently a lack of systematic investigation into Code LLMs and their performance. In this study, we conduct a comprehensive survey and analysis of the types of Code LLMs and their differences in performance compared to general LLMs. We aim to address three questions: (1) What LLMs are specifically designed for software engineering tasks, and what is the relationship between these Code LLMs? (2) Do Code LLMs really outperform general LLMs in software engineering tasks? (3) Which LLMs are more proficient in different software engineering tasks? To answer these questions, we first collect relevant literature and work from five major databases and open-source communities, resulting in 134 works for analysis. Next, we categorize the Code LLMs based on their publishers and examine their relationships with general LLMs and among themselves. Furthermore, we investigate the performance differences between general LLMs and Code LLMs in various software engineering tasks to demonstrate the impact of base models and Code LLMs. Finally, we comprehensively maintained the performance of LLMs across multiple mainstream benchmarks to identify the best-performing LLMs for each software engineering task. Our research not only assists developers of Code LLMs in choosing base models for the development of more advanced LLMs but also provides insights for practitioners to better understand key improvement directions for Code LLMs.

Soumis à arXiv le 17 Nov. 2023

Outils pour cet article

Expliquer autrement 3 réécritures gratuites restantes aujourd'hui
Exporter BibTeX · RIS (Zotero, Mendeley, EndNote) · Markdown (Notion, Obsidian) · Premium
Alertes de citation Premium
Journal club Des slides pour le présenter Premium
Pour les journalistes Kit presse et détecteur de hype Premium

Posez des questions sur cet article à notre assistant IA

Vous pouvez aussi discutez avec plusieurs papiers à la fois ici.

⚠La licence de l'article ne nous permet pas de nous appuyer sur son contenu et l'assistant IA ne peut se servir que des métadonnées de l'article plutôt que de l'article complet.

Figures et graphiques

Posez une question sur une figure en indiquant son numéro ou en utilisant son bouton de question pour demander une analyse visuelle. Au maximum deux figures et quatre panneaux par question. Les valeurs lues sur les graphiques sont approximatives ; vérifiez les données originales.

Instructions pour utiliser l'assistant IA ?

Évaluez la qualité du contenu généré par l'IA en votant

Note : 0

Pourquoi avons-nous besoin de votes ?

Les votes sont utilisés pour déterminer si nous devons réexécuter nos outils de synthèse. Si le compte atteint -10, nos outils peuvent être redémarrés.

Le résumé précédent a été créé il y a plus d'un an et peut être réexécuté (si nécessaire) en cliquant sur le bouton Exécuter ci-dessous.

⚠La licence de cet article spécifique ne nous permet pas de nous appuyer sur son contenu et les outils de synthèse seront exécutés en utilisant les métadonnées de l'article plutôt que l'article complet. Cependant, l'outil produira quand même un bon résultat, et vous pouvez également essayer nos outils sur des papiers avec des licences plus ouvertes.

Articles similaires résumés avec nos outils d'IA

Naviguez à travers encore plus d'articles similaires en utilisant une

représentation arborescente

Avertissement : Notre outil de synthèse basé sur l'IA et l'assistant virtuel fournis sur ce site Web peuvent ne pas toujours fournir des résumés complets ou des réponses exactes. Nous vous encourageons à examiner attentivement et à évaluer le contenu généré pour vous assurer de sa qualité et de sa pertinence par rapport à vos besoins.