論文の概要: The Art of Repair: Optimizing Iterative Program Repair with Instruction-Tuned Models
- arxiv url: http://arxiv.org/abs/2505.02931v1
- Date: Mon, 05 May 2025 18:06:51 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-05-07 18:50:11.090784
- Title: The Art of Repair: Optimizing Iterative Program Repair with Instruction-Tuned Models
- Title(参考訳): 補修の技法:指導型モデルによる反復的プログラム修復の最適化
- Authors: Fernando Vallecillos Ruiz, Max Hort, Leon Moonen,
- Abstract要約: 複数出力の生成と複数ラウンドの反復のバランスをとるAPRパイプラインについて検討する。
3つのサイズ(1K, 30K, 65K)と2つのテクニック(フルファインチューニングとLoRA)を持つAPRデータセット上で各モデルを微調整する。
その結果,微調整データセットのごく一部(1%)しか使用せず,最大78%の改善が達成できた。
- 参考スコア(独自算出の注目度): 48.073219761367184
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Automatic program repair (APR) aims to reduce the manual efforts required to identify and fix errors in source code. Before the rise of LLM-based agents, a common strategy was to increase the number of generated patches, sometimes to the thousands, to achieve better repair results on benchmarks. More recently, self-iterative capabilities enabled LLMs to refine patches over multiple rounds guided by feedback. However, literature often focuses on many iterations and disregards different numbers of outputs. We investigate an APR pipeline that balances these two approaches, the generation of multiple outputs and multiple rounds of iteration, while imposing a limit of 10 total patches per bug. We apply three SOTA instruction-tuned LLMs - DeepSeekCoder-Instruct, Codellama-Instruct, Llama3.1-Instruct - to the APR task. We further fine-tune each model on an APR dataset with three sizes (1K, 30K, 65K) and two techniques (Full Fine-Tuning and LoRA), allowing us to assess their repair capabilities on two APR benchmarks: HumanEval-Java and Defects4J. Our results show that by using only a fraction (<1%) of the fine-tuning dataset, we can achieve improvements of up to 78% in the number of plausible patches generated, challenging prior studies that reported limited gains using Full Fine-Tuning. However, we find that exceeding certain thresholds leads to diminishing outcomes, likely due to overfitting. Moreover, we show that base models greatly benefit from creating patches in an iterative fashion rather than generating them all at once. In addition, the benefit of iterative strategies becomes more pronounced in complex benchmarks. Even fine-tuned models, while benefiting less from iterations, still gain advantages, particularly on complex benchmarks. The research underscores the need for balanced APR strategies that combine multi-output generation and iterative refinement.
- Abstract(参考訳): 自動プログラム修復(APR)は、ソースコードのエラーを特定し修正するために必要な手作業を減らすことを目的としている。
LLMベースのエージェントが出現する以前、一般的な戦略は、ベンチマークでより良い修復結果を得るために生成されたパッチの数を増やすことであった。
最近では、セルフイテレーティブな機能により、LLMはフィードバックによってガイドされた複数のラウンドでパッチを洗練できるようになった。
しかし、文学はしばしば多くの反復に焦点を合わせ、異なる数の出力を無視する。
我々は、これらの2つのアプローチ、複数のアウトプットの生成と複数のイテレーションラウンドのバランスをとるAPRパイプラインを調査し、バグ毎に10パッチの制限を課す。
我々は、APRタスクに3つのSOTA命令チューニング LLM - DeepSeekCoder-Instruct, Codellama-Instruct, Llama3.1-Instruct - を適用する。
さらに3つのサイズ(1K,30K,65K)と2つのテクニック(Full Fine-Tuning,LoRA)を持つAPRデータセット上で各モデルを微調整し、HumanEval-JavaとDefects4Jという2つのAPRベンチマークでそれらの修復能力を評価する。
以上の結果から,細調整データセットのごく一部 (1%) しか使用せず, 最大78%のパッチ生成率の向上が達成でき, フル微調整による利得の限界を報告した先行研究に挑戦できることがわかった。
しかし、特定のしきい値を超えると、おそらく過度に適合するため、結果が低下する。
さらに、ベースモデルは、全てを一度に生成するのではなく、反復的な方法でパッチを作成することで大きなメリットがあることを示す。
さらに、反復戦略の利点は複雑なベンチマークでより顕著になる。
微調整されたモデルであっても、イテレーションのメリットは少ないものの、特に複雑なベンチマークでは、依然としてメリットが得られます。
この研究は、マルチアウトプット生成と反復的な改善を組み合わせたバランスの取れたAPR戦略の必要性を強調している。
関連論文リスト
- Code Copycat Conundrum: Demystifying Repetition in LLM-based Code Generation [22.100878392437508]
本研究は,19の既成符号LPMにおける繰り返しの有病率と性質を調査するための最初の実証的研究である。
生成したコードの繰り返しを検知・緩和するルールベースの手法であるDeRepを提案する。
論文 参考訳(メタデータ) (2025-04-17T03:13:39Z) - Semantic-guided Search for Efficient Program Repair with Large Language Models [0.9319432628663639]
FLAMESは、修復効率とメモリ効率を向上させるためにセマンティック誘導パッチ生成を使用する。
FLAMESは従来のLCMベースのAPRに比べてメモリ消費を最大83%削減する。
FLAMESはDefects4JとHumanEval-Javaデータセットで333と163のバグに対して133と103の修正を成功させた。
論文 参考訳(メタデータ) (2024-10-22T02:59:47Z) - MAgICoRe: Multi-Agent, Iterative, Coarse-to-Fine Refinement for Reasoning [60.55556283848063]
大規模言語モデル(LLM)推論は、テストタイムアグリゲーション戦略、すなわち、複数のサンプルを生成し、生成されたサンプル間で投票することで改善することができる。
Refinementは、LLM生成したフィードバックを使ってソリューションの品質を改善する方法を提供する。
本稿では,問題の難易度を,難易度や難易度に分類することで,過度な改善を回避するMagICoReを提案する。
論文 参考訳(メタデータ) (2024-09-18T17:12:41Z) - RePair: Automated Program Repair with Process-based Feedback [28.017321930042694]
本稿では,プロセスの監督とフィードバックによって,小規模言語モデル(LM)が優れたパフォーマンスを実現する方法を示す。
我々は、批評家として機能する報酬モデルを開発し、微調整されたLMの行動に対するフィードバックを提供する。
その結果, プロセスベースでは, より大きな結果に基づく生成方法よりも, クローズドソースの大規模LMの性能にほぼ匹敵する結果が得られた。
論文 参考訳(メタデータ) (2024-08-21T02:53:23Z) - REBEL: Reinforcement Learning via Regressing Relative Rewards [59.68420022466047]
生成モデルの時代における最小限のRLアルゴリズムであるREBELを提案する。
理論的には、自然ポリシーグラディエントのような基本的なRLアルゴリズムはREBELの変種と見なすことができる。
我々はREBELが言語モデリングと画像生成に一貫したアプローチを提供し、PPOやDPOとより強くあるいは類似した性能を実現することを発見した。
論文 参考訳(メタデータ) (2024-04-25T17:20:45Z) - Enhancing Redundancy-based Automated Program Repair by Fine-grained
Pattern Mining [18.3896381051331]
本稿では,効果的なパッチ生成を導くための2段階のパターンマイニングプロセスを含むRepattという新しい修復手法を提案する。
我々は広く使われているDefects4Jベンチマークの実験を行い、Repattを8つの最先端のAPRアプローチと比較した。
論文 参考訳(メタデータ) (2023-12-26T08:42:32Z) - FastLR: Non-Autoregressive Lipreading Model with Integrate-and-Fire [74.04394069262108]
我々は,全てのターゲットトークンを同時に生成する非自己回帰(NAR)リップリーダーモデルであるFastLRを提案する。
FastLRは最先端のリップリーダーモデルと比較して10.97$times$のスピードアップを実現している。
論文 参考訳(メタデータ) (2020-08-06T08:28:56Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。