論文の概要: Exploring the Capabilities of LLMs for Code Change Related Tasks
- arxiv url: http://arxiv.org/abs/2407.02824v1
- Date: Wed, 3 Jul 2024 05:49:18 GMT
- ステータス: 処理完了
- システム内更新日: 2024-07-04 15:35:05.830477
- Title: Exploring the Capabilities of LLMs for Code Change Related Tasks
- Title(参考訳): コード変更関連タスクにおけるLLMの機能探索
- Authors: Lishui Fan, Jiakun Liu, Zhongxin Liu, David Lo, Xin Xia, Shanping Li,
- Abstract要約: 大規模言語モデル(LLM)は、コードに関連するタスクにおいてその効果を示す。
LLMは2つのコードバージョンの違いよりも、一般的なコード構文とセマンティクスに重点を置いている。
我々は,3つのコード変更関連タスクに対して,テキストグレーター1BパラメータLPMを用いた実証的研究を行った。
- 参考スコア(独自算出の注目度): 14.261870410238643
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Developers deal with code-change-related tasks daily, e.g., reviewing code. Pre-trained code and code-change-oriented models have been adapted to help developers with such tasks. Recently, large language models (LLMs) have shown their effectiveness in code-related tasks. However, existing LLMs for code focus on general code syntax and semantics rather than the differences between two code versions. Thus, it is an open question how LLMs perform on code-change-related tasks. To answer this question, we conduct an empirical study using \textgreater 1B parameters LLMs on three code-change-related tasks, i.e., code review generation, commit message generation, and just-in-time comment update, with in-context learning (ICL) and parameter-efficient fine-tuning (PEFT, including LoRA and prefix-tuning). We observe that the performance of LLMs is poor without examples and generally improves with examples, but more examples do not always lead to better performance. LLMs tuned with LoRA have comparable performance to the state-of-the-art small pre-trained models. Larger models are not always better, but \textsc{Llama~2} and \textsc{Code~Llama} families are always the best. The best LLMs outperform small pre-trained models on the code changes that only modify comments and perform comparably on other code changes. We suggest future work should focus more on guiding LLMs to learn the knowledge specific to the changes related to code rather than comments for code-change-related tasks.
- Abstract(参考訳): 開発者は日々のコード変更関連のタスク、例えばコードレビューを扱う。
事前訓練されたコードとコード変更指向のモデルは、開発者がそのようなタスクをこなすのに役立つように適応されている。
近年,大規模言語モデル (LLM) がコード関連タスクにおいて有効性を示している。
しかし、コードのための既存のLLMは、2つのコードバージョンの違いよりも、一般的なコード構文とセマンティクスに重点を置いている。
したがって、LLMがコード変更関連のタスクでどのように機能するかは、未解決の問題である。
そこで本研究では,コードレビュー生成,コミットメッセージ生成,ジャスト・イン・タイムのコメント更新など,コード変更に関連する3つのタスク,すなわちコードレビュー生成とコミットメッセージ生成とジャスト・イン・タイムのコメント更新に対して,テキスト内学習(ICL)とパラメータ効率の微調整(PEFT,LoRAやプレフィックスチューニングを含む)を併用した実験的検討を行った。
LLMのパフォーマンスは例がなく、一般的には例によって改善されているが、より多くの例が必ずしもより良いパフォーマンスをもたらすとは限らない。
LoRAでチューニングされたLLMは、最先端の小さな訓練済みモデルに匹敵する性能を持つ。
より大きなモデルは必ずしも優れているとは限らないが、 \textsc{Llama~2} と \textsc{Code~Llama} ファミリは常に最高である。
最高のLLMは、コメントだけを変更し、他のコード変更と互換性を持って実行するコード変更において、トレーニング済みの小さなモデルよりも優れています。
今後の作業は、コード変更関連のタスクに対するコメントよりも、コードに関連する変更に特有の知識を学ぶためのLLMの指導に重点を置くべきだと考えています。
関連論文リスト
- Beyond Code Generation: Assessing Code LLM Maturity with Postconditions [9.521621889147362]
本稿では,ポストコンディショニング問題に基づく大規模言語モデルの成熟度モデルを提案する。
EvalPlusデータセットを条件付きテストベンチマークに拡張し、いくつかのオープンソースモデルを評価する。
論文 参考訳(メタデータ) (2024-07-19T08:34:30Z) - CodeUpdateArena: Benchmarking Knowledge Editing on API Updates [77.81663273436375]
コードドメインの知識編集のためのベンチマークであるCodeUpdateArenaを提示する。
私たちのベンチマークのインスタンスは、プログラム合成例と組み合わせた合成API関数のアップデートで構成されています。
ベンチマークでは、7つのPythonパッケージから54の関数へ、さまざまなタイプの更新をカバーしています。
論文 参考訳(メタデータ) (2024-07-08T17:55:04Z) - Benchmarking the Communication Competence of Code Generation for LLMs and LLM Agent [2.8391355909797644]
大規模言語モデル(LLM)は、コード生成の分野でタスクを実行する能力を大幅に改善した。
LLMが有能なプログラマであることと、最上位のソフトウェアエンジニアであることの間にはまだギャップがある。
論文 参考訳(メタデータ) (2024-05-31T22:06:18Z) - CodecLM: Aligning Language Models with Tailored Synthetic Data [51.59223474427153]
命令追従能力のための高品質な合成データを適応的に生成するフレームワークであるCodecLMを紹介する。
まず、ターゲットの指示分布をキャプチャするために、オンザフライで生成された簡潔なキーワードであるメタデータにシード命令をエンコードする。
また、デコード中に自己論理とコントラストフィルタを導入し、データ効率の良いサンプルを調整する。
論文 参考訳(メタデータ) (2024-04-08T21:15:36Z) - Code Prompting Elicits Conditional Reasoning Abilities in Text+Code LLMs [69.99031792995348]
自然言語の問題をコードに変換する一連のプロンプトであるコードプロンプトを導入します。
コードプロンプトは複数のLLMに対して高速に向上することがわかった。
GPT 3.5を解析した結果,入力問題のコードフォーマッティングが性能向上に不可欠であることが判明した。
論文 参考訳(メタデータ) (2024-01-18T15:32:24Z) - If LLM Is the Wizard, Then Code Is the Wand: A Survey on How Code
Empowers Large Language Models to Serve as Intelligent Agents [81.60906807941188]
大型言語モデル(LLM)は、自然言語と形式言語(コード)の組み合わせに基づいて訓練される
コードは、標準構文、論理一貫性、抽象化、モジュール性を備えた高レベルの目標を実行可能なステップに変換する。
論文 参考訳(メタデータ) (2024-01-01T16:51:20Z) - DoLa: Decoding by Contrasting Layers Improves Factuality in Large
Language Models [79.01926242857613]
大型言語モデル(LLM)は幻覚を起こす傾向があり、事前訓練中に見られる事実から逸脱した内容を生成する。
事前学習したLLMによる幻覚を低減するための簡単な復号法を提案する。
コントラスティング・レイヤ(DoLa)アプローチによるこのデコーディングは,事実知識をよりよく提示し,誤った事実の生成を減らすことができる。
論文 参考訳(メタデータ) (2023-09-07T17:45:31Z) - Evaluating Instruction-Tuned Large Language Models on Code Comprehension
and Generation [4.310519298899164]
本研究では,4つの代表的コード理解および生成タスクに対して,オープンソースのLLMを10個評価する。
ゼロショット設定では、命令されたLLMはコード理解と生成タスクに非常に競合する。
数ショット設定では,実演例の追加がLLMの性能向上に有効であることが判明した。
論文 参考訳(メタデータ) (2023-08-02T15:54:22Z) - Coarse-Tuning Models of Code with Reinforcement Learning Feedback [0.0]
コード上で事前訓練されたLarge Language Models (LLM) が、プログラム合成の主流のアプローチとして登場した。
コードの品質を評価する接地関数からのフィードバックを用いて、強化学習により事前学習したLLMをさらに訓練するRCCFを提案する。
論文 参考訳(メタデータ) (2023-05-25T22:09:08Z) - CodeT5+: Open Code Large Language Models for Code Understanding and
Generation [72.1638273937025]
大きな言語モデル (LLM) は膨大なソースコードで事前訓練されており、コードインテリジェンスにおいて顕著な進歩を遂げている。
CodeT5+は、コンポーネントモジュールを柔軟に組み合わせて、幅広い下流のコードタスクに適合させることができるコードのためのエンコーダ-デコーダLLMのファミリーである。
我々は、ゼロショット、微調整、命令調整を含む20以上のコード関連ベンチマークでCodeT5+を広範囲に評価した。
論文 参考訳(メタデータ) (2023-05-13T14:23:07Z) - Automatic Semantic Augmentation of Language Model Prompts (for Code
Summarization) [7.699967852459232]
開発者はコーディングタスクに取り組む際に、意識的に無意識に意味的な事実の集合を念頭に置いている傾向があります。
トランス方式のLLMの強力な多層アーキテクチャは、この単純なレベルの「コード解析」を本質的に行うことができると仮定できるかもしれない。
我々は,LLMのプロンプトを意味的事実で自動的に拡張するかどうかを実際に評価する。
論文 参考訳(メタデータ) (2023-04-13T20:49:35Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。