論文の概要: A Systematic Evaluation of Large Code Models in API Suggestion: When, Which, and How
- arxiv url: http://arxiv.org/abs/2409.13178v1
- Date: Fri, 20 Sep 2024 03:12:35 GMT
- ステータス: 処理完了
- システム内更新日: 2024-11-07 11:29:51.854402
- Title: A Systematic Evaluation of Large Code Models in API Suggestion: When, Which, and How
- Title(参考訳): API提案における大規模コードモデルの体系的評価:いつ,いつ,どのように
- Authors: Chaozheng Wang, Shuzheng Gao, Cuiyun Gao, Wenxuan Wang, Chun Yong Chong, Shan Gao, Michael R. Lyu,
- Abstract要約: API提案は、現代のソフトウェア開発において重要なタスクである。
大規模コードモデル(LCM)の最近の進歩は、API提案タスクにおいて有望であることを示している。
- 参考スコア(独自算出の注目度): 53.65636914757381
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: API suggestion is a critical task in modern software development, assisting programmers by predicting and recommending third-party APIs based on the current context. Recent advancements in large code models (LCMs) have shown promise in the API suggestion task. However, they mainly focus on suggesting which APIs to use, ignoring that programmers may demand more assistance while using APIs in practice including when to use the suggested APIs and how to use the APIs. To mitigate the gap, we conduct a systematic evaluation of LCMs for the API suggestion task in the paper. To facilitate our investigation, we first build a benchmark that contains a diverse collection of code snippets, covering 176 APIs used in 853 popular Java projects. Three distinct scenarios in the API suggestion task are then considered for evaluation, including (1) ``\textit{when to use}'', which aims at determining the desired position and timing for API usage; (2) ``\textit{which to use}'', which aims at identifying the appropriate API from a given library; and (3) ``\textit{how to use}'', which aims at predicting the arguments for a given API. The consideration of the three scenarios allows for a comprehensive assessment of LCMs' capabilities in suggesting APIs for developers. During the evaluation, we choose nine popular LCMs with varying model sizes for the three scenarios. We also perform an in-depth analysis of the influence of context selection on the model performance ...
- Abstract(参考訳): API提案は、現代のソフトウェア開発において重要なタスクであり、現在の状況に基づいてサードパーティのAPIを予測し、推奨することでプログラマを支援する。
大規模コードモデル(LCM)の最近の進歩は、API提案タスクにおいて有望であることを示している。
しかし彼らは主に、どのAPIを使うべきかを提案することに重点を置いており、プログラマは、提案されたAPIを使うタイミングやAPIを使う方法など、実際にAPIを使用している間、より多くの支援を要求する可能性があることを無視している。
このギャップを軽減するため,本論文では,API提案タスクのLCMを体系的に評価する。
調査を容易にするために、まず、683の人気のあるJavaプロジェクトで使用されている176のAPIをカバーする、多様なコードスニペットのコレクションを含むベンチマークを構築しました。
API提案タスクの3つのシナリオは評価のために考慮される。(1)API使用の望ましい位置とタイミングを決定することを目的とした'`\textit{when to use}''、(2)ライブラリから適切なAPIを特定することを目的とした'`\textit{which to use}'、(3)APIの引数を予測することを目的とした'`\textit{how to use}'である。
この3つのシナリオを考慮すれば、開発者のためのAPIの提案におけるLCMの機能の包括的な評価が可能になる。
評価では,3つのシナリオに対して,異なるモデルサイズを持つ9つの一般的なLCMを選択する。
また、文脈選択がモデル性能に与える影響を詳細に分析する。
関連論文リスト
- WorldAPIs: The World Is Worth How Many APIs? A Thought Experiment [49.00213183302225]
本稿では, wikiHow 命令をエージェントの配置ポリシーに基礎付けることで, 新たな API を創出するフレームワークを提案する。
大規模言語モデル (LLM) の具体化計画における近年の成功に触発されて, GPT-4 のステアリングを目的とした数発のプロンプトを提案する。
論文 参考訳(メタデータ) (2024-07-10T15:52:44Z) - 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) - Contextual API Completion for Unseen Repositories Using LLMs [6.518508607788089]
本稿では,API補完タスクのためのコードリポジトリ内で,グローバルおよびローカルなコンテキスト情報を活用することで幻覚を緩和する新しい手法を提案する。
当社のアプローチは、ローカルAPI補完の最適化に重点を置いて、コード補完タスクの洗練に適合しています。
私たちのツールであるLANCEは、APIトークンの補完と会話APIの補完で、Copilotを143%、Copilotを142%上回っています。
論文 参考訳(メタデータ) (2024-05-07T18:22:28Z) - APIGen: Generative API Method Recommendation [16.541442856821]
APIGenは、拡張インコンテキスト学習(ICL)によるジェネレーティブAPIレコメンデーションアプローチである
APIGenは、語彙、構文、意味の観点から、プログラミングクエリに類似したポストを検索する。
推論プロセスにより、APIGenはクエリのプログラミング要件を満たすための推奨APIを提供する。
論文 参考訳(メタデータ) (2024-01-29T02:35:42Z) - APICom: Automatic API Completion via Prompt Learning and Adversarial
Training-based Data Augmentation [6.029137544885093]
APIレコメンデーションは、開発者が多数の候補APIの中で必要なAPIを見つけるのを支援するプロセスである。
これまでの研究では、主にAPIレコメンデーションをレコメンデーションタスクとしてモデル化していた。
ニューラルネットワーク翻訳研究領域に動機づけられたこの問題を生成タスクとしてモデル化することができる。
提案手法は,プロンプト学習に基づく新しいアプローチAPIComを提案し,そのプロンプトに応じてクエリに関連するAPIを生成する。
論文 参考訳(メタデータ) (2023-09-13T15:31:50Z) - Private-Library-Oriented Code Generation with Large Language Models [52.73999698194344]
本稿では,大規模言語モデル(LLM)をプライベートライブラリのコード生成に活用することに焦点を当てる。
プログラマがプライベートコードを書く過程をエミュレートする新しいフレームワークを提案する。
TorchDataEval、TorchDataComplexEval、MonkeyEval、BeatNumEvalの4つのプライベートライブラリベンチマークを作成しました。
論文 参考訳(メタデータ) (2023-07-28T07:43:13Z) - Evaluating Embedding APIs for Information Retrieval [51.24236853841468]
ドメインの一般化と多言語検索における既存のセマンティック埋め込みAPIの機能を評価する。
BM25の結果をAPIを使って再ランク付けすることは、予算に優しいアプローチであり、英語でもっとも効果的である。
非英語検索では、再ランク付けは結果を改善するが、BM25のハイブリッドモデルは高いコストで機能する。
論文 参考訳(メタデータ) (2023-05-10T16:40:52Z) - Binding Language Models in Symbolic Languages [146.3027328556881]
Binderはトレーニング不要のニューラルシンボリックフレームワークで、タスク入力をプログラムにマッピングする。
解析の段階では、Codexは元のプログラミング言語では答えられないタスク入力の一部を特定することができる。
実行段階では、CodexはAPI呼び出しで適切なプロンプトを与えられた万能機能を実行することができる。
論文 参考訳(メタデータ) (2022-10-06T12:55:17Z) - On the Effectiveness of Pretrained Models for API Learning [8.788509467038743]
開発者は、Excelファイルのパース、行ごとのテキストファイルの読み書きなど、特定の機能を実装するためにAPIを使うことが多い。
開発者は、より高速でクリーンな方法でアプリケーションを構築するために、自然言語クエリに基づいた自動API使用シーケンス生成の恩恵を受けることができる。
既存のアプローチでは、クエリが与えられたAPIシーケンスの検索や、RNNベースのエンコーダデコーダを使用してAPIシーケンスを生成するために、情報検索モデルを使用している。
論文 参考訳(メタデータ) (2022-04-05T20:33:24Z) - Holistic Combination of Structural and Textual Code Information for
Context based API Recommendation [28.74546332681778]
APIRec-CST (API Recommendation by Combining Structure and Textual code information) と呼ばれる新しいAPIレコメンデーション手法を提案する。
APIRec-CSTは、API Graph NetworkとCode Token Networkをベースにしたソースコードのテキスト情報とAPI使用率を組み合わせたディープラーニングモデルである。
我々は,この手法が60.3%,81.5%,87.7%,69.4%の上位5,上位10の精度,MRRを達成し,既存のグラフベースの統計手法を著しく上回ることを示す。
論文 参考訳(メタデータ) (2020-10-15T04:40:42Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。