論文の概要: Lightweight Syntactic API Usage Analysis with UCov
- arxiv url: http://arxiv.org/abs/2402.12024v1
- Date: Mon, 19 Feb 2024 10:33:41 GMT
- ステータス: 処理完了
- システム内更新日: 2024-02-20 17:02:32.618933
- Title: Lightweight Syntactic API Usage Analysis with UCov
- Title(参考訳): UCovによる軽量シンタクティックAPI利用分析
- Authors: Gustave Monce (LaBRI), Thomas Couturou (LaBRI), Yasmine Hamdaoui
(LaBRI), Thomas Degueule (LaBRI), Jean-R\'emy Falleri (LaBRI, IUF)
- Abstract要約: 本稿では,ライブラリメンテナのAPIによるインタラクション理解を支援するための,新しい概念フレームワークを提案する。
これらのカスタマイズ可能なモデルにより、ライブラリメンテナはリリース前に設計を改善することができ、進化中の摩擦を減らすことができる。
我々は,これらのモデルを新しいツールUCovに実装し,多様なインタラクションスタイルを示す3つのライブラリ上でその能力を実証する。
- 参考スコア(独自算出の注目度): 0.0
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Designing an effective API is essential for library developers as it is the
lens through which clients will judge its usability and benefits, as well as
the main friction point when the library evolves. Despite its importance,
defining the boundaries of an API is a challenging task, mainly due to the
diverse mechanisms provided by programming languages that have non-trivial
interplays. In this paper, we present a novel conceptual framework designed to
assist library maintainers in understanding the interactions allowed by their
APIs via the use of syntactic usage models. These customizable models enable
library maintainers to improve their design ahead of release, reducing friction
during evolution. The complementary syntactic usage footprints and coverage
scores, inferred from client code using the API (e.g., documentation samples,
tests, third-party clients), enable developers to understand in-the-wild uses
of their APIs and to reflect on the adequacy of their tests and documentation.
We implement these models for Java libraries in a new tool UCov and demonstrate
its capabilities on three libraries exhibiting diverse styles of interaction:
jsoup, commons-cli, and spark. Our exploratory case study shows that UCov
provides valuable information regarding API design and fine-grained analysis of
client code to identify under-tested and under-documented library code.
- Abstract(参考訳): 効果的なAPIの設計はライブラリ開発者にとって必須であり、クライアントがそのユーザビリティとメリットを判断するレンズであり、ライブラリが進化する際の主要な摩擦点でもある。
その重要性にもかかわらず、apiの境界を定義することは難しい作業であり、主に、非自明なインタープレイを持つプログラミング言語によって提供される多様なメカニズムのためである。
本稿では,ライブラリメンテナがapiで許可されるインタラクションを理解するのを支援するために,構文的利用モデルを用いた新しい概念的フレームワークを提案する。
これらのカスタマイズ可能なモデルにより、ライブラリメンテナはリリース前に設計を改善することができる。
補完的な構文的使用フットプリントとカバレッジスコアは、APIを使用したクライアントコード(例:ドキュメンテーションサンプル、テスト、サードパーティクライアント)から推測されるもので、開発者はAPIの内部使用を理解し、テストとドキュメンテーションの妥当性を反映することができる。
新しいツールUCovでこれらのモデルをJavaライブラリに実装し、jsoup、commons-cli、Sparkという3つのインタラクションスタイルを示す3つのライブラリでその能力をデモします。
調査ケーススタディでは、UCovはAPI設計やクライアントコードのきめ細かい分析に関する貴重な情報を提供し、未試験および未文書のライブラリコードを識別する。
関連論文リスト
- Demystifying Application Programming Interfaces (APIs): Unlocking the Power of Large Language Models and Other Web-based AI Services in Social Work Research [0.0]
アプリケーションプログラミングインタフェース(API)は、大規模言語モデル(LLM)やその他のAIサービスといった高度な技術を活用することを目的とした、ソーシャルワーク研究者にとって不可欠なツールである。
本稿では、APIをデミステレーションし、研究方法論をいかに拡張できるかを説明する。
実際のコード例は、構造化されていないテキストからデータを抽出するなど、LLMが特別なサービスにアクセスするためのAPIコードを生成する方法を示している。
論文 参考訳(メタデータ) (2024-10-26T16:07:12Z) - 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) - Semantic API Alignment: Linking High-level User Goals to APIs [6.494714497852088]
既存のライブラリを使った要件エンジニアリングから実装まで,複数のステップにまたがるビジョンを提示する。
このアプローチは、セマンティックAPIアライメント(SEAL)と呼ばれ、ユーザの高レベルな目標と1つ以上のAPIの特定の機能とのギャップを埋めることを目的としています。
論文 参考訳(メタデータ) (2024-05-07T11:54:32Z) - LILO: Learning Interpretable Libraries by Compressing and Documenting Code [71.55208585024198]
LILOは、反復的に合成、圧縮、文書化を行う、ニューロシンボリックなフレームワークである。
LILOは、LLM誘導プログラム合成と、Stitchから自動化された最近のアルゴリズムの進歩を組み合わせたものである。
LILOのシンセサイザーが学習した抽象化を解釈し、デプロイするのを手助けすることで、AutoDocがパフォーマンスを向上させることが分かりました。
論文 参考訳(メタデータ) (2023-10-30T17:55:02Z) - Enhancing API Documentation through BERTopic Modeling and Summarization [0.0]
本稿では、アプリケーションプログラミングインタフェース(API)ドキュメントの解釈の複雑さに焦点を当てる。
公式APIドキュメンテーションは、開発者にとって最も重要な情報ソースであるが、広くなり、ユーザフレンドリ性に欠けることが多い。
我々の新しいアプローチは、トピックモデリングと自然言語処理(NLP)にBERTopicの長所を利用して、APIドキュメントの要約を自動的に生成する。
論文 参考訳(メタデータ) (2023-08-17T15:57:12Z) - Private-Library-Oriented Code Generation with Large Language Models [52.73999698194344]
本稿では,大規模言語モデル(LLM)をプライベートライブラリのコード生成に活用することに焦点を当てる。
プログラマがプライベートコードを書く過程をエミュレートする新しいフレームワークを提案する。
TorchDataEval、TorchDataComplexEval、MonkeyEval、BeatNumEvalの4つのプライベートライブラリベンチマークを作成しました。
論文 参考訳(メタデータ) (2023-07-28T07:43:13Z) - SequeL: A Continual Learning Library in PyTorch and JAX [50.33956216274694]
SequeLは継続学習のためのライブラリで、PyTorchとJAXフレームワークの両方をサポートする。
それは、正規化ベースのアプローチ、リプレイベースのアプローチ、ハイブリッドアプローチを含む、幅広い連続学習アルゴリズムのための統一インターフェースを提供する。
私たちはSequeLをオープンソースライブラリとしてリリースし、研究者や開発者が自身の目的で簡単にライブラリを実験し拡張することができます。
論文 参考訳(メタデータ) (2023-04-21T10:00:22Z) - Neural Transition-based Parsing of Library Deprecations [3.6382354548339295]
本稿では,オープンソースライブラリの非推奨API使用量を修正するためのコード更新の自動化に,そのリリースノートを分析して取り組む。
まず、WebクローラサービスがWebから非推奨のドキュメントを検索し、その後、特別に構築されたテキストがそれらのドキュメントを木構造表現に処理します。
提案手法の有効性を確認するため,7つの有名なPythonデータサイエンスライブラリから426のAPI非推奨を収集,ラベル付けし,そのアプローチが非自明なニューラルネットワーク翻訳ベースラインを決定的に上回ることを示した。
論文 参考訳(メタデータ) (2022-12-23T20:48:33Z) - LAVIS: A Library for Language-Vision Intelligence [98.88477610704938]
LAVISは、LAnguage-VISionの研究と応用のためのオープンソースライブラリである。
最先端の画像言語、ビデオ言語モデル、一般的なデータセットに容易にアクセスできる統一インターフェースを備えている。
論文 参考訳(メタデータ) (2022-09-15T18:04:10Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。