論文の概要: AceCoder: Utilizing Existing Code to Enhance Code Generation
- arxiv url: http://arxiv.org/abs/2303.17780v2
- Date: Fri, 11 Aug 2023 08:45:12 GMT
- ステータス: 処理完了
- システム内更新日: 2023-08-14 17:13:13.790704
- Title: AceCoder: Utilizing Existing Code to Enhance Code Generation
- Title(参考訳): AceCoder: 既存のコードを使用してコード生成を促進する
- Authors: Jia Allen Li, Yunfei Zhao, Yongmin Li, Ge Li, Zhi Jin
- Abstract要約: 既存のプロンプト技術は自然言語生成用に設計されており、コード生成の精度は低い。
AceCoderには、これらの課題を解決するための2つの新しいメカニズム(ガイド付きコード生成とサンプル検索)が含まれている。
その結果、AceCoderはコード生成におけるLLMの性能を大幅に改善できることがわかった。
- 参考スコア(独自算出の注目度): 21.93553374829239
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Large Language Models (LLMs) have shown great success in code generation.
LLMs take as the input a prompt and output the code. A key question is how to
make prompts (i.e., Prompting Techniques). Existing prompting techniques are
designed for natural language generation and have low accuracy in code
generation.
In this paper, we propose a new prompting technique named AceCoder. Our
motivation is that code generation meets two unique challenges (i.e.,
requirement understanding and code implementation). AceCoder contains two novel
mechanisms (i.e., guided code generation and example retrieval) to solve these
challenges. (1) Guided code generation asks LLMs first to analyze requirements
and output an intermediate preliminary (e.g., test cases). The preliminary is
used to clarify requirements and tell LLMs "what to write". (2) Example
retrieval selects similar programs as examples in prompts, which provide lots
of relevant content (e.g., algorithms, APIs) and teach LLMs "how to write". We
apply AceCoder to three LLMs (e.g., Codex) and evaluate it on three public
benchmarks using the Pass@k. Results show that AceCoder can significantly
improve the performance of LLMs on code generation. (1) In terms of Pass@1,
AceCoder outperforms the state-of-the-art baseline by up to 56.4% in MBPP,
70.7% in MBJP, and 88.4% in MBJSP. (2) AceCoder is effective in LLMs with
different sizes (i.e., 6B to 13B) and different languages (i.e., Python, Java,
and JavaScript). (3) Human evaluation shows human developers prefer programs
from AceCoder.
- Abstract(参考訳): 大きな言語モデル(LLM)はコード生成で大きな成功を収めています。
LLMは入力としてプロンプトを受け取り、コードを出力する。
重要な質問は、プロンプト(すなわちプロンプトテクニック)の作り方である。
既存のプロンプト技術は自然言語生成用に設計されており、コード生成の精度は低い。
本稿では,AceCoderという新しいプロンプト手法を提案する。
私たちのモチベーションは、コード生成が2つの固有の課題(要求理解とコード実装)を満たすことです。
AceCoderには、これらの課題を解決するための2つの新しいメカニズム(ガイド付きコード生成とサンプル検索)が含まれている。
1) 誘導型コード生成はまずllmに要求を分析し,中間予備(テストケースなど)を出力する。
プリミティブは要件を明確にし、llmに"何を書くべきか"を伝えるために使用される。
2)例検索はプロンプトの例として類似したプログラムを選択し,関連するコンテンツ(アルゴリズムやapiなど)を多数提供し,llmに"書き方"を教える。
AceCoderを3つのLLM(例えばCodex)に適用し、Pass@kを使って3つの公開ベンチマークで評価する。
その結果、AceCoderはコード生成におけるLLMの性能を大幅に改善できることがわかった。
1) Pass@1 では、AceCoder は最先端のベースラインを MBPP で 56.4% 、MBJP で 70.7% 、MBJSP で 88.4% で上回っている。
2) AceCoderは、異なるサイズ(6Bから13B)と異なる言語(Python、Java、JavaScript)のLLMで有効である。
(3)人間の開発者はAceCoderのプログラムを好む。
関連論文リスト
- InfiCoder-Eval: Systematically Evaluating the Question-Answering Capabilities of Code Large Language Models [56.723509505549536]
InfiCoder-Evalは、コードのQAベンチマークである。
慎重に選択された234の高品質なStack Overflow質問で構成されており、15のプログラミング言語にまたがっている。
InfiCoder-Eval 上で 80 以上のコード LLM に対して,系統的な評価を行い,一連の知見を得た。
論文 参考訳(メタデータ) (2024-03-11T02:06:30Z) - Code Prompting Elicits Conditional Reasoning Abilities in Text+Code LLMs [69.99031792995348]
自然言語の問題をコードに変換する一連のプロンプトであるコードプロンプトを導入します。
コードプロンプトは複数のLLMに対して高速に向上することがわかった。
GPT 3.5を解析した結果,入力問題のコードフォーマッティングが性能向上に不可欠であることが判明した。
論文 参考訳(メタデータ) (2024-01-18T15:32:24Z) - JumpCoder: Go Beyond Autoregressive Coder via Online Modification [20.314345969604926]
既存のコード大言語モデル(コードLLM)は、コード生成において優れた機能を示すが、可逆性はない。
オンライン修正と非逐次生成を可能とし,LLMを拡張可能な新しいモデル診断フレームワークであるJumpCoderを紹介した。
JumpCoderは、Python用Pass@1の最大3.6%増加、Java用6.3%、マルチ言語HumanEvalベンチマーク用C++用3.7%のコードLLMをサポートする。
論文 参考訳(メタデータ) (2024-01-15T18:04:29Z) - Large Language Model-Aware In-Context Learning for Code Generation [75.68709482932903]
大規模言語モデル(LLM)は、コード生成において印象的なコンテキスト内学習(ICL)能力を示している。
コード生成のためのLAIL (LLM-Aware In-context Learning) という新しい学習ベース選択手法を提案する。
論文 参考訳(メタデータ) (2023-10-15T06:12:58Z) - Structured Chain-of-Thought Prompting for Code Generation [48.43888515848583]
CoTプロンプト(Chain-of-Thought)は最先端のプロンプト技術である。
本研究では、構造化CoT(Structured CoTs)を提案し、コード生成のための新しいプロンプト技術であるSCoTプロンプトを提案する。
論文 参考訳(メタデータ) (2023-05-11T06:43:37Z) - Interactive Code Generation via Test-Driven User-Intent Formalization [60.90035204567797]
大きな言語モデル(LLM)は、非公式な自然言語(NL)の意図からコードを生成する。
自然言語は曖昧であり、形式的な意味論が欠けているため、正確性の概念を定義するのは難しい。
言語に依存しない抽象アルゴリズムと具体的な実装TiCoderについて述べる。
論文 参考訳(メタデータ) (2022-08-11T17:41:08Z) - AugmentedCode: Examining the Effects of Natural Language Resources in
Code Retrieval Models [5.112140303263898]
コード内の既存の情報を活用するAugmented Code(AugmentedCode)検索を導入する。
CodeSearchNet と CodeBERT で平均相反ランク (MRR) が 0.73 と 0.96 で上回る拡張型プログラミング言語の結果を紹介した。
論文 参考訳(メタデータ) (2021-10-16T08:44:48Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。