論文の概要: CodeS: Natural Language to Code Repository via Multi-Layer Sketch
- arxiv url: http://arxiv.org/abs/2403.16443v1
- Date: Mon, 25 Mar 2024 06:09:55 GMT
- ステータス: 処理完了
- システム内更新日: 2024-03-26 15:47:46.373817
- Title: CodeS: Natural Language to Code Repository via Multi-Layer Sketch
- Title(参考訳): CodeS: マルチレイヤスケッチによる自然言語からコードリポジトリ
- Authors: Daoguang Zan, Ailun Yu, Wei Liu, Dong Chen, Bo Shen, Wei Li, Yafen Yao, Yongshun Gong, Xiaolin Chen, Bei Guan, Zhiguang Yang, Yongji Wang, Qianxiang Wang, Lizhen Cui,
- Abstract要約: コードリポジトリ(NL2Repo)に自然言語という新しいソフトウェアエンジニアリングタスクを導入する。
このタスクは、自然言語要求からコードリポジトリ全体を生成することを目的としている。
多層スケッチによりNL2Repoを複数のサブタスクに分解する,シンプルで効果的なフレームワークCodeSを提案する。
- 参考スコア(独自算出の注目度): 33.29324601674667
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: The impressive performance of large language models (LLMs) on code-related tasks has shown the potential of fully automated software development. In light of this, we introduce a new software engineering task, namely Natural Language to code Repository (NL2Repo). This task aims to generate an entire code repository from its natural language requirements. To address this task, we propose a simple yet effective framework CodeS, which decomposes NL2Repo into multiple sub-tasks by a multi-layer sketch. Specifically, CodeS includes three modules: RepoSketcher, FileSketcher, and SketchFiller. RepoSketcher first generates a repository's directory structure for given requirements; FileSketcher then generates a file sketch for each file in the generated structure; SketchFiller finally fills in the details for each function in the generated file sketch. To rigorously assess CodeS on the NL2Repo task, we carry out evaluations through both automated benchmarking and manual feedback analysis. For benchmark-based evaluation, we craft a repository-oriented benchmark, SketchEval, and design an evaluation metric, SketchBLEU. For feedback-based evaluation, we develop a VSCode plugin for CodeS and engage 30 participants in conducting empirical studies. Extensive experiments prove the effectiveness and practicality of CodeS on the NL2Repo task.
- Abstract(参考訳): コード関連タスクにおける大規模言語モデル(LLM)の印象的なパフォーマンスは、完全に自動化されたソフトウェア開発の可能性を示している。
これを踏まえ、我々は、自然言語をコードリポジトリ(NL2Repo)に導入する新しいソフトウェアエンジニアリングタスクを紹介します。
このタスクは、自然言語要求からコードリポジトリ全体を生成することを目的としている。
この課題に対処するために,NL2Repoを複数のサブタスクに分割する,シンプルで効果的なフレームワークであるCodeSを提案する。
具体的には、CodeSにはRepoSketcher、FileSketcher、SketchFillerの3つのモジュールが含まれている。
RepoSketcherは、まず所定の要求に対してリポジトリのディレクトリ構造を生成し、FileSketcherは、生成された構造内の各ファイルのファイルスケッチを生成し、SketchFillerは、生成されたファイルスケッチ内の各関数の詳細を最終的に埋める。
NL2Repoタスク上でCodeSを厳格に評価するために,自動ベンチマークと手動フィードバック解析の両方を用いて評価を行う。
ベンチマークに基づく評価では、リポジトリ指向のベンチマークであるSketchEvalを作成し、評価指標であるSketchBLEUを設計する。
フィードバックに基づく評価では、CodeS用のVSCodeプラグインを開発し、30人の参加者が経験的研究に従事している。
大規模な実験は、NL2RepoタスクにおけるCodeSの有効性と実用性を証明する。
関連論文リスト
- REPOEXEC: Evaluate Code Generation with a Repository-Level Executable Benchmark [5.641402231731082]
RepoExecは、リポジトリレベルのスケールでコード生成を評価するための新しいベンチマークである。
RepoExecは、実行可能性、カバレッジ率の高い自動テストケース生成による機能的正しさ、コードを正確に生成するクロスファイルコンテキストの3つの主な側面に焦点を当てている。
論文 参考訳(メタデータ) (2024-06-17T10:45:22Z) - VersiCode: Towards Version-controllable Code Generation [58.82709231906735]
VersiCodeは,大規模言語モデルが特定のライブラリのバージョンに対して検証可能なコードを生成する能力を評価するために設計された,最初の包括的なデータセットである。
バージョン別コード補完(VSCC)とバージョン別コード編集(VACE)の2つの専用評価タスクを設計する。
LLMのパフォーマンスをベンチマークするために総合的な実験が行われ、これらのタスクとVersiCodeの難しさを明らかにしている。
論文 参考訳(メタデータ) (2024-06-11T16:15:06Z) - SparseCoder: Identifier-Aware Sparse Transformer for File-Level Code
Summarization [51.67317895094664]
本稿では,大規模なソースコードプロジェクトの理解と維持を支援するファイルレベルのコード要約について検討する。
長いコードシーケンスを効果的に処理するための識別子対応スパース変換器であるSparseCoderを提案する。
論文 参考訳(メタデータ) (2024-01-26T09:23:27Z) - RepoCoder: Repository-Level Code Completion Through Iterative Retrieval
and Generation [96.75695811963242]
RepoCoderはリポジトリレベルのコード補完プロセスを合理化するフレームワークである。
類似性ベースのレトリバーと、事前訓練されたコード言語モデルが組み込まれている。
バニラ検索で拡張されたコード補完アプローチよりも一貫して優れています。
論文 参考訳(メタデータ) (2023-03-22T13:54:46Z) - xCodeEval: A Large Scale Multilingual Multitask Benchmark for Code
Understanding, Generation, Translation and Retrieval [32.60391966381949]
我々はこれまでで最大のマルチ言語マルチタスクベンチマークであるxCodeEvalを紹介した。
コード理解、生成、翻訳、検索を含む合計7ドルのタスクが特徴だ。
xCodeEvalは実行ベースの評価を採用し、多言語コード実行エンジンであるExecEvalを提供する。
論文 参考訳(メタデータ) (2023-03-06T10:08:51Z) - SkCoder: A Sketch-based Approach for Automatic Code Generation [44.39900916450189]
そこで我々は,SkCoderというスケッチベースのコード生成手法を提案する。
自然言語の要件が与えられたら、SkCoderは同様のコードスニペットを取得し、コードスケッチとして関連する部分を抽出し、スケッチを所望のコードに編集する。
実験結果によると、SkCoderはより正確なプログラムを生成でき、3つのデータセットで最先端のCodeT5ベースを30.30%、35.39%、29.62%上回っている。
論文 参考訳(メタデータ) (2023-02-13T07:05:39Z) - Python Code Generation by Asking Clarification Questions [57.63906360576212]
本稿では,この課題に対して,より斬新で現実的なセットアップを導入する。
我々は、自然言語記述の過小評価は、明確化を問うことで解決できると仮定する。
我々は、生成した合成明確化質問と回答を含む自然言語記述とコードのペアを含む、CodeClarQAという新しいデータセットを収集し、導入する。
論文 参考訳(メタデータ) (2022-12-19T22:08:36Z) - Repository-Level Prompt Generation for Large Language Models of Code [28.98699307030983]
本稿では,提案手法を用いてサンプル固有のプロンプトを生成するフレームワークを提案する。
プロンプトプロポーザルはリポジトリ全体からコンテキストを取ります。
我々は,Google Codeアーカイブから取得したコードリポジトリを用いて,単行コード自動補完のタスクについて実験を行った。
論文 参考訳(メタデータ) (2022-06-26T10:51:25Z) - ReACC: A Retrieval-Augmented Code Completion Framework [53.49707123661763]
本稿では,語彙のコピーと類似したセマンティクスを持つコード参照の両方を検索により活用する検索拡張コード補完フレームワークを提案する。
我々は,Python および Java プログラミング言語のコード補完タスクにおけるアプローチを評価し,CodeXGLUE ベンチマークで最先端のパフォーマンスを実現する。
論文 参考訳(メタデータ) (2022-03-15T08:25:08Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。