論文の概要: Coeditor: Leveraging Contextual Changes for Multi-round Code
Auto-editing
- arxiv url: http://arxiv.org/abs/2305.18584v1
- Date: Mon, 29 May 2023 19:57:36 GMT
- ステータス: 処理完了
- システム内更新日: 2023-05-31 19:25:54.117178
- Title: Coeditor: Leveraging Contextual Changes for Multi-round Code
Auto-editing
- Title(参考訳): Coeditor: マルチラウンドコード自動編集におけるコンテキスト変更の活用
- Authors: Jiayi Wei, Greg Durrett, Isil Dillig
- Abstract要約: 本研究では,複数ラウンドのコードの自動編集設定について検討し,その内部の最近の変更に基づいて,コード領域への編集を予測することを目的とした。
当社のモデルであるCoeditorは、コード編集タスク用に特別に設計された機能強化を備えた、微調整のCodeT5モデルです。
トレーニングと評価のために1650のオープンソースのPythonプロジェクトのコミット履歴からコード編集データセットを収集します。
- 参考スコア(独自算出の注目度): 51.153089609654174
- 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, neglecting the unique requirements 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 CodeT5 model
with enhancements specifically designed for code editing tasks. We encode code
changes using a line diff format and employ static analysis to form large
customized model contexts, ensuring 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 the best code completion
approach -- nearly doubling its exact-match accuracy, despite using a much
smaller model -- demonstrating the benefits of incorporating editing history
for code completion. In a multi-round, multi-edit setting, we observe
substantial gains by iteratively prompting the model with additional user
edits. We open-source our code, data, and model weights to encourage future
research and release a VSCode extension powered by our model for interactive
usage.
- Abstract(参考訳): 開発者はしばしば、既存のコードのメンテナンスとリファクタリングにかなりの時間を費やします。
しかしながら、コードの生成モデルに関するほとんどの以前の作業は、新しいコードの作成のみに焦点を当てており、既存のコード編集のユニークな要件を無視している。
本研究では,コードベース内の最近の変更に基づいて,コード領域への編集を予測することを目的とした,複数ラウンドのコード自動編集設定について検討する。
私たちのモデルであるcoeditorは、コード編集タスク用に特別に設計された、微調整されたcodet5モデルです。
行差分形式を用いてコード変更をエンコードし、静的解析を用いて大きなカスタマイズされたモデルコンテキストを形成し、予測に適切な情報を確保する。
トレーニングと評価のために1650のオープンソースのPythonプロジェクトのコミット履歴からコード編集データセットを収集します。
単純化されたシングルラウンドのシングル編集タスクにおいて、Coeditorは最高のコード補完アプローチ -- はるかに小さなモデルを使用しても、正確なマッチ精度をほぼ2倍に -- を大幅に上回っており、コード補完に編集履歴を組み込むことのメリットを示している。
マルチラウンド・マルチエディット・セッティングでは,ユーザ編集の追加でモデルを反復的に促すことにより,かなりのゲインを観測する。
私たちはコード、データ、モデルウェイトをオープンソース化し、将来の研究を奨励し、インタラクティブな使用のために私たちのモデルを利用したVSCode拡張をリリースします。
関連論文リスト
- InstructCoder: Instruction Tuning Large Language Models for Code Editing [26.160498475809266]
ユーザインストラクションに基づいたコード編集にLLM(Large Language Models)を用いる方法について検討する。
InstructCoderは、汎用コード編集にLLMを適用するために設計された最初の命令チューニングデータセットである。
InstructCoderで微調整されたオープンソースのLLMは、コード編集の精度を大幅に向上させることができる。
論文 参考訳(メタデータ) (2023-10-31T10:15:35Z) - Automated Code Editing with Search-Generate-Modify [24.96672652375192]
本稿では,コード検索,生成,修正のパワーを活用して,コード編集をより良く合成するためのハイブリッドアプローチを提案する。
SARGAMは、実際の開発者のコード編集動作を模倣するように設計された新しいツールである。
論文 参考訳(メタデータ) (2023-06-10T17:11:21Z) - Generation-Augmented Query Expansion For Code Retrieval [51.20943646688115]
本稿では,次世代のクエリ拡張フレームワークを提案する。
人間の検索プロセスにインスパイアされた – 検索前に回答をスケッチする。
CodeSearchNetベンチマークで、最先端の新たな結果を得る。
論文 参考訳(メタデータ) (2022-12-20T23:49:37Z) - 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) - A Structural Model for Contextual Code Changes [20.185486717922615]
部分的に編集されたコードスニペットが与えられた場合、私たちのゴールは、スニペットの残りの部分に対する編集の完了を予測することです。
提案モデルでは,最先端のシーケンシャルモデルよりも28%,編集コードの生成を学習する構文モデルよりも2倍高い精度を実現している。
論文 参考訳(メタデータ) (2020-05-27T07:16:19Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。