論文の概要: RepoFusion: Training Code Models to Understand Your Repository
- arxiv url: http://arxiv.org/abs/2306.10998v1
- Date: Mon, 19 Jun 2023 15:05:31 GMT
- ステータス: 処理完了
- システム内更新日: 2023-06-21 17:20:31.272659
- Title: RepoFusion: Training Code Models to Understand Your Repository
- Title(参考訳): RepoFusion: リポジトリを理解するためのコードモデルトレーニング
- Authors: Disha Shrivastava, Denis Kocetkov, Harm de Vries, Dzmitry Bahdanau,
Torsten Scholak
- Abstract要約: GitHub Copilotのようなコーディングアシスタントにおける大きな言語モデル(LLM)は、リポジトリに存在するコンテキストを理解するのに苦労している。
最近の研究は、推論中にリポジトリからコンテキストを使用するという約束を示している。
関連するリポジトリコンテキストを組み込むためのモデルをトレーニングするフレームワークであるRepoFusionを提案する。
- 参考スコア(独自算出の注目度): 12.621282610983592
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Despite the huge success of Large Language Models (LLMs) in coding assistants
like GitHub Copilot, these models struggle to understand the context present in
the repository (e.g., imports, parent classes, files with similar names, etc.),
thereby producing inaccurate code completions. This effect is more pronounced
when using these assistants for repositories that the model has not seen during
training, such as proprietary software or work-in-progress code projects.
Recent work has shown the promise of using context from the repository during
inference. In this work, we extend this idea and propose RepoFusion, a
framework to train models to incorporate relevant repository context.
Experiments on single-line code completion show that our models trained with
repository context significantly outperform much larger code models as
CodeGen-16B-multi ($\sim73\times$ larger) and closely match the performance of
the $\sim 70\times$ larger StarCoderBase model that was trained with the
Fill-in-the-Middle objective. We find these results to be a novel and
compelling demonstration of the gains that training with repository context can
bring. We carry out extensive ablation studies to investigate the impact of
design choices such as context type, number of contexts, context length, and
initialization within our framework. Lastly, we release Stack-Repo, a dataset
of 200 Java repositories with permissive licenses and near-deduplicated files
that are augmented with three types of repository contexts. Additionally, we
are making available the code and trained checkpoints for our work. Our
released resources can be found at \url{https://huggingface.co/RepoFusion}.
- Abstract(参考訳): GitHub CopilotのようなコーディングアシスタントにおけるLLM(Large Language Models)の成功にもかかわらず、これらのモデルはリポジトリに存在するコンテキスト(インポート、親クラス、同様の名前のファイルなど)を理解するのに苦労し、不正確なコード補完を生成する。
この効果は、プロプライエタリなソフトウェアやプログレッシブなコードプロジェクトなど、トレーニング中にモデルが見ていないリポジトリにこれらのアシスタントを使用することでより顕著になる。
最近の研究は、推論中にリポジトリからコンテキストを使用するという約束を示している。
本稿では、このアイデアを拡張し、関連するリポジトリコンテキストを組み込むためにモデルをトレーニングするフレームワークであるrepofusionを提案する。
単一行のコード補完実験では、repository contextでトレーニングされたモデルは、codegen-16b-multi (\sim73\times$ large) よりもずっと大きなコードモデルを大きく上回っており、$\sim 70\times$ より大きなstarcoderbaseモデルのパフォーマンスに非常に近いことが分かりました。
これらの結果は、リポジトリコンテキストによるトレーニングがもたらす利益の、新しくて説得力のある実証だと考えています。
我々は,コンテキストタイプ,コンテキスト数,コンテキスト長,フレームワーク内の初期化といった設計選択の影響を調べるために,広範なアブレーション研究を行う。
最後に、私たちは、許容ライセンスと3種類のリポジトリコンテキストで拡張されたほぼ重複したファイルを持つ200のjavaリポジトリのデータセットであるstack-repoをリリースします。
さらに、私たちは仕事のためにコードとトレーニング済みのチェックポイントを公開しています。
リリースしたリソースは \url{https://huggingface.co/RepoFusion} で確認できます。
関連論文リスト
- CodeRAG-Bench: Can Retrieval Augment Code Generation? [78.37076502395699]
検索拡張生成を用いたコード生成の系統的,大規模な解析を行う。
まず、コード生成タスクの3つのカテゴリを含む総合的な評価ベンチマークであるCodeRAG-Benchをキュレートする。
CodeRAG-Bench上のトップパフォーマンスモデルについて、1つまたは複数のソースから検索したコンテキストを提供することにより検討する。
論文 参考訳(メタデータ) (2024-06-20T16:59:52Z) - Long Code Arena: a Set of Benchmarks for Long-Context Code Models [75.70507534322336]
Long Code Arenaは、プロジェクト全体のコンテキストを必要とするコード処理タスクのための6つのベンチマークスイートである。
これらのタスクは、ライブラリベースのコード生成、CIビルドの修復、プロジェクトレベルのコード補完、コミットメッセージ生成、バグローカライゼーション、モジュールの要約といった、コード処理のさまざまな側面をカバーする。
各タスクに対して、テスト用の手作業によるデータセット、評価スイート、オープンソースのベースラインソリューションを提供しています。
論文 参考訳(メタデータ) (2024-06-17T14:58:29Z) - On the Impacts of Contexts on Repository-Level Code Generation [5.641402231731082]
リポジトリレベルのコード生成を評価するために設計された新しいベンチマークである textbfmethodnamews を提案する。
実行可能性、包括的なテストケース生成による機能的正当性、ファイル間のコンテキストの正確な利用という3つの重要な側面に注目します。
論文 参考訳(メタデータ) (2024-06-17T10:45:22Z) - On The Importance of Reasoning for Context Retrieval in Repository-Level Code Editing [82.96523584351314]
我々は、コンテキスト検索のタスクをリポジトリレベルのコード編集パイプラインの他のコンポーネントと分離する。
我々は、推論が収集された文脈の精度を向上させるのに役立っているが、それでもその十分性を識別する能力は欠如していると結論づける。
論文 参考訳(メタデータ) (2024-06-06T19:44:17Z) - Class-Level Code Generation from Natural Language Using Iterative, Tool-Enhanced Reasoning over Repository [4.767858874370881]
実世界のリポジトリ内でクラスレベルのコードを生成する際に,LLMを厳格に評価するためのベンチマークであるRepoClassBenchを紹介する。
RepoClassBenchには、リポジトリの選択からJava、Python、C#にまたがる"Natural Language to Class Generation"タスクが含まれている。
Retrieve-Repotools-Reflect (RRR)は,レポジトリレベルのコンテキストを反復的にナビゲートし,推論する静的解析ツールを備えた新しいアプローチである。
論文 参考訳(メタデータ) (2024-04-22T03:52:54Z) - RepoHyper: Search-Expand-Refine on Semantic Graphs for Repository-Level Code Completion [12.173834895070827]
Toolは、リポジトリレベルのコード補完に関連する複雑な問題に対処するために設計されたフレームワークである。
Em Repoレベルセマンティックグラフ(RSG)は、コードリポジトリの広大なコンテキストをカプセル化する、新しいセマンティックグラフ構造である。
評価の結果,ツールがリポジトリレベルのコード補完において,既存のテクニックを著しく上回っていることが明らかとなった。
論文 参考訳(メタデータ) (2024-03-10T05:10:34Z) - StarCoder 2 and The Stack v2: The Next Generation [105.93298676368798]
私たちは3.3から4.3兆のトークンで3B、7B、15BパラメータでStarCoder2モデルをトレーニングします。
我々は、それらをCode LLMベンチマークの包括的なセットで徹底的に評価する。
私たちの大きなモデルであるStarCoder2-15Bは、同等の大きさの他のモデルよりも大幅に優れています。
論文 参考訳(メタデータ) (2024-02-29T13:53:35Z) - RepoCoder: Repository-Level Code Completion Through Iterative Retrieval
and Generation [96.75695811963242]
RepoCoderはリポジトリレベルのコード補完プロセスを合理化するフレームワークである。
類似性ベースのレトリバーと、事前訓練されたコード言語モデルが組み込まれている。
バニラ検索で拡張されたコード補完アプローチよりも一貫して優れています。
論文 参考訳(メタデータ) (2023-03-22T13:54:46Z) - 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)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。