論文の概要: Retrieval-Augmented Test Generation: How Far Are We?
- arxiv url: http://arxiv.org/abs/2409.12682v1
- Date: Thu, 19 Sep 2024 11:48:29 GMT
- ステータス: 処理完了
- システム内更新日: 2024-11-07 13:56:59.000219
- Title: Retrieval-Augmented Test Generation: How Far Are We?
- Title(参考訳): Retrieval-Augmented Test Generation: どこまで?
- Authors: Jiho Shin, Reem Aleithan, Hadi Hemmati, Song Wang,
- Abstract要約: Retrieval Augmented Generation (RAG)は、ソフトウェアエンジニアリングタスクの顕著な進歩を示している。
このギャップを埋めるために,テスト生成におけるRAGベースのLCMの有効性を検討する。
具体的には,1) APIドキュメント,2) GitHubイシュー,3) StackOverflow Q&Aの3種類のドメイン知識に基づいて構築されたRAGについて検討する。
- 参考スコア(独自算出の注目度): 8.84734567720785
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Retrieval Augmented Generation (RAG) has shown notable advancements in software engineering tasks. Despite its potential, RAG's application in unit test generation remains under-explored. To bridge this gap, we take the initiative to investigate the efficacy of RAG-based LLMs in test generation. As RAGs can leverage various knowledge sources to enhance their performance, we also explore the impact of different sources of RAGs' knowledge bases on unit test generation to provide insights into their practical benefits and limitations. Specifically, we examine RAG built upon three types of domain knowledge: 1) API documentation, 2) GitHub issues, and 3) StackOverflow Q&As. Each source offers essential knowledge for creating tests from different perspectives, i.e., API documentations provide official API usage guidelines, GitHub issues offer resolutions of issues related to the APIs from the library developers, and StackOverflow Q&As present community-driven solutions and best practices. For our experiment, we focus on five widely used and typical Python-based machine learning (ML) projects, i.e., TensorFlow, PyTorch, Scikit-learn, Google JAX, and XGBoost to build, train, and deploy complex neural networks efficiently. We conducted experiments using the top 10% most widely used APIs across these projects, involving a total of 188 APIs. We investigate the effectiveness of four state-of-the-art LLMs (open and closed-sourced), i.e., GPT-3.5-Turbo, GPT-4o, Mistral MoE 8x22B, and Llamma 3.1 405B. Additionally, we compare three prompting strategies in generating unit test cases for the experimental APIs, i.e., zero-shot, a Basic RAG, and an API-level RAG on the three external sources. Finally, we compare the cost of different sources of knowledge used for the RAG.
- Abstract(参考訳): Retrieval Augmented Generation (RAG)は、ソフトウェアエンジニアリングタスクの顕著な進歩を示している。
その可能性にもかかわらず、RAGの単体テスト生成への応用は未調査のままである。
このギャップを埋めるために,テスト生成におけるRAGベースのLCMの有効性を検討する。
RAGは様々な知識源を活用して性能を向上させることができるため、RAGの知識基盤の異なるソースが単体テスト生成に与える影響についても検討し、実践的な利点や限界について考察する。
具体的には,3種類のドメイン知識に基づいて構築されたRAGについて検討する。
1) APIドキュメント。
2) GitHub の問題,そして
3) StackOverflow Q&A。
それぞれのソースは、さまざまな観点からテストを作成するための必須知識を提供する。すなわち、APIドキュメンテーションは、公式API使用ガイドラインを提供し、GitHubイシューは、ライブラリ開発者によるAPIに関連する問題の解決を提供し、StackOverflowのQ&Aは、コミュニティ主導のソリューションとベストプラクティスを提供する。
実験では、TensorFlow、PyTorch、Scikit-learn、Google JAX、XGBoostという、広く使用されている典型的なPythonベースの機械学習(ML)プロジェクト5つに焦点を当て、複雑なニューラルネットワークを効率的に構築、トレーニング、デプロイします。
これらのプロジェクト全体で最も広く使われているAPIのトップ10%を使って、合計188のAPIを含む実験を行った。
GPT-3.5-Turbo, GPT-4o, Mistral MoE 8x22B, Llamma 3.1 405Bの4種類のLLM(オープンおよびクローズドソース)の有効性を検討した。
さらに、実験用APIのユニットテストケースを生成するための3つのプロンプト戦略、すなわち、ゼロショット、ベーシックRAG、および3つの外部ソース上のAPIレベルRAGを比較した。
最後に、RAGに使用する異なる知識源のコストを比較した。
関連論文リスト
- Reinforcement Learning-Based REST API Testing with Multi-Coverage [4.127886193201882]
MUCORESTは、Qラーニングを利用してコードカバレッジと出力カバレッジを最大化する、新しい強化学習(RL)ベースのAPIテストアプローチである。
MUCORESTは、発見されたAPIバグの数で、最先端のAPIテストアプローチを11.6-261.1%上回っている。
論文 参考訳(メタデータ) (2024-10-20T14:20:23Z) - APITestGenie: Automated API Test Generation through Generative AI [2.0716352593701277]
APITestGenieはビジネス要件とAPI仕様から実行可能なAPIテストスクリプトを生成する。
10の現実世界のAPIを使った実験では、ツールが有効なテストスクリプトを57%生成した。
人間の介入は、CI/CDパイプラインに統合される前に生成されたスクリプトを検証または洗練するために推奨される。
論文 参考訳(メタデータ) (2024-09-05T18:02:41Z) - RAGLAB: A Modular and Research-Oriented Unified Framework for Retrieval-Augmented Generation [54.707460684650584]
大きな言語モデル(LLM)は対話、推論、知識保持における人間レベルの能力を示す。
現在の研究は、LLMに外部知識を組み込むことによって、このボトルネックに対処している。
RAGLABはモジュール的で研究指向のオープンソースライブラリで、6つの既存のアルゴリズムを再現し、RAGアルゴリズムを調査するための包括的なエコシステムを提供する。
論文 参考訳(メタデータ) (2024-08-21T07:20:48Z) - CodeRAG-Bench: Can Retrieval Augment Code Generation? [78.37076502395699]
検索拡張生成を用いたコード生成の系統的,大規模な解析を行う。
まず、コード生成タスクの3つのカテゴリを含む総合的な評価ベンチマークであるCodeRAG-Benchをキュレートする。
CodeRAG-Bench上のトップパフォーマンスモデルについて、1つまたは複数のソースから検索したコンテキストを提供することにより検討する。
論文 参考訳(メタデータ) (2024-06-20T16:59:52Z) - Leveraging Large Language Models to Improve REST API Testing [51.284096009803406]
RESTGPTはAPI仕様を入力として、機械解釈可能なルールを抽出し、仕様内の自然言語記述からサンプルパラメータ値を生成する。
評価の結果、RESTGPTはルール抽出と値生成の両方において既存の技術よりも優れています。
論文 参考訳(メタデータ) (2023-12-01T19:53:23Z) - A Simple Baseline for Knowledge-Based Visual Question Answering [78.00758742784532]
本稿では,知識に基づく視覚質問応答(KB-VQA)の問題について述べる。
本論文の主な貢献は,よりシンプルで容易に再現可能なパイプラインを提案することである。
近年のアプローチとは対照的に,本手法はトレーニングフリーであり,外部データベースやAPIへのアクセスを必要とせず,OK-VQAおよびA-OK-VQAデータセット上で最先端の精度を実現する。
論文 参考訳(メタデータ) (2023-10-20T15:08:17Z) - Automatic Unit Test Generation for Deep Learning Frameworks based on API
Knowledge [11.523398693942413]
ディープラーニングフレームワークのAPIの単体テストケースを生成するために,MUTesterを提案する。
まず、APIドキュメントからAPI制約をマイニングするための18のルールを提案する。
次に、頻繁なアイテムセットマイニング技術を使用して、マシンラーニングAPI関連のコードフラグメントの大規模なコーパスからAPI使用パターンをマイニングします。
論文 参考訳(メタデータ) (2023-07-01T18:34:56Z) - Generate then Select: Open-ended Visual Question Answering Guided by
World Knowledge [155.81786738036578]
Open-ended Visual Question Answering (VQA)タスクでは、視覚と自然言語の入力をAIモデルが共同で推論する必要がある。
GPT-3のような事前訓練された言語モデル(PLM)がこのタスクに適用され、強力な世界知識源であることが示されている。
我々は,世界的知識によって導かれるジェネレータ選択戦略をデプロイする新しいVQAパイプラインであるRASOを提案する。
論文 参考訳(メタデータ) (2023-05-30T08:34:13Z) - GeneGPT: Augmenting Large Language Models with Domain Tools for Improved
Access to Biomedical Information [18.551792817140473]
我々は,国立バイオテクノロジー情報センターの Web API を LLM に教える新しい方法である GeneGPT を提案する。
CodexにNCBI Web APIによるGeneTuringテストの解決を、テキスト内学習と拡張復号アルゴリズムにより促す。
GeneGPTは、平均スコア0.83のGeneTuringベンチマークの8つのタスクで最先端のパフォーマンスを達成する。
論文 参考訳(メタデータ) (2023-04-19T13:53:19Z) - KILT: a Benchmark for Knowledge Intensive Language Tasks [102.33046195554886]
知識集約型言語タスク(KILT)のベンチマークを示す。
KILTのすべてのタスクはウィキペディアのスナップショットと同じだ。
共有密度ベクトル指数とSeq2seqモデルとの結合が強いベースラインであることが分かる。
論文 参考訳(メタデータ) (2020-09-04T15:32:19Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。