[論文レビュー] A Survey of Large Language Models for Code: Evolution, Benchmarking, and Future Trends
本稿は Code LLMs (ソフトウェア工学に特化) と一般の LLMs を体系的に比較し、149 件の Code LLM の研究を整理する(スクリーニング後は 134 件)、性能差を分析し、どの SE タスクでどの LLM が優れているかをマッピングする。
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.
研究の動機と目的
- ソフトウェア工学のために設計された LLM が何か、そしてそれらが互いにどのように関連しているかを特定する。
- Code LLMs が SE タスクで一般 LLMs より優れているかを評価する。
- 異なる SE タスクやベンチマークでどの LLM が最も高い性能を示すかを整理する。
提案手法
- あらかじめ定義されたキーワードを用いて four databases から文献を収集する(GitHub, dblp, Google Scholar, arXiv)。
- カードソーティング(クローズド)を適用して論文を関連性あり/なしに分類する。
- スクリーンとスノーボール法により134件の論文をスクリーニングし、開発関係と性能結果を手動で抽出する。
- SEタスク全般にわたる報告済みの実験結果を用いて Code LLMs と一般 LLMs を比較する。
- 主要ベンチマーク(例:HumanEval)における Code LLMs の性能スコアを 126 Code LLMs にわたって維持・分析する。
実験結果
リサーチクエスチョン
- RQ1RQ1: ソフトウェア工学タスクのために設計された LLM は何で、それらはどのように関連しているか?
- RQ2RQ2: Code LLMs はソフトウェア工学タスクで一般 LLMs を上回るか?
- RQ3RQ3: どの LLM が異なるソフトウェア工学タスクでより熟練しているか?
主な発見
- Code LLMs は SE タスク向けに微調整された場合、一般にベースモデルより優れている。
- パラメータ数が同等の場合、Code LLMs は一般 LLMs より優れている傾向がある。
- 最先端の Code LLMs(例:CodeFuse-CodeLlama-34B)は一部の設定でコード生成ベンチマークにおいて GPT-4 を上回ることがある一方、GPT-4 は他のタスクでも競争力を維持する。
- 本研究は 126 Code LLMs の性能スコアを維持し、主要な SE ベンチマークとタスク全体での性能を分析する。
- このレビューは、開発元の所属とタスク性能で組織化された Code LLMs の初めての体系的評価である。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。