論文の概要: How and Why LLMs Use Deprecated APIs in Code Completion? An Empirical Study
- arxiv url: http://arxiv.org/abs/2406.09834v2
- Date: Wed, 3 Jul 2024 06:37:04 GMT
- ステータス: 処理完了
- システム内更新日: 2024-07-04 19:13:15.018087
- Title: How and Why LLMs Use Deprecated APIs in Code Completion? An Empirical Study
- Title(参考訳): LLMがコード補完に非推奨のAPIを使用する理由と理由 : 実証的研究
- Authors: Chong Wang, Kaifeng Huang, Jian Zhang, Yebo Feng, Lyuye Zhang, Yang Liu, Xin Peng,
- Abstract要約: 大規模言語モデル(LLM)では、ライブラリの迅速かつ継続的な進化のために、コード補完は、正しく最新のアプリケーションプログラミングインタフェース(API)を使用するのに苦労する可能性がある。
この研究には、7つの高度なLLM、人気のあるPythonライブラリの145のAPIマッピング、28125の補完プロンプトが含まれていた。
我々は,textscReplaceAPI と textscInsertPrompt の2つの軽量固定手法を提案する。
- 参考スコア(独自算出の注目度): 13.633501449498402
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Large language models (LLMs), pre-trained or fine-tuned on large code corpora, have shown effectiveness in generating code completions. However, in LLM-based code completion, LLMs may struggle to use correct and up-to-date Application Programming Interfaces (APIs) due to the rapid and continuous evolution of libraries. While existing studies have highlighted issues with predicting incorrect APIs, the specific problem of deprecated API usage in LLM-based code completion has not been thoroughly investigated. To address this gap, we conducted the first evaluation study on deprecated API usage in LLM-based code completion. This study involved seven advanced LLMs, 145 API mappings from eight popular Python libraries, and 28,125 completion prompts. The study results reveal the \textit{status quo} and \textit{root causes} of deprecated API usage in LLM-based code completion from the perspectives of \textit{model}, \textit{prompt}, and \textit{library}. Based on these findings, we propose two lightweight fixing approaches, \textsc{ReplaceAPI} and \textsc{InsertPrompt}, which can serve as baseline approaches for future research on mitigating deprecated API usage in LLM-based completion. Additionally, we provide implications for future research on integrating library evolution with LLM-driven software development.
- Abstract(参考訳): 大きな言語モデル(LLM)は、大規模なコードコーパスで事前訓練されたり、微調整されたりすることで、コード補完の生成に有効であることが示されている。
しかし、LLMベースのコード補完では、ライブラリの迅速かつ継続的な進化のために、LLMは正しい最新のアプリケーションプログラミングインタフェース(API)を使用するのに苦労する可能性がある。
既存の研究では、不正なAPIの予測に関する問題が強調されているが、LLMベースのコード補完における非推奨のAPI使用の具体的な問題は、十分に調査されていない。
このギャップに対処するため、LLMベースのコード補完において、非推奨のAPI使用率に関する最初の評価研究を行った。
この研究には、7つの高度なLLM、人気のあるPythonライブラリの145のAPIマッピング、28125の補完プロンプトが含まれていた。
LLMベースのコード補完では,<textit{status quo} と \textit{root cause} が, \textit{model} と \textit{prompt} と \textit{library} の両面から検討されている。
これらの知見に基づいて,LLMをベースとしたAPI使用の軽減のための基盤となる,軽量な2つのアプローチ, \textsc{ReplaceAPI} と \textsc{InsertPrompt} を提案する。
さらに,ライブラリの進化とLCM駆動ソフトウェア開発の統合に関する今後の研究の意義について述べる。
関連論文リスト
- 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) - Compositional API Recommendation for Library-Oriented Code Generation [23.355509276291198]
我々は、粗粒度要求のためのAPIを推奨するために、"diide-and-conquer"戦略を採用するCAPIRを提案する。
RAPID(Documentationに基づく推奨API)とLOCG(Library-Oriented Code Generation)の2つの挑戦的なベンチマークを提示する。
これらのベンチマーク実験の結果,既存のベースラインと比較してCAPIRの有効性が示された。
論文 参考訳(メタデータ) (2024-02-29T18:27:27Z) - De-Hallucinator: Mitigating LLM Hallucinations in Code Generation Tasks via Iterative Grounding [18.129031749321058]
公開ソースコードのデータセットに基づいてトレーニングされた大規模言語モデル(LLM)は、コード生成タスクにおける新たな最先端技術を確立した。
LLMは、主に特定のプロジェクトに存在するコードに気づいていないため、モデルが既存のAPIをうまく利用できない。
本稿では,適切なAPI参照を検索する新たな組み合わせにより,LLMの予測を基礎とするDe-Hallucinatorを提案する。
論文 参考訳(メタデータ) (2024-01-03T12:09:43Z) - Making Large Language Models A Better Foundation For Dense Retrieval [19.38740248464456]
デンス検索では,クエリとドキュメント間の意味的関係を表現するために,識別テキストの埋め込みを学習する必要がある。
意味理解におけるLLMの強い能力を考えると、大きな言語モデル(LLM)の使用の恩恵を受けるかもしれない。
本稿では,LLaRA (LLM adapted for dense RetrievAl) を提案する。
論文 参考訳(メタデータ) (2023-12-24T15:10:35Z) - (Why) Is My Prompt Getting Worse? Rethinking Regression Testing for
Evolving LLM APIs [8.403074015356594]
大規模言語モデル(LLM)はますますソフトウェアアプリケーションに統合されている。
LLMはサイレントに更新され、非推奨にされる。
これはパフォーマンスの低下を引き起こし、迅速な設計選択に影響を与える可能性がある。
論文 参考訳(メタデータ) (2023-11-18T17:11:12Z) - ML-Bench: Evaluating Large Language Models and Agents for Machine Learning Tasks on Repository-Level Code [76.84199699772903]
ML-Benchは、既存のコードリポジトリを利用してタスクを実行する現実世界のプログラミングアプリケーションに根ざしたベンチマークである。
LLM(Large Language Model)とAIエージェントの両方を評価するために、事前に定義されたデプロイメント環境でLLMのテキスト-コード変換を評価するML-LLM-Benchと、Linuxサンドボックス環境でエンドツーエンドのタスク実行で自律エージェントをテストするML-Agent-Benchの2つの設定が採用されている。
論文 参考訳(メタデータ) (2023-11-16T12:03:21Z) - LLatrieval: LLM-Verified Retrieval for Verifiable Generation [67.93134176912477]
検証可能な生成は、大きな言語モデル(LLM)がドキュメントをサポートするテキストを生成することを目的としている。
本稿では,LLatrieval (Large Language Model Verified Retrieval)を提案する。
実験により、LLatrievalは幅広いベースラインを著しく上回り、最先端の結果が得られることが示された。
論文 参考訳(メタデータ) (2023-11-14T01:38:02Z) - LM-Polygraph: Uncertainty Estimation for Language Models [71.21409522341482]
不確実性推定(UE)手法は、大規模言語モデル(LLM)の安全性、責任性、効果的な利用のための1つの経路である。
テキスト生成タスクにおけるLLMの最先端UEメソッドのバッテリを実装したフレームワークであるLM-PolygraphをPythonで統一したプログラムインタフェースで導入する。
研究者によるUEテクニックの一貫した評価のための拡張可能なベンチマークと、信頼スコア付き標準チャットダイアログを強化するデモWebアプリケーションを導入している。
論文 参考訳(メタデータ) (2023-11-13T15:08:59Z) - Private-Library-Oriented Code Generation with Large Language Models [52.73999698194344]
本稿では,大規模言語モデル(LLM)をプライベートライブラリのコード生成に活用することに焦点を当てる。
プログラマがプライベートコードを書く過程をエミュレートする新しいフレームワークを提案する。
TorchDataEval、TorchDataComplexEval、MonkeyEval、BeatNumEvalの4つのプライベートライブラリベンチマークを作成しました。
論文 参考訳(メタデータ) (2023-07-28T07:43:13Z) - Allies: Prompting Large Language Model with Beam Search [107.38790111856761]
本研究では,ALIESと呼ばれる新しい手法を提案する。
入力クエリが与えられた場合、ALLIESはLLMを活用して、元のクエリに関連する新しいクエリを反復的に生成する。
元のクエリのスコープを反復的に精錬して拡張することにより、ALLIESは直接検索できない隠れた知識をキャプチャし、利用する。
論文 参考訳(メタデータ) (2023-05-24T06:16:44Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。