Exploring Parameter-Efficient Fine-Tuning Techniques for Code Generation with Large Language Models

要約

大規模言語モデル (LLM) は、ゼロショット方式で、つまり特定の微調整を必要とせずに、自然言語の意図を与えられた正確なコード スニペットを生成する優れた機能を実証します。
これまでの研究では LLM を微調整する利点が強調されてきましたが、このプロセスには高い計算コストがかかるため、リソースが不足している環境、特に数十億のパラメータを持つモデルでは非現実的です。
これらの課題に対処するために、これまでの研究では、タスク固有のプロンプト例を使用して LLM 生成プロセスをガイドする戦略として、インコンテキスト学習 (ICL) と検索拡張生成 (RAG) が検討されていました。
ただし、ICL と RAG には、コンテキストに関連したプロンプトを設計する必要があることや、学習タスク固有のパラメーターがないなどの不便さがあり、それによって下流のタスクのパフォーマンスが制限されます。
これに関連して、妥当なリソース消費を維持しながら、LLM をタスク固有のデータに効率的に特化させるための有望なアプローチとして、パラメーター効率の良い微調整 (PEFT) が期待されます。
このペーパーでは、自動コード生成のコンテキストにおける LLM の PEFT テクニックの包括的な研究を提供します。
LLM の PEFT 技術を包括的に調査した結果、多様な LLM セットと 3 つの代表的な Python コード生成データセット (Conala、CodeAlpacaPy、APPS) にわたって、ICL や RAG に対するその技術の優位性と可能性が明らかになりました。
さらに、私たちの研究は、PEFT と量子化を組み合わせることで、より大規模な LLM を調整し、メモリ使用量を大幅に削減できる可能性を強調しています。
したがって、この研究は、ソフトウェア エンジニアリング シナリオにおける PEFT のより広範な応用の機会を開きます。
私たちのコードは https://github.com/martin-wey/peft-llm-code/ で入手できます。

要約(オリジナル)

Large language models (LLMs) demonstrate impressive capabilities to generate accurate code snippets given natural language intents in a zero-shot manner, i.e., without the need for specific fine-tuning. While prior studies have highlighted the advantages of fine-tuning LLMs, this process incurs high computational costs, making it impractical in resource-scarce environments, particularly for models with billions of parameters. To address these challenges, previous research explored in-context learning (ICL) and retrieval-augmented generation (RAG) as strategies to guide the LLM generative process with task-specific prompt examples. However, ICL and RAG introduce inconveniences, such as the need for designing contextually relevant prompts and the absence of learning task-specific parameters, thereby limiting downstream task performance. In this context, we foresee parameter-efficient fine-tuning (PEFT) as a promising approach to efficiently specialize LLMs to task-specific data while maintaining reasonable resource consumption. In this paper, we deliver a comprehensive study of PEFT techniques for LLMs in the context of automated code generation. Our comprehensive investigation of PEFT techniques for LLMs reveals their superiority and potential over ICL and RAG across a diverse set of LLMs and three representative Python code generation datasets: Conala, CodeAlpacaPy, and APPS. Furthermore, our study highlights the potential for tuning larger LLMs and significant reductions in memory usage by combining PEFT with quantization. Therefore, this study opens opportunities for broader applications of PEFT in software engineering scenarios. Our code is available at https://github.com/martin-wey/peft-llm-code/.

arxiv情報

著者 Martin Weyssow,Xin Zhou,Kisub Kim,David Lo,Houari Sahraoui
発行日 2024-12-27 05:30:00+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.CL, cs.LG, cs.SE パーマリンク