論文の概要: Test-Case-Driven Programming Understanding in Large Language Models for
Better Code Generation
- arxiv url: http://arxiv.org/abs/2309.16120v1
- Date: Thu, 28 Sep 2023 02:58:07 GMT
- ステータス: 処理完了
- システム内更新日: 2023-10-23 06:07:15.758783
- Title: Test-Case-Driven Programming Understanding in Large Language Models for
Better Code Generation
- Title(参考訳): コード生成改善のための大規模言語モデルにおけるテストケース駆動プログラミング理解
- Authors: Zhao Tian, Junjie Chen
- Abstract要約: 本稿では,コード生成における大規模言語モデル(LLM)の能力を高めるため,最初のテストケース駆動型思考の連鎖(CoT)手法であるTCoTを提案する。
TCoTは、テストケースの新たな視点から、プログラミング仕様を理解する。
6つのデータセットと14のベースラインに対する評価は, TCoTの有効性を示す。
- 参考スコア(独自算出の注目度): 7.285073079216094
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Code generation is to automatically generate source code conforming to a
given programming specification, which has received extensive attention
especially with the development of large language models (LLMs). Due to the
inherent difficulty of code generation, the code generated by LLMs may be also
not aligned with the specification. To improve the perfor mance of LLMs in code
generation, some Chain of Thought (CoT) techniques have been proposed to guide
LLMs for programming understanding before code generation. However, they are
still hard to figure out complicated programming logic according to the
(concise) specification, leadingto unsatisfactory code generation performance.
In this work, we propose the first test-case-driven CoT technique, called TCoT,
to further enhance the ability of LLMs in code generation. It understands the
programming specification from the novel perspective of test cases, which is
aligned with human practice by using examples to understand complicated
problems. Due to the existence of the expected output specified in a test case,
TCoT can instantly check the correctness of the programming understanding and
then refine it to be as correct as possible before code generation. In this
way, it is more likely to generate correct code. Our evaluation on 6 datasets
and 14 baselines demonstrates the effectiveness of TCoT. For example, TCoT
improves ChatGPT by 13.93%~69.44% in terms of Pass@1 (measuring the ratio of
programming problems for which the generated code passes all test cases), and
outperforms the existing CoT technique with the improvement of 12.14%~53.72% in
terms of Pass@1.
- Abstract(参考訳): コード生成は、与えられたプログラム仕様に従ってソースコードを自動的に生成することであり、特に大規模言語モデル(LLM)の開発で広く注目を集めている。
コード生成が本質的に困難であるため、llmsによって生成されたコードも仕様と一致しない可能性がある。
コード生成におけるLLMのパーフォル・マンスを改善するために、コード生成前にLLMをプログラミング理解するためのCoT(Chain of Thought)技術が提案されている。
しかし、(簡潔な)仕様に従って複雑なプログラミングロジックを理解するのは難しいので、コード生成のパフォーマンスに満足できない。
本研究では,コード生成におけるLCMの能力を高めるために,TCoTと呼ばれる最初のテストケース駆動型CoT手法を提案する。
複雑な問題を例を使って理解することで、人間の実践と一致したテストケースの新しい視点からプログラミング仕様を理解する。
テストケースで指定された期待出力が存在するため、TCoTは直ちにプログラミング理解の正確さを確認し、コード生成前に可能な限り正確に修正することができる。
このようにして、正しいコードを生成する可能性が高い。
6つのデータセットと14のベースラインに対する評価は, TCoTの有効性を示す。
例えば、tcotは、pass@1(生成されたコードがすべてのテストケースをパスするプログラミング問題の割合)で、chatgptを13.93%~69.44%改善し、pass@1で12.14%~53.72%の改善で既存のcot技術を上回っている。
関連論文リスト
- RGD: Multi-LLM Based Agent Debugger via Refinement and Generation Guidance [0.6062751776009752]
大規模言語モデル(LLM)は、コード生成タスクにおいて驚くべきポテンシャルを示しています。
LLMはタスク記述に基づいてコードを生成することができるが、精度は限られている。
コード生成と自動デバッグのためのLLMエージェントの新しいアーキテクチャ:Refinement and Guidancebug (RGD)を紹介する。
RGDはコード生成タスクを複数のステップに分割し、より明確なワークフローを確保し、自己回帰とフィードバックに基づいた反復的なコード改善を可能にする。
論文 参考訳(メタデータ) (2024-10-02T05:07:02Z) - Understanding Defects in Generated Codes by Language Models [0.669087470775851]
本研究では,大規模言語モデルによって生成されたコードスニペットの367の欠陥を分類,解析する。
エラーカテゴリは、LLMが頻繁に失敗する重要な領域を示し、目標とする改善の必要性を強調している。
本稿では,スクラッチパッド・プロンプト・プログラム・オブ・ソート・プロンプト・チェーン・オブ・ソート・プロンプト・チェーン・オブ・ソート・プロンプト・ストラクテッド・オブ・ソート・プロンプト・オブ・ソート・プロンプト・プログラム・オブ・ソート・プロンプト・プログラム・オブ・ソート・プロンプト・プログラム・オブ・ソート・プロンプト・オブ・ソート・プロンプト・プログラム・オブ・ソート・プロンプト・オブ・ソート・プロンプト・プログラム・オブ・ソート・プロンプト・プログラム・オブ・オブ・ソート・プロンプト・プロンプト・アンド・ストラクテッド・オブ・フォーンティング(Structued Chain-of-Thought Prompting)の5つの迅速な技術技術
論文 参考訳(メタデータ) (2024-08-23T21:10:09Z) - What's Wrong with Your Code Generated by Large Language Models? An Extensive Study [80.18342600996601]
大規模言語モデル(LLM)は、標準解に比べて短いがより複雑なコードを生成する。
3つのカテゴリと12のサブカテゴリを含む誤ったコードに対するバグの分類を開発し、一般的なバグタイプに対する根本原因を分析する。
そこで本研究では,LLMがバグタイプやコンパイラフィードバックに基づいて生成したコードを批判し,修正することのできる,自己批判を導入した新たな学習自由反復手法を提案する。
論文 参考訳(メタデータ) (2024-07-08T17:27:17Z) - Decoding at the Speed of Thought: Harnessing Parallel Decoding of Lexical Units for LLMs [57.27982780697922]
大規模言語モデルは、自然言語の理解と生成において例外的な能力を示した。
しかし、それらの生成速度は、その復号過程の本質的にシーケンシャルな性質によって制限される。
本稿では,データ駆動方式で実装された新しいデコーディング手法であるLexical Unit Decodingを紹介する。
論文 参考訳(メタデータ) (2024-05-24T04:35:13Z) - CodeIP: A Grammar-Guided Multi-Bit Watermark for Large Language Models of Code [56.019447113206006]
大規模言語モデル(LLM)はコード生成において顕著な進歩を遂げた。
CodeIPは、新しいマルチビット透かし技術で、出所の詳細を保存するために追加情報を埋め込む。
5つのプログラミング言語にまたがる実世界のデータセットで実施された実験は、CodeIPの有効性を実証している。
論文 参考訳(メタデータ) (2024-04-24T04:25:04Z) - 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 Prompting Elicits Conditional Reasoning Abilities in Text+Code LLMs [65.2379940117181]
自然言語の問題をコードに変換する一連のプロンプトであるコードプロンプトを導入します。
コードプロンプトは複数のLLMに対して高速に向上することがわかった。
GPT 3.5を解析した結果,入力問題のコードフォーマッティングが性能向上に不可欠であることが判明した。
論文 参考訳(メタデータ) (2024-01-18T15:32:24Z) - Mutation-based Consistency Testing for Evaluating the Code Understanding
Capability of LLMs [5.549095839198671]
大きな言語モデル(LLM)は、自然言語とプログラミング言語の両方を処理する際、顕著な能力を示している。
本稿では,LLMのコード理解性能を評価する新しい手法を提案し,特にコードと記述の微妙な差異に着目した。
演算子置換やステートメント削除など,さまざまなタイプのコード突然変異を適用して,一貫性のないコード記述ペアを生成する。
我々は,現在最先端のコード生成ベンチマークであるHumanEval-Xを用いて,GPT-3.5とGPT-4の2つのLLMのケーススタディを行う。
論文 参考訳(メタデータ) (2024-01-11T14:27:43Z) - If LLM Is the Wizard, Then Code Is the Wand: A Survey on How Code
Empowers Large Language Models to Serve as Intelligent Agents [81.60906807941188]
大型言語モデル(LLM)は、自然言語と形式言語(コード)の組み合わせに基づいて訓練される
コードは、標準構文、論理一貫性、抽象化、モジュール性を備えた高レベルの目標を実行可能なステップに変換する。
論文 参考訳(メタデータ) (2024-01-01T16:51:20Z) - Function-constrained Program Synthesis [12.55507214959886]
大規模言語モデル(LLM)は、開発環境で利用可能なすべてのコードを描画することで、リアルタイムでコードを生成することができる。
現在のシステムには効果的なリカバリ方法が欠如しており、ユーザーは十分な解に到達するまで、修正されたプロンプトでモデルを反復的に再起動せざるを得ない。
提案手法は,コード生成を明示的な関数集合に制約し,自動生成されたサブ関数を通じて失敗した試行からのリカバリを可能にする。
論文 参考訳(メタデータ) (2023-11-27T02:55:34Z) - Benchmarking and Explaining Large Language Model-based Code Generation:
A Causality-Centric Approach [12.214585409361126]
大規模言語モデル(LLM)ベースのコード生成は複雑で強力なブラックボックスモデルである。
本稿では,プロンプトと生成されたコードの因果グラフに基づく新しい表現を提案する。
我々は,12以上の迅速な調整戦略で3つの人気のあるLCMを研究することで,我々のフレームワークが提供できる洞察について説明する。
論文 参考訳(メタデータ) (2023-10-10T14:56:26Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。