論文の概要: PATCH: Empowering Large Language Model with Programmer-Intent Guidance and Collaborative-Behavior Simulation for Automatic Bug Fixing
- arxiv url: http://arxiv.org/abs/2501.16149v1
- Date: Mon, 27 Jan 2025 15:43:04 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-01-28 13:58:25.535860
- Title: PATCH: Empowering Large Language Model with Programmer-Intent Guidance and Collaborative-Behavior Simulation for Automatic Bug Fixing
- Title(参考訳): PATCH: 自動バグ修正のためのプログラマインテントガイダンスと協調行動シミュレーションによる大規模言語モデルの構築
- Authors: Yuwei Zhang, Zhi Jin, Ying Xing, Ge Li, Fang Liu, Jiaxin Zhu, Wensheng Dou, Jun Wei,
- Abstract要約: バグ修正は、ソフトウェア開発とメンテナンスにおいて重要な意味を持つ。
最近の研究は、ソフトウェアバグを自動的に解決する大規模言語モデル(LLM)の可能性を探ることに大きく貢献している。
- 参考スコア(独自算出の注目度): 34.768989900184636
- License:
- Abstract: Bug fixing holds significant importance in software development and maintenance. Recent research has made substantial strides in exploring the potential of large language models (LLMs) for automatically resolving software bugs. However, a noticeable gap in existing approaches lies in the oversight of collaborative facets intrinsic to bug resolution, treating the process as a single-stage endeavor. Moreover, most approaches solely take the buggy code snippet as input for LLMs during the patch generation stage. To mitigate the aforementioned limitations, we introduce a novel stage-wise framework named PATCH. Specifically, we first augment the buggy code snippet with corresponding dependence context and intent information to better guide LLMs in generating the correct candidate patches. Additionally, by taking inspiration from bug management practices, we decompose the bug-fixing task into four distinct stages: bug reporting, bug diagnosis, patch generation, and patch verification. These stages are performed interactively by LLMs, aiming to simulate the collaborative behavior of programmers during the resolution of software bugs. By harnessing these collective contributions, PATCH effectively enhances the bug-fixing capability of LLMs. We implement PATCH by employing the powerful dialogue-based LLM ChatGPT. Our evaluation on the widely used bug-fixing benchmark BFP demonstrates that PATCH has achieved better performance than state-of-the-art LLMs.
- Abstract(参考訳): バグ修正は、ソフトウェア開発とメンテナンスにおいて重要な意味を持つ。
最近の研究は、ソフトウェアバグを自動的に解決する大規模言語モデル(LLM)の可能性を探ることに大きく貢献している。
しかし、既存のアプローチにおける顕著なギャップは、バグ解決に固有の協調的なファセットの監視にある。
さらに、ほとんどのアプローチでは、パッチ生成段階では、バグの多いコードスニペットを LLM の入力としてのみ取ります。
上記の制限を緩和するために、PATCHという新しいステージワイドフレームワークを導入する。
具体的には、まず、バグだらけのコードスニペットを対応する依存コンテキストとインテント情報で拡張し、正しい候補パッチを生成する際のLCMをより良くガイドする。
さらに、バグ管理のプラクティスからインスピレーションを得て、バグ修正タスクを、バグ報告、バグ診断、パッチ生成、パッチ検証の4つのステージに分割します。
これらのステージはLLMによってインタラクティブに実行され、ソフトウェアバグの解決時にプログラマの協調動作をシミュレートすることを目的としている。
これらのコントリビューションを活用することで、PATCHはLLMのバグ修正能力を効果的に強化する。
我々は強力な対話型LLM ChatGPTを用いてPATCHを実装した。
広く使われているバグフィックスベンチマークBFPによる評価は、PATCHが最先端のLLMよりも優れた性能を示したことを示している。
関連論文リスト
- MarsCode Agent: AI-native Automated Bug Fixing [7.909344108948294]
MarsCode Agentは、大規模な言語モデルを利用して、ソフトウェアコードのバグを自動的に識別し、修復する新しいフレームワークである。
提案手法は, 計画, バグ再現, 障害局所化, パッチの候補生成, バリデーションといった, 高品質なバグ修正を確実にするための体系的なプロセスに従う。
以上の結果から,MarsCode Agentは既存の自動化アプローチと比較して,バグ修正において高い成功率を達成していることがわかった。
論文 参考訳(メタデータ) (2024-09-02T02:24:38Z) - Revisiting Evolutionary Program Repair via Code Language Model [11.711739409758476]
本稿では,多目的進化アルゴリズムをCLMと統合し,Javaプロジェクトのマルチロケーションバグを修正するARJA-CLMを提案する。
また,提案手法は,CLMが候補文を生成するための,アクセス可能なフィールドとメソッドに関する追加情報により,プロンプトを充実させる。
論文 参考訳(メタデータ) (2024-08-20T01:57:45Z) - What's Wrong with Your Code Generated by Large Language Models? An Extensive Study [80.18342600996601]
大規模言語モデル(LLM)は、標準解に比べて短いがより複雑なコードを生成する。
3つのカテゴリと12のサブカテゴリを含む誤ったコードに対するバグの分類を開発し、一般的なバグタイプに対する根本原因を分析する。
そこで本研究では,LLMがバグタイプやコンパイラフィードバックに基づいて生成したコードを批判し,修正することのできる,自己批判を導入した新たな学習自由反復手法を提案する。
論文 参考訳(メタデータ) (2024-07-08T17:27:17Z) - A Deep Dive into Large Language Models for Automated Bug Localization and Repair [12.756202755547024]
大規模言語モデル(LLM)は、自動プログラム修復(APR)など、様々なソフトウェアエンジニアリングタスクにおいて顕著な効果を示している。
本研究では,LSMを用いた自動バグ修正について深く検討する。
異なるLLMを用いてバグの局所化と修正を分離することにより、多様なコンテキスト情報の効果的な統合が可能になる。
Toggleは、CodeXGLUEコード改善ベンチマークで、新しい最先端(SOTA)パフォーマンスを実現する。
論文 参考訳(メタデータ) (2024-04-17T17:48:18Z) - Leveraging Print Debugging to Improve Code Generation in Large Language
Models [63.63160583432348]
大規模言語モデル(LLM)はコード生成タスクにおいて大きな進歩を遂げた。
しかし、複雑なデータ構造やアルゴリズムによるプログラミング問題に対処する彼らのパフォーマンスは、依然として準最適である。
そこで本稿では,LLM のデバッグを "print debugging" 手法でガイドする,コンテキスト内学習手法を提案する。
論文 参考訳(メタデータ) (2024-01-10T18:37:59Z) - DebugBench: Evaluating Debugging Capability of Large Language Models [80.73121177868357]
DebugBench - LLM(Large Language Models)のベンチマーク。
C++、Java、Pythonの4つの主要なバグカテゴリと18のマイナータイプをカバーする。
ゼロショットシナリオで2つの商用および4つのオープンソースモデルを評価する。
論文 参考訳(メタデータ) (2024-01-09T15:46:38Z) - STEAM: Simulating the InTeractive BEhavior of ProgrAMmers for Automatic
Bug Fixing [37.70518599085676]
我々は、バグ解決の協調性をシミュレートするSTEAMという新しいステージワイドフレームワークを紹介した。
バグ修正タスクを,バグ報告,バグ診断,パッチ生成,パッチ検証の4つのステージに分割する。
広く採用されているバグフィックスベンチマークによる評価は、STEAMが最新のバグフィックス性能を新たに達成したことを示している。
論文 参考訳(メタデータ) (2023-08-28T09:56:12Z) - Using Developer Discussions to Guide Fixing Bugs in Software [51.00904399653609]
我々は,タスク実行前に利用可能であり,また自然発生しているバグレポートの議論を,開発者による追加情報の必要性を回避して利用することを提案する。
このような議論から派生したさまざまな自然言語コンテキストがバグ修正に役立ち、オラクルのバグ修正コミットに対応するコミットメッセージの使用よりもパフォーマンスの向上につながることを実証する。
論文 参考訳(メタデータ) (2022-11-11T16:37:33Z) - ADPTriage: Approximate Dynamic Programming for Bug Triage [0.0]
オンラインバグトリアージタスクのためのマルコフ決定プロセス(MDP)モデルを開発した。
私たちはADPTriageと呼ばれるADPベースのバグトリアージソリューションを提供しています。
以上の結果から, 代入精度と固定時間の観点から, ミオピックアプローチよりも有意な改善が見られた。
論文 参考訳(メタデータ) (2022-11-02T04:42:21Z) - BigIssue: A Realistic Bug Localization Benchmark [89.8240118116093]
BigIssueは、現実的なバグローカライゼーションのためのベンチマークである。
実際のJavaバグと合成Javaバグの多様性を備えた一般的なベンチマークを提供する。
われわれは,バグローカライゼーションの最先端技術として,APRの性能向上と,現代の開発サイクルへの適用性の向上を期待している。
論文 参考訳(メタデータ) (2022-07-21T20:17:53Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。