論文の概要: Coeditor: Leveraging Contextual Changes for Multi-round Code Auto-editing
- arxiv url: http://arxiv.org/abs/2305.18584v2
- Date: Sun, 28 Apr 2024 17:45:56 GMT
- ステータス: 処理完了
- システム内更新日: 2024-05-01 01:34:26.237231
- Title: Coeditor: Leveraging Contextual Changes for Multi-round Code Auto-editing
- Title(参考訳): Coeditor: マルチラウンドコード自動編集におけるコンテキスト変更の活用
- Authors: Jiayi Wei, Greg Durrett, Isil Dillig,
- Abstract要約: 本研究では,複数ラウンドのコードの自動編集設定について検討し,その内部の最近の変更に基づいて,コード領域への編集を予測することを目的とした。
我々のモデルであるCoeditorは、コード編集タスクに特化して設計された微調整言語モデルである。
単純化されたシングルラウンドのシングル編集タスクでは、Coeditor は GPT-3.5 と SOTA のオープンソースコード補完モデルを大幅に上回っている。
- 参考スコア(独自算出の注目度): 57.776971051512234
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Developers often dedicate significant time to maintaining and refactoring existing code. However, most prior work on generative models for code focuses solely on creating new code, overlooking the distinctive needs of editing existing code. In this work, we explore a multi-round code auto-editing setting, aiming to predict edits to a code region based on recent changes within the same codebase. Our model, Coeditor, is a fine-tuned language model specifically designed for code editing tasks. We represent code changes using a line diff format and employ static analysis to form large customized model contexts, ensuring the availability of appropriate information for prediction. We collect a code editing dataset from the commit histories of 1650 open-source Python projects for training and evaluation. In a simplified single-round, single-edit task, Coeditor significantly outperforms GPT-3.5 and SOTA open-source code completion models (bringing exact-match accuracy from 34.7 up to 60.4), demonstrating the benefits of incorporating editing history for code completion. In a multi-round, multi-edit setting, we observe substantial gains by iteratively conditioning on additional user edits. We have open-sourced our code, data, and model weights to encourage future research and have released a VSCode extension powered by our model for interactive IDE usage.
- Abstract(参考訳): 開発者はしばしば、既存のコードのメンテナンスとリファクタリングにかなりの時間を費やします。
しかしながら、コード生成モデルに関するこれまでのほとんどの研究は、既存のコードを編集する特有のニーズを見越して、新しいコードの作成にのみ焦点をあてていた。
本研究では,コードベース内の最近の変更に基づいて,コード領域への編集を予測することを目的とした,複数ラウンドのコード自動編集設定について検討する。
我々のモデルであるCoeditorは、コード編集タスクに特化して設計された微調整言語モデルである。
行差分形式を用いてコード変更を表現し、静的解析を用いて大きなカスタマイズされたモデルコンテキストを構築し、予測に適切な情報を提供することを保証する。
トレーニングと評価のために1650のオープンソースのPythonプロジェクトのコミット履歴からコード編集データセットを収集します。
単純化されたシングルラウンドシングル編集タスクにおいて、Coeditor は GPT-3.5 と SOTA のオープンソースコード補完モデル(正確なマッチ精度を 34.7 から 60.4 まで)を大幅に上回り、コード補完に編集履歴を組み込むことの利点を示している。
複数ラウンドのマルチ編集設定では、追加のユーザ編集を反復的に条件付けすることで、かなりのゲインを観測する。
私たちは、将来の研究を促進するためにコード、データ、モデルウェイトをオープンソース化し、インタラクティブIDE使用のためのモデルを活用したVSCodeエクステンションをリリースしました。
関連論文リスト
- CoEdPilot: Recommending Code Edits with Learned Prior Edit Relevance, Project-wise Awareness, and Interactive Nature [15.209899925736751]
我々は、関連する編集を識別してコード編集を推奨するLLM駆動のソリューションであるCoEdPilotを提案する。
CoEdPilotは、複数のニューラルトランスフォーマーをオーケストレーションして、ロケーションの編集とコンテントの編集の両方に関して、プロジェクトの中で何とどのように編集するかを特定する。
実験の結果、CoEdPilotは編集位置を70.8%-85.3%の精度で予測でき、正確なマッチングレートは41.8%、BLEU4スコアは60.7である。
論文 参考訳(メタデータ) (2024-08-03T10:23:05Z) - CodeEditorBench: Evaluating Code Editing Capability of Large Language Models [49.387195629660994]
コードのための大規模言語モデル(LLM)は急速に進化しており、コード編集が重要な機能として現れている。
コード編集タスクにおけるLLMの性能を厳格に評価するための評価フレームワークであるCodeEditorBenchを紹介する。
5つのソースからさまざまなコーディング課題やシナリオをキュレートし、さまざまなプログラミング言語、複雑性レベル、編集タスクをカバーしています。
論文 参考訳(メタデータ) (2024-04-04T15:49:49Z) - Can It Edit? Evaluating the Ability of Large Language Models to Follow Code Editing Instructions [6.367360745627828]
コード編集タスクのベンチマークを導入し、それをいくつかの最先端LCMの評価に利用する。
我々の評価は、最先端のオープンモデルとクローズドモデルの間の大きなギャップを露呈する。
我々は、自然言語命令と組み合わされたコード編集タスクの新しい、慎重にキュレートされ、パーミッシブにライセンスされたトレーニングデータセットを導入する。
論文 参考訳(メタデータ) (2023-12-11T02:27:45Z) - InstructCoder: Instruction Tuning Large Language Models for Code Editing [26.160498475809266]
ユーザインストラクションに基づいたコード編集にLLM(Large Language Models)を用いる方法について検討する。
InstructCoderは、汎用コード編集にLLMを適用するために設計された最初の命令チューニングデータセットである。
InstructCoderで微調整されたオープンソースのLLMは、コード編集の精度を大幅に向上させることができる。
論文 参考訳(メタデータ) (2023-10-31T10:15:35Z) - Aging with GRACE: Lifelong Model Editing with Discrete Key-Value
Adaptors [53.819805242367345]
本稿では,展開モデルのストリーミングエラーにスポットフィックスを実装した生涯モデル編集手法であるGRACEを提案する。
GRACEはトレーニング済みモデルの潜在空間に新しいマッピングを記述し、モデルの重みを変更することなく、個別にローカルな編集のコードブックを作成する。
T5,BERT,GPTモデルを用いた実験では,非表示入力に一般化しつつ,編集および保持におけるGRACEの最先端性能を示す。
論文 参考訳(メタデータ) (2022-11-20T17:18:22Z) - CodeEditor: Learning to Edit Source Code with Pre-trained Models [47.736781998792]
本稿では,CodeEditorというコード編集モデルを提案する。
私たちは、多くの現実世界のコードスニペットを基礎として収集し、強力なジェネレータを使って変更したバージョンに書き直します。
我々は,4つのコード編集データセットの実験を行い,事前学習したCodeEditorを3つの設定で評価する。
論文 参考訳(メタデータ) (2022-10-31T03:26:33Z) - InCoder: A Generative Model for Code Infilling and Synthesis [88.46061996766348]
InCoderは、プログラム合成(左から右への生成)と編集(埋め込み)が可能な統合生成モデルである。
InCoderは、許可されたコードの大きなコーパスからコードファイルを生成するように訓練されている。
私たちのモデルは、ゼロショットコードの埋め込みを直接実行できる最初の生成モデルです。
論文 参考訳(メタデータ) (2022-04-12T16:25:26Z) - Unsupervised Learning of General-Purpose Embeddings for Code Changes [6.652641137999891]
事前学習中にコード変更の埋め込みを得る手法を提案する。
コードの変更とコミットメッセージ生成という、2つの異なる下流タスクでそれらを評価します。
本モデルでは,完全編集シーケンスを用いたモデルの精度を5.9ポイント向上させる。
論文 参考訳(メタデータ) (2021-06-03T19:08:53Z) - Learning Structural Edits via Incremental Tree Transformations [102.64394890816178]
構造化データのインクリメンタルな編集(すなわち「構造的編集」)のための汎用モデルを提案する。
我々の編集者は、反復的にツリー編集(例えば、サブツリーの削除や追加)を生成し、部分的に編集されたデータに適用することを学びます。
提案したエディタを2つのソースコード編集データセットで評価した結果,提案する編集エンコーダでは,従来よりも精度が向上していることがわかった。
論文 参考訳(メタデータ) (2021-01-28T16:11:32Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。