論文の概要: Exception-aware Lifecycle Model Construction for Framework APIs
- arxiv url: http://arxiv.org/abs/2401.02660v1
- Date: Fri, 5 Jan 2024 06:35:47 GMT
- ステータス: 処理完了
- システム内更新日: 2024-01-08 15:56:53.113310
- Title: Exception-aware Lifecycle Model Construction for Framework APIs
- Title(参考訳): フレームワークAPIのための例外対応ライフサイクルモデル構築
- Authors: Jiwei Yan, Jinhao Huang, Hengqin Yang, Jun Yan
- Abstract要約: 本稿では,フレームワークAPIコードから例外要約情報を抽出するために静的解析手法を採用する。
フレームワーク/ライブラリプロジェクトの例外対応APIライフサイクルモデルを生成する。
60バージョンにおける例外無意識のAPIライフサイクルモデリングと比較して、JavaExpは18%以上のAPI変更を識別できる。
- 参考スコア(独自算出の注目度): 4.333061751230906
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: The implementation of complex software systems usually depends on low-level
frameworks or third-party libraries. During their evolution, the APIs adding
and removing behaviors may cause unexpected compatibility problems. So,
precisely analyzing and constructing the framework/ library's API lifecycle
model is of great importance. Existing works have proposed the API
existence-changing model for defect detection, while not considering the
influence of semantic changes in APIs. In some cases, developers will not
remove or deprecate APIs but modify their semantics by adding, removing, or
modifying their exception-thrown code, which may bring potential defects to
upper-level code. Therefore, besides the API existence model, it is also
necessary for developers to be concerned with the exception-related code
evolution in APIs, which requires the construction of exception-aware API
lifecycle models for framework/library projects. To achieve automatic
exception-aware API lifecycle model construction, this paper adopts a static
analysis technique to extract exception summary information in the framework
API code and adopts a multi-step matching strategy to obtain the changing
process of exceptions. Then, it generates exception-aware API lifecycle models
for the given framework/library project. With this approach, the API lifecycle
extraction tool, JavaExP, is implemented, which is based on Java bytecode
analysis. Compared to the state-of-the-art tool, JavaExP achieves both a higher
F1 score (+60%) and efficiency (+7x), whose precision of exception matching and
changing results is 98%. Compared to the exception-unaware API lifecycle
modeling on 60 versions, JavaExp can identify 18% times more API changes. Among
the 75,433 APIs under analysis, 20% of APIs have changed their
exception-throwing behavior at least once after API introduction, which may
bring many hidden compatibility issues.
- Abstract(参考訳): 複雑なソフトウェアシステムの実装は通常、低レベルのフレームワークやサードパーティのライブラリに依存します。
それらの進化の間、apiの追加と削除は予期しない互換性の問題を引き起こす可能性がある。
したがって、フレームワーク/ライブラリのAPIライフサイクルモデルを正確に分析し、構築することが非常に重要です。
既存の研究は、欠陥検出のためのAPI存在変化モデルを提案しているが、APIのセマンティックな変更の影響は考慮していない。
場合によっては,apiの削除や廃止は行わないが,例外スローコードの追加や削除,あるいは変更によってセマンティクスを変更することで,上位レベルのコードに潜在的な欠陥が生じる可能性がある。
したがって、APIの存在モデルに加えて、開発者は、フレームワーク/ライブラリプロジェクトのための例外対応のAPIライフサイクルモデルを構築する必要があるAPIの例外関連コード進化に関心を持つ必要がある。
自動例外認識APIライフサイクルモデル構築を実現するため,フレームワークAPIコードから例外要約情報を抽出する静的解析手法を採用し,複数ステップマッチング戦略を採用し,例外の変更プロセスを取得する。
そして、フレームワーク/ライブラリプロジェクトの例外対応APIライフサイクルモデルを生成する。
このアプローチでは、Javaバイトコード分析に基づいたAPIライフサイクル抽出ツールであるJavaExPが実装されている。
最先端のツールと比較して、JavaExPはより高いF1スコア(+60%)と効率(+7x)を達成しており、例外マッチングと変更結果の精度は98%である。
60バージョンにおける例外無意識のAPIライフサイクルモデリングと比較して、JavaExpは18%以上のAPI変更を識別できる。
分析中の75,433のAPIの中で、20%のAPIが、少なくともAPI導入後に例外スロー動作を変更した。
関連論文リスト
- Automated Update of Android Deprecated API Usages with Large Language Models [8.507162624206956]
本稿では,大規模言語モデル(LLM)を用いてAndroid APIを更新する自動アプローチであるGUPPYを紹介する。
GUPPYは、非推奨のAPI使用率を更新し、旧APIレベルと新APIレベルの互換性を確保するために、最も強力なLCMの1つであるGPT-4を使用している。
最新のAPIレベル33,34から,20の非推奨APIから,さらに156の非推奨APIから,360度ベンチマークAPIを使用した評価を行った結果,GUPPYの最先端技術に対するメリットが示された。
論文 参考訳(メタデータ) (2024-11-07T03:01:50Z) - A Systematic Evaluation of Large Code Models in API Suggestion: When, Which, and How [53.65636914757381]
API提案は、現代のソフトウェア開発において重要なタスクである。
大規模コードモデル(LCM)の最近の進歩は、API提案タスクにおいて有望であることを示している。
論文 参考訳(メタデータ) (2024-09-20T03:12:35Z) - FANTAstic SEquences and Where to Find Them: Faithful and Efficient API Call Generation through State-tracked Constrained Decoding and Reranking [57.53742155914176]
APIコール生成は、大規模言語モデルのツール使用能力の基盤となっている。
既存の教師付きおよびコンテキスト内学習アプローチは、高いトレーニングコスト、低いデータ効率、APIドキュメントとユーザの要求に反する生成APIコールに悩まされる。
本稿では,これらの制約に対処するため,FANTASEと呼ばれる出力側最適化手法を提案する。
論文 参考訳(メタデータ) (2024-07-18T23:44:02Z) - WorldAPIs: The World Is Worth How Many APIs? A Thought Experiment [49.00213183302225]
本稿では, wikiHow 命令をエージェントの配置ポリシーに基礎付けることで, 新たな API を創出するフレームワークを提案する。
大規模言語モデル (LLM) の具体化計画における近年の成功に触発されて, GPT-4 のステアリングを目的とした数発のプロンプトを提案する。
論文 参考訳(メタデータ) (2024-07-10T15:52:44Z) - A Large-scale Investigation of Semantically Incompatible APIs behind Compatibility Issues in Android Apps [13.24503570840706]
Android Open Source Project(AOSP)において、互換性のないAPIを大規模に発見する。
非互換なAPI,特にセマンティックな変更を検出するための統合フレームワークを提案する。
提案手法は,バージョン4からバージョン33までの互換性のない5,481のAPIを検出する。
論文 参考訳(メタデータ) (2024-06-25T10:12:37Z) - A Solution-based LLM API-using Methodology for Academic Information Seeking [49.096714812902576]
SoAyは学術情報検索のためのソリューションベースのLLM API利用方法論である。
ソリューションが事前に構築されたAPI呼び出しシーケンスである場合、推論メソッドとしてソリューションを備えたコードを使用する。
その結果、最先端のLLM APIベースのベースラインと比較して34.58-75.99%のパフォーマンス改善が見られた。
論文 参考訳(メタデータ) (2024-05-24T02:44:14Z) - RESTRuler: Towards Automatically Identifying Violations of RESTful
Design Rules in Web APIs [3.4711214580685557]
静的解析を用いてオープンAPI記述における設計規則違反を検出する,JavaベースのオープンソースツールであるRESTRulerを紹介する。
堅牢性のため、RESTRulerは、使用済みの現実世界のOpenAPI定義の99%をうまく分析した。
パフォーマンス効率向上のために、このツールは大部分のファイルに対して良好に動作し、CPUとRAM使用率の低い23秒未満で84%の分析が可能になった。
論文 参考訳(メタデータ) (2024-02-21T11:25:22Z) - Continual Learning From a Stream of APIs [90.41825351073908]
継続学習(CL)は、以前のタスクを忘れずに新しいタスクを学習することを目的としている。
既存のCLメソッドは大量の生データを必要とするが、著作権上の考慮とプライバシー上のリスクのために利用できないことが多い。
本稿では,データ効率CL (DECL-APIs) とデータフリーCL (DFCL-APIs) の2つの実践的yet-novel CL設定について考察する。
論文 参考訳(メタデータ) (2023-08-31T11:16:00Z) - Private-Library-Oriented Code Generation with Large Language Models [52.73999698194344]
本稿では,大規模言語モデル(LLM)をプライベートライブラリのコード生成に活用することに焦点を当てる。
プログラマがプライベートコードを書く過程をエミュレートする新しいフレームワークを提案する。
TorchDataEval、TorchDataComplexEval、MonkeyEval、BeatNumEvalの4つのプライベートライブラリベンチマークを作成しました。
論文 参考訳(メタデータ) (2023-07-28T07:43:13Z) - HAPI: A Large-scale Longitudinal Dataset of Commercial ML API
Predictions [35.48276161473216]
商用ML APIアプリケーションの1,761,417インスタンスの時系列データセットであるHAPIを提示する。
各インスタンスは、APIに対するクエリ入力と、APIの出力予測/アノテーションと信頼性スコアで構成されている。
論文 参考訳(メタデータ) (2022-09-18T01:52:16Z) - API2Com: On the Improvement of Automatically Generated Code Comments
Using API Documentations [0.0]
コメント生成の知識リソースとしてAPI Docs(Application Programming Interface Documentations)を利用するモデルであるAPI2Comを提案する。
このモデルを130,000以上のメソッドからなる大規模なJavaデータセットに適用し,TransformerとRNNベースのアーキテクチャを用いて評価する。
論文 参考訳(メタデータ) (2021-03-19T07:29:40Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。