論文の概要: Test-Case-Driven Programming Understanding in Large Language Models for
Better Code Generation
- arxiv url: http://arxiv.org/abs/2309.16120v2
- Date: Wed, 28 Feb 2024 07:18:02 GMT
- ステータス: 処理完了
- システム内更新日: 2024-02-29 18:42:01.977760
- Title: Test-Case-Driven Programming Understanding in Large Language Models for
Better Code Generation
- Title(参考訳): コード生成改善のための大規模言語モデルにおけるテストケース駆動プログラミング理解
- Authors: Zhao Tian, Junjie Chen, Xiangyu Zhang
- Abstract要約: muFiXは、大きな言語モデル(LLM)のコード生成性能を改善する新しいプロンプト技術である。
まず、テストケース分析を利用して仕様の理解を得、自己改善プロセスを可能にする。
muFiXはさらに、提供された理解と実際の理解の間のギャップを減らす方向に向けた仕様理解を修正している。
- 参考スコア(独自算出の注目度): 15.166827643436346
- 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 not
aligned with the specification. To improve the performance of LLMs in code
generation, some thought-eliciting prompting techniques have been proposed to
guide LLMs for specification understanding. However, it is still hard to
produce correct understanding for complicated programming problems, leading to
unsatisfactory code generation performance. Also, some feedback-based prompting
techniques have been proposed to fix incorrect code using error messages
produced by test execution. However, when the generated code deviates
significantly from the ground truth, they encounter difficulties in improving
performance based on such coarse-grained information.
In this work, we propose a novel prompting technique, called {\mu}FiX, to
improve the code generation performance of LLMs by devising both sophisticated
thought-eliciting prompting and feedback-based prompting and making the first
exploration on their synergy. It first exploits test case analysis to obtain
specification understanding and enables a self-improvement process to identify
and fix the misunderstanding in the thought-eliciting prompting phase. {\mu}FiX
further fixes the specification understanding towards the direction reducing
the gap between the provided understanding and the actual understanding
implicitly utilized by LLMs for code generation in the feedback-based prompting
phase. By obtaining as correct understanding as possible with {\mu}FiX, the
code generation performance of LLMs can be largely improved.
- Abstract(参考訳): コード生成は、与えられたプログラム仕様に従ってソースコードを自動的に生成することであり、特に大規模言語モデル(LLM)の開発で広く注目を集めている。
コード生成が本質的に困難であるため、LCMが生成したコードは仕様と一致しない可能性がある。
コード生成におけるLLMの性能向上のために,仕様理解のためのLLMをガイドする思考支援技術が提案されている。
しかし、複雑なプログラミング問題に対する正確な理解を得るのは難しいため、不満足なコード生成性能につながる。
また、テスト実行によって生成されたエラーメッセージを使用して間違ったコードを修正するためのフィードバックベースのプロンプト手法も提案されている。
しかし、生成されたコードが真理から著しく逸脱すると、そのような粗い情報に基づいて性能を改善することが困難になる。
そこで本研究では,洗練された思考誘発プロンプトとフィードバックに基づくプロンプトの両方を考案し,その相乗効果を初めて探求することにより,llmのコード生成性能を向上させるための新しいプロンプト手法である {\mu}fixを提案する。
まず、テストケース分析を利用して仕様理解を得、自己改善プロセスによって思考誘発促進フェーズにおける誤解を識別し、修正することができる。
さらに、フィードバックベースのプロンプトフェーズにおけるコード生成にLLMが暗黙的に用いている実際の理解とのギャップを減らす方向に向け、仕様理解をさらに修正する。
可能な限り正確な理解を得ることにより、LLMのコード生成性能を大幅に改善することができる。
関連論文リスト
- 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)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。