論文の概要: ContrastRepair: Enhancing Conversation-Based Automated Program Repair
via Contrastive Test Case Pairs
- arxiv url: http://arxiv.org/abs/2403.01971v2
- Date: Thu, 7 Mar 2024 05:33:36 GMT
- ステータス: 処理完了
- システム内更新日: 2024-03-08 16:37:55.539386
- Title: ContrastRepair: Enhancing Conversation-Based Automated Program Repair
via Contrastive Test Case Pairs
- Title(参考訳): ContrastRepair: コントラストテストケースペアによる会話に基づく自動プログラム修復の促進
- Authors: Jiaolong Kong, Mingfei Cheng, Xiaofei Xie, Shangqing Liu, Xiaoning Du,
Qi Guo
- Abstract要約: ContrastRepairは、対照的なテストペアを提供することで、会話駆動型APRを強化する、新しいAPRアプローチである。
Defects4j、QuixBugs、HumanEval-Javaなど、複数のベンチマークデータセット上でContrastRepairを評価する。
- 参考スコア(独自算出の注目度): 23.419180504723546
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Automated Program Repair (APR) aims to automatically generate patches for
rectifying software bugs. Recent strides in Large Language Models (LLM), such
as ChatGPT, have yielded encouraging outcomes in APR, especially within the
conversation-driven APR framework. Nevertheless, the efficacy of
conversation-driven APR is contingent on the quality of the feedback
information. In this paper, we propose ContrastRepair, a novel
conversation-based APR approach that augments conversation-driven APR by
providing LLMs with contrastive test pairs. A test pair consists of a failing
test and a passing test, which offer contrastive feedback to the LLM. Our key
insight is to minimize the difference between the generated passing test and
the given failing test, which can better isolate the root causes of bugs. By
providing informative and specific feedback, ContrastRepair enables the LLM to
produce effective bug fixes. The implementation of ContrastRepair is based on
the state-of-the-art LLM, ChatGPT, and it iteratively interacts with ChatGPT
until plausible patches are generated. We evaluate ContrastRepair on multiple
benchmark datasets, including Defects4j, QuixBugs, and HumanEval-Java. The
results demonstrate that ContrastRepair significantly outperforms existing
methods, achieving a new state-of-the-art in program repair. For instance,
among Defects4j 1.2 and 2.0, ContrastRepair correctly repairs 143 out of all
337 bug cases, while the best-performing baseline fixes 124 bugs.
- Abstract(参考訳): 自動プログラム修正(APR)は、ソフトウェアバグを修正するパッチを自動的に生成することを目的としている。
ChatGPTのようなLarge Language Models(LLM)の最近の進歩は、特に会話駆動のAPRフレームワークにおいて、APRにおいて奨励的な結果をもたらしている。
それでも,会話駆動型APRの有効性はフィードバック情報の質に左右される。
本稿では,コントラストテストペアをllmで提供することにより,会話駆動型aprを強化する新しい対話型aprアプローチであるcon contrastrepairを提案する。
テストペアは、失敗するテストと、LLMに対して対照的なフィードバックを提供するパステストで構成される。
私たちの重要な洞察は、生成されたパステストと与えられた失敗テストの違いを最小限に抑えることです。
情報と具体的なフィードバックを提供することで、con contrastrepairはllmが効果的なバグ修正を可能にする。
ContrastRepairの実装は最先端のLLMであるChatGPTに基づいており、プラウシブルパッチが生成されるまでChatGPTと反復的に対話する。
Defects4j、QuixBugs、HumanEval-Javaなど、複数のベンチマークデータセット上でContrastRepairを評価する。
その結果、ContrastRepairは既存の方法よりも大幅に優れており、プログラムの修復における新しい最先端を実現している。
例えば、Defects4j 1.2と2.0では、ContrastRepairは337のバグケースのうち143を正しく修正する。
関連論文リスト
- Effective and Efficient Conversation Retrieval for Dialogue State
Tracking with Implicit Text Summaries [51.11997829609478]
LLM (Large Language Models) を用いたDST (Few-shot dialogue state tracking) では,会話検索を効果的かつ効率的に行うことで,学習の迅速化を図っている。
従来は検索キーやクエリとして生の対話コンテキストを使用していた。
会話のテキスト要約に基づいて会話検索を行う。
LLMに基づく会話要約器がクエリとキー生成に採用され、効果的な内部製品探索が可能となる。
論文 参考訳(メタデータ) (2024-02-20T14:31:17Z) - A Novel Approach for Automatic Program Repair using Round-Trip
Translation with Large Language Models [50.86686630756207]
研究によると、ある文の文法的誤りは、それを他の言語に翻訳し、その語を返せば修正できる。
現在の自動プログラム修復(APR)生成モデルは、ソースコードで事前訓練され、修正のために微調整されている。
本稿では,あるプログラミング言語から別のプログラミング言語,あるいは自然言語へのコード変換,そして,その逆といった,微調整ステップをバイパスし,ラウンド・トリップ変換(RTT)を用いる手法を提案する。
論文 参考訳(メタデータ) (2024-01-15T22:36:31Z) - DebugBench: Evaluating Debugging Capability of Large Language Models [89.13051256657995]
DebugBench - LLM(Large Language Models)のベンチマーク。
C++、Java、Pythonの4つの主要なバグカテゴリと18のマイナータイプをカバーする。
ゼロショットシナリオで2つの商用モデルと3つのオープンソースモデルを評価する。
論文 参考訳(メタデータ) (2024-01-09T15:46:38Z) - A Critical Review of Large Language Model on Software Engineering: An
Example from ChatGPT and Automated Program Repair [20.082609376585186]
大規模言語モデル(LLM)が注目され、様々なソフトウェアエンジニアリングタスクで有望なパフォーマンスを示した。
本稿では,ChatGPTのバグ修正機能について,研究目的の異なるクリーンAPRベンチマークで概説する。
ChatGPTは、35ラウンド以内の基本的なプロンプトを使用して151のバグギープログラムのうち109を修正でき、最先端のLLM CodeT5とPLBARTを27.5%、予測精度62.4%で上回っている。
論文 参考訳(メタデータ) (2023-10-13T06:11:47Z) - 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) - Effective Test Generation Using Pre-trained Large Language Models and
Mutation Testing [13.743062498008555]
大規模言語モデル(LLM)が生成するテストケースの有効性を,バグの発見の観点から改善するための MuTAP を導入する。
MuTAPは、プログラム・アンダー・テスト(PUT)の自然言語記述がない場合に有効なテストケースを生成することができる
提案手法は, 最大28%の人書きコードスニペットを検出できることを示す。
論文 参考訳(メタデータ) (2023-08-31T08:48:31Z) - LLMs as Factual Reasoners: Insights from Existing Benchmarks and Beyond [135.8013388183257]
そこで我々は,SummEditsと呼ばれる10ドメインのベンチマークで不整合検出ベンチマークを作成し,実装する新しいプロトコルを提案する。
ほとんどのLLMはSummEditsで苦労しており、パフォーマンスはランダムに近い。
最も優れたモデルであるGPT-4は、推定された人間のパフォーマンスよりも8%低い。
論文 参考訳(メタデータ) (2023-05-23T21:50:06Z) - Teaching Large Language Models to Self-Debug [62.424077000154945]
大規模言語モデル(LLM)は、コード生成において素晴らしいパフォーマンスを達成した。
本稿では,大規模言語モデルで予測プログラムを数発のデモでデバッグする自己デバッグを提案する。
論文 参考訳(メタデータ) (2023-04-11T10:43:43Z) - Keep the Conversation Going: Fixing 162 out of 337 bugs for $0.42 each
using ChatGPT [10.071615423169902]
自動プログラム修復(APR)は、バグギープログラムのパッチを自動的に生成することを目的としている。
最近のAPRの研究は、最新のLarge Language Models(LLM)を活用して、APRのパッチを直接生成することに重点を置いている。
最初に完全に自動化された会話駆動型APRアプローチであるChatRepairを提案する。
論文 参考訳(メタデータ) (2023-04-01T20:57:33Z) - Conversational Automated Program Repair [10.071615423169902]
本稿では,パッチ生成と検証を対話的に交互に行うプログラム修復のための新しいパラダイムを提案する。
我々は,大規模な事前学習型言語モデルの長期的コンテキストウインドウを活用して,以前の不正なパッチの生成を回避するだけでなく,検証フィードバックを取り入れて,テスト対象のプログラムの意味をモデルが理解できるようにする。
論文 参考訳(メタデータ) (2023-01-30T19:22:36Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。