論文の概要: Large Language Models as Test Case Generators: Performance Evaluation and Enhancement
- arxiv url: http://arxiv.org/abs/2404.13340v1
- Date: Sat, 20 Apr 2024 10:27:01 GMT
- ステータス: 処理完了
- システム内更新日: 2024-04-23 19:29:41.193274
- Title: Large Language Models as Test Case Generators: Performance Evaluation and Enhancement
- Title(参考訳): テストケースジェネレータとしての大規模言語モデル:性能評価と拡張
- Authors: Kefan Li, Yuan Yuan,
- Abstract要約: 大規模言語モデルが高品質なテストケースをいかに生み出すかを検討する。
本稿では,テストインプットとテストアウトプットの生成を分離するemphTestChainというマルチエージェントフレームワークを提案する。
以上の結果から,TestChainはベースラインのマージンを大きく上回っていることが示唆された。
- 参考スコア(独自算出の注目度): 3.5398126682962587
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Code generation with Large Language Models (LLMs) has been extensively studied and achieved remarkable progress. As a complementary aspect to code generation, test case generation is of crucial importance in ensuring the quality and reliability of code. However, using LLMs as test case generators has been much less explored. Current research along this line primarily focuses on enhancing code generation with assistance from test cases generated by LLMs, while the performance of LLMs in test case generation alone has not been comprehensively examined. To bridge this gap, we conduct extensive experiments to study how well LLMs can generate high-quality test cases. We find that as the problem difficulty increases, state-of-the-art LLMs struggle to generate correct test cases, largely due to their inherent limitations in computation and reasoning. To mitigate this issue, we further propose a multi-agent framework called \emph{TestChain} that decouples the generation of test inputs and test outputs. Notably, TestChain uses a ReAct format conversation chain for LLMs to interact with a Python interpreter in order to provide more accurate test outputs. Our results indicate that TestChain outperforms the baseline by a large margin. Particularly, in terms of the accuracy of test cases, TestChain using GPT-4 as the backbone achieves a 13.84\% improvement over the baseline on the LeetCode-hard dataset.
- Abstract(参考訳): 大規模言語モデル(LLM)を用いたコード生成は広く研究され、目覚ましい進歩を遂げた。
コード生成の補完的な側面として、テストケースの生成は、コードの品質と信頼性を保証する上で非常に重要です。
しかし、LLMをテストケースジェネレータとして使うことは、あまり研究されていない。
この線に沿った現在の研究は、LLMが生成したテストケースの支援によるコード生成の強化に重点を置いているが、テストケース生成のみでのLCMのパフォーマンスは、包括的に検討されていない。
このギャップを埋めるため、我々はLLMがいかに高品質なテストケースを生成できるかを広範囲に実験する。
問題の難しさが増大するにつれて、現状のLLMは、計算や推論に固有の制限があるため、正しいテストケースを生成するのに苦労していることがわかった。
この問題を緩和するために、テストインプットとテストアウトプットの生成を分離する「emph{TestChain}」と呼ばれるマルチエージェントフレームワークを提案する。
特にTestChainは、より正確なテスト出力を提供するために、LLMのReActフォーマットの会話チェーンを使用してPythonインタプリタと対話する。
以上の結果から,TestChainはベースラインのマージンを大きく上回っていることが示唆された。
特に、テストケースの精度の面では、GPT-4をバックボーンとして使用するTestChainは、LeetCode-hardデータセットのベースラインよりも13.84.%改善されている。
関連論文リスト
- StepCoder: Improve Code Generation with Reinforcement Learning from
Compiler Feedback [58.20547418182074]
2つの主要コンポーネントからなるコード生成の新しいフレームワークであるStepCoderを紹介します。
CCCSは、長いシーケンスのコード生成タスクをCurriculum of Code Completion Subtaskに分割することで、探索課題に対処する。
FGOは、未実行のコードセグメントをマスクすることでのみモデルを最適化し、Fine-Grained Optimizationを提供する。
提案手法は,出力空間を探索し,対応するベンチマークにおいて最先端の手法より優れた性能を発揮する。
論文 参考訳(メタデータ) (2024-02-02T13:14:31Z) - Code-Aware Prompting: A study of Coverage Guided Test Generation in Regression Setting using LLM [32.44432906540792]
テスト生成における大規模言語モデルのコード認識促進戦略であるSymPromptを提案する。
SymPromptは、正しいテスト世代を5倍に増やし、CodeGen2の相対カバレッジを26%向上させる。
特に、GPT-4に適用すると、SymPromptはベースラインのプロンプト戦略に比べて2倍以上のカバレッジが向上する。
論文 参考訳(メタデータ) (2024-01-31T18:21:49Z) - TDD Without Tears: Towards Test Case Generation from Requirements
through Deep Reinforcement Learning [22.331330777536046]
テスト駆動開発(TDD)は、実際のコードを書く前に要件に基づいてテストケースを書くことを義務付ける。
テストケースを書くことはTDDの中心ですが、時間がかかり、コストがかかり、開発者が悩まされることも少なくありません。
PyTesterは、テキストからテストケースを生成するアプローチで、正しい、実行可能な、完全な、効果的なテストケースを自動的に生成します。
論文 参考訳(メタデータ) (2024-01-15T10:21:58Z) - Unit Test Generation using Generative AI : A Comparative Performance
Analysis of Autogeneration Tools [2.0686733932673604]
本研究では,Pythonプログラムの単体テストスクリプト生成におけるLarge Language Models(LLMs)の有効性を実験的に検討することを目的とする。
実験では,1)手続き型スクリプト,2)関数ベースのモジュール型コード,3)クラスベースのコードという3つのタイプのコードユニットを検討する。
以上の結果から,ChatGPTの性能はPynguinに匹敵するが,いくつかのケースではPynguinよりも優れていた。
論文 参考訳(メタデータ) (2023-12-17T06:38:11Z) - Self-Evaluation Improves Selective Generation in Large Language Models [54.003992911447696]
オープンエンド生成タスクをトークンレベルの予測タスクに再構成する。
我々はLSMに答えを自己評価するように指示する。
自己評価に基づくスコアリング手法をベンチマークする。
論文 参考訳(メタデータ) (2023-12-14T19:09:22Z) - Automatic Hallucination Assessment for Aligned Large Language Models via
Transferable Adversarial Attacks [98.22864957942821]
本稿では,大規模言語モデルが忠実に振る舞う既存データを適切に修正し,評価データを自動的に生成する手法を開発することを目的とする。
具体的には,LLM ベースのフレームワークである Auto Debug について述べる。
実験結果から, LLMは, インプロンプトに与えられた知識とパラメトリック知識との間に矛盾がある場合, 質問応答シナリオの2つのカテゴリに幻覚を与える可能性が示唆された。
論文 参考訳(メタデータ) (2023-10-19T06:37:32Z) - Automatic Generation of Test Cases based on Bug Reports: a Feasibility
Study with Large Language Models [4.318319522015101]
既存のアプローチは、単純なテスト(例えば単体テスト)や正確な仕様を必要とするテストケースを生成する。
ほとんどのテスト手順は、テストスイートを形成するために人間が書いたテストケースに依存しています。
大規模言語モデル(LLM)を活用し,バグレポートを入力として利用することにより,この生成の実現可能性を検討する。
論文 参考訳(メタデータ) (2023-10-10T05:30:12Z) - Effective Test Generation Using Pre-trained Large Language Models and
Mutation Testing [13.743062498008555]
大規模言語モデル(LLM)が生成するテストケースの有効性を,バグの発見の観点から改善するための MuTAP を導入する。
MuTAPは、プログラム・アンダー・テスト(PUT)の自然言語記述がない場合に有効なテストケースを生成することができる
提案手法は, 最大28%の人書きコードスニペットを検出できることを示す。
論文 参考訳(メタデータ) (2023-08-31T08:48:31Z) - LLMs as Factual Reasoners: Insights from Existing Benchmarks and Beyond [135.8013388183257]
そこで我々は,SummEditsと呼ばれる10ドメインのベンチマークで不整合検出ベンチマークを作成し,実装する新しいプロトコルを提案する。
ほとんどのLLMはSummEditsで苦労しており、パフォーマンスはランダムに近い。
最も優れたモデルであるGPT-4は、推定された人間のパフォーマンスよりも8%低い。
論文 参考訳(メタデータ) (2023-05-23T21:50:06Z) - LEVER: Learning to Verify Language-to-Code Generation with Execution [64.36459105535]
本稿では,プログラムの実行結果の検証を学習することで,言語からコードへの生成を改善するシンプルな手法であるLEVERを提案する。
具体的には、LLMからサンプリングされたプログラムが、自然言語入力、プログラム自体とその実行結果に基づいて正しいか否かを判定するために、検証者を訓練する。
LEVER はベースコード LLMs (4.6% から 10.9% まで) を継続的に改善し、それらすべてに対して新しい最先端の結果を得る。
論文 参考訳(メタデータ) (2023-02-16T18:23:22Z) - CodeT: Code Generation with Generated Tests [49.622590050797236]
テストケースを自動的に生成するための事前学習言語モデルについて検討する。
CodeTは生成されたテストケースを使ってコードソリューションを実行し、次に最良のソリューションを選択します。
我々は,HumanEvalとMBPPのベンチマークを用いて,5種類の事前学習モデル上でCodeTを評価する。
論文 参考訳(メタデータ) (2022-07-21T10:18:37Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。