論文の概要: Refactoring with LLMs: Bridging Human Expertise and Machine Understanding
- arxiv url: http://arxiv.org/abs/2510.03914v1
- Date: Sat, 04 Oct 2025 19:40:42 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-10-07 16:52:59.340387
- Title: Refactoring with LLMs: Bridging Human Expertise and Machine Understanding
- Title(参考訳): LLMによるリファクタリング: 人間の専門知識のブリッジとマシン理解
- Authors: Yonnel Chen Kuang Piao, Jean Carlors Paul, Leuson Da Silva, Arghavan Moradi Dakhel, Mohammad Hamdaqa, Foutse Khomh,
- Abstract要約: 我々はMartin Fowler氏のガイドラインに基づいて、61のよく知られた変換型の命令戦略を設計する。
これらの戦略は、GitHubプロジェクトのベンチマーク例と実世界のコードスニペットに基づいて評価する。
記述的命令は人間にとってより解釈しやすいが,本研究の結果から,ルールに基づく命令が特定のシナリオにおいてより優れたパフォーマンスをもたらすことがしばしば示されている。
- 参考スコア(独自算出の注目度): 5.2993089947181735
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Code refactoring is a fundamental software engineering practice aimed at improving code quality and maintainability. Despite its importance, developers often neglect refactoring due to the significant time, effort, and resources it requires, as well as the lack of immediate functional rewards. Although several automated refactoring tools have been proposed, they remain limited in supporting a broad spectrum of refactoring types. In this study, we explore whether instruction strategies inspired by human best-practice guidelines can enhance the ability of Large Language Models (LLMs) to perform diverse refactoring tasks automatically. Leveraging the instruction-following and code comprehension capabilities of state-of-the-art LLMs (e.g., GPT-mini and DeepSeek-V3), we draw on Martin Fowler's refactoring guidelines to design multiple instruction strategies that encode motivations, procedural steps, and transformation objectives for 61 well-known refactoring types. We evaluate these strategies on benchmark examples and real-world code snippets from GitHub projects. Our results show that instruction designs grounded in Fowler's guidelines enable LLMs to successfully perform all benchmark refactoring types and preserve program semantics in real-world settings, an essential criterion for effective refactoring. Moreover, while descriptive instructions are more interpretable to humans, our results show that rule-based instructions often lead to better performance in specific scenarios. Interestingly, allowing models to focus on the overall goal of refactoring, rather than prescribing a fixed transformation type, can yield even greater improvements in code quality.
- Abstract(参考訳): コードリファクタリングは、コード品質と保守性を改善することを目的とした、基本的なソフトウェアエンジニアリングプラクティスです。
その重要性にもかかわらず、開発者は、必要な時間、労力、リソースに加えて、すぐに機能する報酬がないため、リファクタリングを無視することが多い。
いくつかの自動リファクタリングツールが提案されているが、幅広いリファクタリングタイプをサポートすることに制限されている。
本研究では,人間のベストプラクティスガイドラインにインスパイアされた指導戦略が,大規模言語モデル(LLM)の多様なリファクタリングタスクを自動実行する能力を高めることができるかどうかを考察する。
我々は、最先端のLLM(例えば、GPT-miniとDeepSeek-V3)の命令追従とコード理解機能を活用し、Martin Fowler氏のリファクタリングガイドラインを利用して、モチベーション、手続きステップ、61のよく知られたリファクタリングタイプの変換目標をエンコードする複数の命令戦略を設計する。
これらの戦略は、GitHubプロジェクトのベンチマーク例と実世界のコードスニペットに基づいて評価する。
この結果から,Fowlerのガイドラインに根ざした命令設計により,LLMがすべてのベンチマークリファクタリングタイプを正常に実行し,プログラムセマンティクスを実環境で保持することが可能であることが示唆された。
さらに、記述的命令は人間により解釈可能であるが、ルールに基づく命令は特定のシナリオにおいてより良いパフォーマンスをもたらすことが多いことを示す。
興味深いことに、モデルが固定された変換タイプを規定するのではなく、リファクタリングの全体的な目標に集中できるようにすることで、コード品質がさらに向上する可能性がある。
関連論文リスト
- Teaching Code Refactoring Using LLMs [0.7407754140732635]
大規模言語モデル(LLM)は、リアルタイムでコンテキスト対応のフィードバックを通じて、ソフトウェアエンジニアリングコースにおけるコードの教育を強化することができる。
リファクタリングはコード品質を改善するが、特に複雑な現実世界では教えることが難しい。
論文 参考訳(メタデータ) (2025-08-12T20:41:19Z) - MANTRA: Enhancing Automated Method-Level Refactoring with Contextual RAG and Multi-Agent LLM Collaboration [44.75848695076576]
本稿では,包括的Large Language ModelsエージェントベースのフレームワークであるMANTRAを紹介する。
ManTRAは、コンテキスト対応検索強化生成、協調型マルチエージェントコラボレーション、および言語強化学習を統合している。
MANTRA はベースライン LLM モデルを大幅に上回ることを示す実験結果が得られた。
論文 参考訳(メタデータ) (2025-03-18T15:16:51Z) - Automated Refactoring of Non-Idiomatic Python Code: A Differentiated Replication with LLMs [54.309127753635366]
本研究は, GPT-4の有効性について検討し, 慣用行動の推奨と示唆について検討した。
この結果から,従来は複雑なコード解析に基づくレコメンデータの実装が求められていた,LCMの課題達成の可能性が浮き彫りになった。
論文 参考訳(メタデータ) (2025-01-28T15:41:54Z) - In Search of Metrics to Guide Developer-Based Refactoring Recommendations [13.063733696956678]
モチベーションは、外部の振る舞いを損なうことなく、ソースコードの品質を改善するための確立されたアプローチである。
本研究では,開発者の運用意欲を調査する指標に関する実証的研究を提案する。
実行すべき開発者のモチベーションを把握する上で、製品とプロセスのメトリクスの価値を定量化します。
論文 参考訳(メタデータ) (2024-07-25T16:32:35Z) - 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) - ReGAL: Refactoring Programs to Discover Generalizable Abstractions [59.05769810380928]
Generalizable Abstraction Learning (ReGAL)は、再利用可能な関数のライブラリをコード化して学習する手法である。
ReGALによって発見された共有関数ライブラリは、プログラムが様々な領域で容易に予測できることを示している。
CodeLlama-13Bでは、ReGALはLOGOで11.5%、日付理解で26.1%、TextCraftで8.1%という絶対精度が向上し、3つのドメインのうち2つでGPT-3.5を上回った。
論文 参考訳(メタデータ) (2024-01-29T18:45:30Z) - Do code refactorings influence the merge effort? [80.1936417993664]
複数のコントリビュータがソースコードを並行して変更して,新機能の実装やバグの修正,既存のコードの変更などを行っている。
これらの同時変更は、ソースコードの同じバージョンにマージする必要がある。
研究によると、すべてのマージの試みの10~20%が衝突を起こしており、これはプロセスを完了するために手動開発者の介入を必要とする。
論文 参考訳(メタデータ) (2023-05-10T13:24:59Z) - How We Refactor and How We Document it? On the Use of Supervised Machine
Learning Algorithms to Classify Refactoring Documentation [25.626914797750487]
リファクタリングは、外部の振る舞いを変えることなく、システムの設計を改善する技術である。
この研究はコミットを、従来のBugFixやFunctionalのカテゴリとともに、内部QA、外部QA、Code Smell Resolutionの3つのカテゴリに分類する。
分類結果をよりよく理解するために、私たちはコミットメッセージを分析して、開発者が定期的に臭いを説明するために使用するパターンを抽出しました。
論文 参考訳(メタデータ) (2020-10-26T20:33:17Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。