論文の概要: Aligning LLMs for FL-free Program Repair
- arxiv url: http://arxiv.org/abs/2404.08877v2
- Date: Mon, 11 Nov 2024 14:35:45 GMT
- ステータス: 翻訳完了
- システム内更新日: 2024-11-12 14:06:36.930376
- Title: Aligning LLMs for FL-free Program Repair
- Title(参考訳): FLフリープログラム修復用LCMの調整
- Authors: Junjielong Xu, Ying Fu, Shin Hwei Tan, Pinjia He,
- Abstract要約: 本稿では,大規模言語モデル (LLM) をプログラム修復に適用するための新しいアプローチについて検討する。
我々の中核的な洞察は、LLMのAPR能力は、単にトレーニング目標に出力を合わせるだけで大幅に改善できるということです。
この知見に基づいて、我々はAPRの直接的なプロンプトフレームワークであるD4Cを設計した。
- 参考スコア(独自算出の注目度): 14.935596175148586
- License:
- Abstract: Large language models (LLMs) have achieved decent results on automated program repair (APR). However, the next token prediction training objective of decoder-only LLMs (e.g., GPT-4) is misaligned with the masked span prediction objective of current infilling-style methods, which impedes LLMs from fully leveraging pre-trained knowledge for program repair. In addition, while some LLMs can locate and repair bugs in certain functions using the related artifacts (e.g., test cases), existing methods still depend on statement-level fault localization methods to provide a list of buggy hunks for repair. This restriction hinders LLMs from exploring potential patches beyond the given locations. In this paper, we investigate a new approach to adapt LLMs to program repair. Our core insight is that LLM's APR capability can be greatly improved by simply aligning the output to their training objective and allowing them to refine the whole program without first identifying faulty statements. Based on this insight, we designed D4C, a straightforward prompting framework for APR. D4C can repair 180 bugs correctly in Defects4J, with each patch being sampled only 10 times. This surpasses the SOTA APR methods with perfect fault localization by 10% and reduces the patch sampling number by 90%. Our findings reveal that (1) objective alignment is crucial for fully exploiting LLM's pre-trained capability, and (2) replacing the traditional localize-buggy-hunks-then-repair workflow with direct debugging is more effective for LLM-based APR methods. Thus, we believe this paper introduces a new mindset for harnessing LLMs in APR.
- Abstract(参考訳): 大規模言語モデル(LLM)は、自動プログラム修復(APR)において十分な結果を得た。
しかし、デコーダのみのLCM(例: GPT-4)の次のトークン予測訓練目標は、現在の埋込方式のマスク付きスパン予測目標と一致せず、LCMがプログラム修復のために事前訓練された知識を完全に活用することを妨げている。
加えて、一部のLLMは関連するアーティファクト(例えば、テストケース)を使って特定の関数のバグを発見および修正することができるが、既存のメソッドは、修復のためのバグのあるハンクのリストを提供するために、文レベルの障害ローカライゼーションメソッドに依存している。
この制限は、LLMが所定の場所を越えて潜在的なパッチを探索することを妨げる。
本稿では,LLMをプログラム修復に適用するための新しいアプローチについて検討する。
我々の中核的な洞察は、LPMのAPR能力は、単にトレーニング目標に出力を合わせるだけで、初めて欠陥のあるステートメントを特定せずにプログラム全体を改善できるということです。
この知見に基づいて、我々はAPRの直接的なプロンプトフレームワークであるD4Cを設計した。
D4CはDefects4Jで180のバグを正しく修正できる。
これにより、SOTA APR法を10%の完全障害局所化で上回り、パッチサンプリング数を90%削減する。
以上の結果から, (1) 目標アライメントは, LLM の事前訓練能力の活用に不可欠であり, (2) 従来のローカライズ・バグ・ハンクス・アンペアワークフローを直接デバッグに置き換えることは, LLM ベースの APR 手法でより効果的であることが示唆された。
そこで本稿では,ALMをAPRで活用するための新たな考え方を紹介する。
関連論文リスト
- LLM Self-Correction with DeCRIM: Decompose, Critique, and Refine for Enhanced Following of Instructions with Multiple Constraints [86.59857711385833]
実世界のマルチ制約命令に従うLLMの能力を評価するために設計された最初のベンチマークであるRealInstructを紹介する。
オープンソースモデルとプロプライエタリモデルのパフォーマンスギャップを解決するため,Decompose, Critique and Refine(DeCRIM)自己補正パイプラインを提案する。
この結果から,DeCRIMはフィードバックが弱い場合でも,RealInstructでは7.3%,IFEvalでは8.0%,Mistralでは7.3%向上した。
論文 参考訳(メタデータ) (2024-10-09T01:25:10Z) - Enhancing Fault Localization Through Ordered Code Analysis with LLM Agents and Self-Reflection [8.22737389683156]
大規模言語モデル(LLM)は、コード理解と推論を強化することによって、フォールトローカライゼーションの有望な改善を提供する。
LLM4FL は,SBFL ランキングと配当戦略を統合した新しい LLM4FL の故障局所化手法である。
以上の結果から,LLM4FLはTop-1の精度でAutoFLを19.27%上回り,DeepFLやGraceといった最先端の監視技術を上回っていることがわかった。
論文 参考訳(メタデータ) (2024-09-20T16:47:34Z) - Hybrid Automated Program Repair by Combining Large Language Models and Program Analysis [12.7034916462208]
自動プログラム修復(APR)は、人間の開発者のバグ修正プロセスを合理化する可能性から、大きな注目を集めている。
本稿ではGIANTREPAIRと呼ばれる革新的なAPR手法を紹介する。
この知見に基づいて、GIANTREPAIRはまず、LLM生成したパッチからパッチスケルトンを構築して、パッチ空間を閉じ込め、その後、特定のプログラムに適した高品質なパッチを生成する。
論文 参考訳(メタデータ) (2024-06-03T05:05:12Z) - Training LLMs to Better Self-Debug and Explain Code [36.604898865514365]
LLMの自己ソース能力を大幅に向上するトレーニングフレームワークを提案する。
コード説明と改良のための高品質なデータセットを収集する自動パイプラインを提案する。
我々は、新しい報酬設計で、成功と失敗の軌跡の両方について、教師付き微調整(SFT)およびさらに強化学習(RL)を行う。
論文 参考訳(メタデータ) (2024-05-28T23:20:24Z) - Multi-Objective Fine-Tuning for Enhanced Program Repair with LLMs [16.890411067079885]
大規模言語モデル(LLM)は、幅広い下流タスクにおいて顕著な機能を示した。
プログラム修復のためのLLMファインチューニングの学習焦点に関する新しい視点を提案する。
我々はMORepairを、サイズやアーキテクチャの異なる4つのオープンソースLCMの微調整に応用する。
論文 参考訳(メタデータ) (2024-04-19T05:36:21Z) - MiniCheck: Efficient Fact-Checking of LLMs on Grounding Documents [62.02920842630234]
GPT-4レベルの性能を持つが400倍の低コストでファクトチェックモデルを構築する方法を示す。
GPT-4を用いて合成トレーニングデータを構築することで,現実的かつ困難な事実エラーの事例を生成する。
評価のために, ファクトチェックとグラウンドグラウンド化に関する最近の研究から得られたデータセットを, 新たなベンチマーク LLM-AggreFact に統一する。
論文 参考訳(メタデータ) (2024-04-16T17:59:10Z) - A Novel Approach for Automatic Program Repair using Round-Trip
Translation with Large Language Models [50.86686630756207]
研究によると、ある文の文法的誤りは、それを他の言語に翻訳し、その語を返せば修正できる。
現在の自動プログラム修復(APR)生成モデルは、ソースコードで事前訓練され、修正のために微調整されている。
本稿では,あるプログラミング言語から別のプログラミング言語,あるいは自然言語へのコード変換,そして,その逆といった,微調整ステップをバイパスし,ラウンド・トリップ変換(RTT)を用いる手法を提案する。
論文 参考訳(メタデータ) (2024-01-15T22:36:31Z) - LLMRefine: Pinpointing and Refining Large Language Models via Fine-Grained Actionable Feedback [65.84061725174269]
最近の大規模言語モデル(LLM)は、世代品質を改善するために人間のフィードバックを活用している。
LLMの出力を最適化する推論時間最適化手法であるLLMRefineを提案する。
機械翻訳、長文質問応答(QA)、話題要約を含む3つのテキスト生成タスクについて実験を行った。
LLMRefineは、すべてのベースラインアプローチを一貫して上回り、翻訳タスクの1.7 MetricXポイント、ASQAの8.1 ROUGE-L、トピックの要約の2.2 ROUGE-Lの改善を実現している。
論文 参考訳(メタデータ) (2023-11-15T19:52:11Z) - Large Language Models for Test-Free Fault Localization [11.080712737595174]
テストカバレッジ情報なしでバグの行を特定できる言語モデルに基づくフォールトローカライズ手法を提案する。
5億5000万、60億、160億のパラメータを持つ言語モデルを、手作業でキュレートされた小さなプログラムコーパスで微調整します。
実験により、LLMAOは最先端の機械学習フォールトローカライゼーション(MLFL)ベースラインを2.3%-54.4%改善し、トップ5の結果を14.4%-35.6%改善した。
論文 参考訳(メタデータ) (2023-10-03T01:26:39Z) - LLM-Pruner: On the Structural Pruning of Large Language Models [65.02607075556742]
大規模言語モデル(LLM)は、言語理解と生成において顕著な能力を示している。
タスク非依存であり、元のトレーニングデータセットへの依存を最小限に抑えるという2つの制約の範囲内でLLMの圧縮に取り組む。
LLM-Prunerという名前のこの手法は、非臨界結合構造を選択的に除去する構造プルーニングを採用する。
論文 参考訳(メタデータ) (2023-05-19T12:10:53Z) - Self-Refine: Iterative Refinement with Self-Feedback [62.78755306241981]
Self-Refineは、反復的なフィードバックと改善を通じて、大きな言語モデル(LLM)からの初期出力を改善するアプローチである。
GPT-3.5, ChatGPT, および GPT-4) LLM を用いて, 対話応答生成から数学的推論に至るまで, 7 つのタスクにまたがる自己決定性を評価する。
我々の研究は、GPT-4のような最先端のLCMでさえ、単純でスタンドアロンなアプローチを使用してテスト時にさらに改善できることを示します。
論文 参考訳(メタデータ) (2023-03-30T18:30:01Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。