論文の概要: Byam: Fixing Breaking Dependency Updates with Large Language Models
- arxiv url: http://arxiv.org/abs/2505.07522v1
- Date: Mon, 12 May 2025 13:03:26 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-05-13 20:21:49.383238
- Title: Byam: Fixing Breaking Dependency Updates with Large Language Models
- Title(参考訳): Byam氏: 大きな言語モデルで依存関係の更新を壊す
- Authors: Frank Reyes, May Mahmoud, Federico Bono, Sarah Nadi, Benoit Baudry, Martin Monperrus,
- Abstract要約: 廃止、パラメータ名や型の変更、新しいAPIへの完全な置き換えといったAPIの変更は、既存のクライアントコードを壊す可能性がある。
APIユーザがこれらのブレークの原因を特定して、それに従ってコードを更新するのは、しばしば面倒です。
依存関係の更新の破壊に対応するため、クライアントコードの更新を自動化するために、LLM(Large Language Models)の使用について検討する。
- 参考スコア(独自算出の注目度): 10.046351253249025
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Application Programming Interfaces (APIs) facilitate the integration of third-party dependencies within the code of client applications. However, changes to an API, such as deprecation, modification of parameter names or types, or complete replacement with a new API, can break existing client code. These changes are called breaking dependency updates; It is often tedious for API users to identify the cause of these breaks and update their code accordingly. In this paper, we explore the use of Large Language Models (LLMs) to automate client code updates in response to breaking dependency updates. We evaluate our approach on the BUMP dataset, a benchmark for breaking dependency updates in Java projects. Our approach leverages LLMs with advanced prompts, including information from the build process and from the breaking dependency analysis. We assess effectiveness at three granularity levels: at the build level, the file level, and the individual compilation error level. We experiment with five LLMs: Google Gemini-2.0 Flash, OpenAI GPT4o-mini, OpenAI o3-mini, Alibaba Qwen2.5-32b-instruct, and DeepSeek V3. Our results show that LLMs can automatically repair breaking updates. Among the considered models, OpenAI's o3-mini is the best, able to completely fix 27% of the builds when using prompts that include contextual information such as the buggy line, API differences, error messages, and step-by-step reasoning instructions. Also, it fixes 78% of the individual compilation errors. Overall, our findings demonstrate the potential for LLMs to fix compilation errors due to breaking dependency updates, supporting developers in their efforts to stay up-to-date with changes in their dependencies.
- Abstract(参考訳): アプリケーションプログラミングインタフェース(API)は、クライアントアプリケーションのコードにサードパーティの依存関係を統合するのに役立つ。
しかし、非推奨やパラメータ名や型の変更、新しいAPIへの完全な置き換えといったAPIの変更は、既存のクライアントコードを壊す可能性がある。
これらの変更は依存性の更新をブレークスルー(breaking)と呼ぶ。APIユーザがこれらのブレークスルーの原因を特定して、それに従ってコードを更新するのは面倒であることが多い。
本稿では,大規模言語モデル(LLM)を用いたクライアントコード更新の自動化について検討する。
Javaプロジェクトの依存関係更新を壊すベンチマークであるBUMPデータセットに対する我々のアプローチを評価します。
当社のアプローチでは,ビルドプロセスからの情報や依存性分析の破壊など,高度なプロンプトでLLMを活用しています。
ビルドレベル,ファイルレベル,個々のコンパイルエラーレベルという,3つの粒度レベルで有効性を評価する。
Google Gemini-2.0 Flash、OpenAI GPT4o-mini、OpenAI o3-mini、Alibaba Qwen2.5-32b-instruct、DeepSeek V3。
以上の結果から,LDMが自動的に更新を修復できることが示唆された。
検討されたモデルの中では、OpenAIのo3-miniが最も優れており、バグライン、APIの違い、エラーメッセージ、ステップバイステップの推論命令といったコンテキスト情報を含むプロンプトを使用する場合、ビルドの27%を完全に修正することができる。
また、個々のコンパイルエラーの78%を修正している。
全体として、私たちの調査結果は、LLMが依存関係の更新を壊すことによるコンパイルエラーを修正する可能性を示し、依存関係の変更を最新に保つために開発者を支援します。
関連論文リスト
- Identifying and Mitigating API Misuse in Large Language Models [26.4403427473915]
大規模言語モデル(LLM)が生成するコードのAPI誤用は、ソフトウェア開発において深刻な課題となっている。
本稿では LLM 生成コードにおける API の誤用パターンについて,Python および Java 間でのメソッド選択とパラメータ使用法の両方を解析し,総合的研究を行った。
上記の分類に基づくAPI誤用に対する新しいLCMベースの自動プログラム修復手法であるDr.Fixを提案する。
論文 参考訳(メタデータ) (2025-03-28T18:43:12Z) - Raiders of the Lost Dependency: Fixing Dependency Conflicts in Python using LLMs [10.559292676550319]
Python開発者は、サードパーティモジュールとPythonインタプリタの環境依存性とバージョン制約を手動で識別し、解決する必要がある。
従来のアプローチでは、さまざまな依存性エラータイプ、可能なモジュールバージョンの大規模なセット、コンフリクトによる制限に直面していました。
本研究では,Pythonプログラムの依存性問題を自動的に修正するために,大規模言語モデル(LLM)を使用する可能性について検討する。
論文 参考訳(メタデータ) (2025-01-27T16:45:34Z) - SWE-Fixer: Training Open-Source LLMs for Effective and Efficient GitHub Issue Resolution [56.9361004704428]
大規模言語モデル(LLM)は、様々な複雑なタスクにまたがる顕著な習熟度を示している。
SWE-Fixerは、GitHubの問題を効果的かつ効率的に解決するために設計された、新しいオープンソースフレームワークである。
我々は,SWE-Bench LiteとVerifiedベンチマークに対するアプローチを評価し,オープンソースモデル間の競合性能を実現する。
論文 参考訳(メタデータ) (2025-01-09T07:54:24Z) - ExploraCoder: Advancing code generation for multiple unseen APIs via planning and chained exploration [70.26807758443675]
ExploraCoderはトレーニング不要のフレームワークで、大規模な言語モデルにコードソリューションで見えないAPIを呼び出す権限を与える。
ExploraCoderは,事前のAPI知識を欠いたモデルのパフォーマンスを著しく向上させ,NAGアプローチの11.24%,pass@10の事前トレーニングメソッドの14.07%を絶対的に向上させることを示す。
論文 参考訳(メタデータ) (2024-12-06T19:00:15Z) - CodeUpdateArena: Benchmarking Knowledge Editing on API Updates [77.81663273436375]
コードドメインの知識編集のためのベンチマークであるCodeUpdateArenaを提示する。
私たちのベンチマークのインスタンスは、プログラム合成例と組み合わせた合成API関数のアップデートで構成されています。
ベンチマークでは、7つのPythonパッケージから54の関数へ、さまざまなタイプの更新をカバーしています。
論文 参考訳(メタデータ) (2024-07-08T17:55:04Z) - Breaking-Good: Explaining Breaking Dependency Updates with Build Analysis [11.367562045401554]
依存関係の更新は、新しい依存関係バージョンが既存のクライアントコードと互換性のない変更を導入したときに、コンパイルエラーを引き起こすことが多い。
Breaking-Goodは、更新を壊すための説明を自動的に生成するツールです。
論文 参考訳(メタデータ) (2024-07-04T12:20:26Z) - VP-LLM: Text-Driven 3D Volume Completion with Large Language Models through Patchification [56.211321810408194]
大規模言語モデル(LLM)はマルチモーダル理解および生成タスクにおいて大きな可能性を示している。
本稿では,LLMを利用して条件付き3D補完を行うVolume Patch LLM(VP-LLM)を提案する。
以上の結果から,LLMが複雑なテキスト命令を解釈し,3Dオブジェクトを理解する能力は,最先端の拡散に基づく3Dコンプリートモデルに勝るものであることが示唆された。
論文 参考訳(メタデータ) (2024-06-08T18:17:09Z) - BUMP: A Benchmark of Reproducible Breaking Dependency Updates [10.405775369526006]
サードパーティの依存性更新は、新しい依存性バージョンが使用法と互換性のない変更を導入した場合、ビルドが失敗する可能性がある。
依存性の更新を壊す研究は活発に行われており、特徴付け、理解、更新を壊す自動修復、その他のソフトウェア工学的な側面が研究されている。
1) 現実世界のブレークスルー更新を含む; 2) ブレークスルー更新は実行可能である; 3) ベンチマークは、時間とともにブレークスルー更新の安定した科学的アーティファクトを提供する。
論文 参考訳(メタデータ) (2024-01-18T11:41:33Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。