論文の概要: Automated Code Editing with Search-Generate-Modify
- arxiv url: http://arxiv.org/abs/2306.06490v2
- Date: Mon, 26 Feb 2024 16:03:24 GMT
- ステータス: 処理完了
- システム内更新日: 2024-02-28 22:46:52.259803
- Title: Automated Code Editing with Search-Generate-Modify
- Title(参考訳): Search-Generate-Modifyによる自動コード編集
- Authors: Changshu Liu, Pelin Cetin, Yogesh Patodia, Saikat Chakraborty,
Yangruibo Ding, Baishakhi Ray
- Abstract要約: 本稿では,コード検索,生成,修正のパワーを活用して,コード編集をより良く合成するためのハイブリッドアプローチを提案する。
SARGAMは、実際の開発者のコード編集動作を模倣するように設計された新しいツールである。
- 参考スコア(独自算出の注目度): 24.96672652375192
- License: http://creativecommons.org/publicdomain/zero/1.0/
- Abstract: Code editing is essential in evolving software development. Many automated
code editing tools have been proposed that leverage both Information
Retrieval-based techniques and Machine Learning-based code generation and code
editing models. Each technique comes with its own promises and perils, and they
are often used together to complement their strengths and compensate for their
weaknesses. This paper proposes a hybrid approach to better synthesize code
edits by leveraging the power of code search, generation, and modification. Our
key observation is that a patch obtained by search and retrieval, even if
imperfect, can provide helpful guidance to a code generation model. However, a
retrieval-guided patch produced by a code generation model can still be a few
tokens off from the intended patch. Such generated patches can be slightly
modified to create the intended patches. SARGAM is a novel tool designed to
mimic a real developer's code editing behavior. Given an original code version,
the developer may search for related patches, generate or write the code, and
then modify the generated code to adapt it to the right context. Our evaluation
of SARGAM on edit generation shows superior performance with respect to current
state-of-the-art techniques. SARGAM also shows great effectiveness on automated
program repair tasks.
- Abstract(参考訳): コード編集はソフトウェア開発の発展に不可欠である。
情報検索ベースの技術と機械学習ベースのコード生成とコード編集モデルの両方を活用する多くの自動コード編集ツールが提案されている。
それぞれのテクニックには独自の約束と危険が伴い、その強みを補完し、弱点を補うためにしばしば使用される。
本稿では,コード検索,生成,修正のパワーを活用して,コード編集をより良く合成するためのハイブリッドアプローチを提案する。
我々のキーとなる観察は、たとえ不完全であっても、検索と検索によって得られたパッチは、コード生成モデルに有用なガイダンスを提供することができることである。
しかし、コード生成モデルによって生成された検索誘導パッチは、意図したパッチからいくつかのトークンを外すことができる。
生成されたパッチは、意図したパッチを作成するためにわずかに変更することができる。
SARGAMは、実際の開発者のコード編集動作を模倣するように設計された新しいツールである。
オリジナルのコードバージョンが与えられたら、開発者は関連するパッチを検索し、コードの生成や書き込みを行い、生成したコードを変更して適切なコンテキストに適応することができる。
編集生成におけるsargamの評価は,現在の技術において優れた性能を示す。
SARGAMは、自動プログラム修復タスクにも優れた効果を示す。
関連論文リスト
- RAP-Gen: Retrieval-Augmented Patch Generation with CodeT5 for Automatic
Program Repair [75.40584530380589]
新たな検索型パッチ生成フレームワーク(RAP-Gen)を提案する。
RAP-Gen 以前のバグ修正ペアのリストから取得した関連する修正パターンを明示的に活用する。
RAP-GenをJavaScriptのTFixベンチマークとJavaのCode RefinementとDefects4Jベンチマークの2つのプログラミング言語で評価する。
論文 参考訳(メタデータ) (2023-09-12T08:52:56Z) - Coeditor: Leveraging Contextual Changes for Multi-round Code Auto-editing [57.776971051512234]
本研究では,複数ラウンドのコードの自動編集設定について検討し,その内部の最近の変更に基づいて,コード領域への編集を予測することを目的とした。
我々のモデルであるCoeditorは、コード編集タスクに特化して設計された微調整言語モデルである。
単純化されたシングルラウンドのシングル編集タスクでは、Coeditor は GPT-3.5 と SOTA のオープンソースコード補完モデルを大幅に上回っている。
論文 参考訳(メタデータ) (2023-05-29T19:57:36Z) - GrACE: Generation using Associated Code Edits [23.643567386291988]
プリトレーニング済みの大規模言語モデル(LLM)に,事前の関連編集の知識を付与する。
LLMの生成能力は、コード変更の多様性と、事前編集時のコード生成の条件付けに役立ちます。
Codex と CodeT5 の2つの有名な LLM を,ゼロショット設定と微調整設定でそれぞれ評価した。
論文 参考訳(メタデータ) (2023-05-23T14:55:44Z) - Code Execution with Pre-trained Language Models [88.04688617516827]
コードインテリジェンスのトレーニング済みモデルのほとんどは実行トレースを無視しており、ソースコードと構文構造のみに依存している。
我々は,大規模かつ現実的なPythonデータセットとコード実行タスクを作成するために,突然変異に基づくデータ拡張手法を開発した。
次に、コード実行事前学習とカリキュラム学習を活用して意味理解を強化するトランスフォーマーモデルであるCodeExecutorを提案する。
論文 参考訳(メタデータ) (2023-05-08T10:00:05Z) - CCRep: Learning Code Change Representations via Pre-Trained Code Model
and Query Back [8.721077261941236]
この研究は、CCRepという新しいコード変更表現学習手法を提案する。
CCRepは、さまざまな下流タスクのための機能ベクトルとして、コード変更をエンコードすることを学ぶ。
CCRepをコミットメッセージ生成、パッチの正当性評価、ジャスト・イン・タイム欠陥予測の3つのタスクに適用する。
論文 参考訳(メタデータ) (2023-02-08T07:43:55Z) - Chatbots As Fluent Polyglots: Revisiting Breakthrough Code Snippets [0.0]
この研究は、AI駆動のコードアシスタントを使用して、現代技術を形成する影響力のあるコンピュータコードの選択を分析する。
この研究の最初の貢献は、過去50年で最も重要なコードの進歩の半分を調査することであった。
論文 参考訳(メタデータ) (2023-01-05T23:17:17Z) - ReCode: Robustness Evaluation of Code Generation Models [90.10436771217243]
コード生成モデルのための総合的ロバストネス評価ベンチマークであるReCodeを提案する。
ドクストリング、関数と変数名、コード構文、コードフォーマットのコードに特化して、30以上の変換をカスタマイズします。
ヒトのアノテータでは、摂動プロンプトの90%以上が本来のプロンプトの意味を変えていないことが確認された。
論文 参考訳(メタデータ) (2022-12-20T14:11:31Z) - InCoder: A Generative Model for Code Infilling and Synthesis [88.46061996766348]
InCoderは、プログラム合成(左から右への生成)と編集(埋め込み)が可能な統合生成モデルである。
InCoderは、許可されたコードの大きなコーパスからコードファイルを生成するように訓練されている。
私たちのモデルは、ゼロショットコードの埋め込みを直接実行できる最初の生成モデルです。
論文 参考訳(メタデータ) (2022-04-12T16:25:26Z) - ReACC: A Retrieval-Augmented Code Completion Framework [53.49707123661763]
本稿では,語彙のコピーと類似したセマンティクスを持つコード参照の両方を検索により活用する検索拡張コード補完フレームワークを提案する。
我々は,Python および Java プログラミング言語のコード補完タスクにおけるアプローチを評価し,CodeXGLUE ベンチマークで最先端のパフォーマンスを実現する。
論文 参考訳(メタデータ) (2022-03-15T08:25:08Z) - Unsupervised Learning of General-Purpose Embeddings for Code Changes [6.652641137999891]
事前学習中にコード変更の埋め込みを得る手法を提案する。
コードの変更とコミットメッセージ生成という、2つの異なる下流タスクでそれらを評価します。
本モデルでは,完全編集シーケンスを用いたモデルの精度を5.9ポイント向上させる。
論文 参考訳(メタデータ) (2021-06-03T19:08:53Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。