論文の概要: RepoCoder: Repository-Level Code Completion Through Iterative Retrieval
and Generation
- arxiv url: http://arxiv.org/abs/2303.12570v1
- Date: Wed, 22 Mar 2023 13:54:46 GMT
- ステータス: 処理完了
- システム内更新日: 2023-03-23 13:55:57.217628
- Title: RepoCoder: Repository-Level Code Completion Through Iterative Retrieval
and Generation
- Title(参考訳): RepoCoder: 反復検索と生成によるリポジトリレベルのコード補完
- Authors: Fengji Zhang, Bei Chen, Yue Zhang, Jin Liu, Daoguang Zan, Yi Mao,
Jian-Guang Lou, Weizhu Chen
- Abstract要約: RepoCoderは、この課題に対処するためのシンプルで汎用的で効果的なフレームワークである。
類似性ベースのレトリバーと事前訓練されたコード言語モデルを組み込むことで、リポジトリレベルのコード補完プロセスを合理化する。
また、最新かつ高品質な現実世界リポジトリで構成される新しいベンチマークRepoEvalを提案する。
- 参考スコア(独自算出の注目度): 48.53164081849255
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: The task of repository-level code completion is to continue writing the
unfinished code based on a broader context of the repository. While for
automated code completion tools, it is difficult to utilize the useful
information scattered in different files. We propose RepoCoder, a simple,
generic, and effective framework to address the challenge. It streamlines the
repository-level code completion process by incorporating a similarity-based
retriever and a pre-trained code language model, which allows for the effective
utilization of repository-level information for code completion and grants the
ability to generate code at various levels of granularity. Furthermore,
RepoCoder utilizes a novel iterative retrieval-generation paradigm that bridges
the gap between retrieval context and the intended completion target. We also
propose a new benchmark RepoEval, which consists of the latest and high-quality
real-world repositories covering line, API invocation, and function body
completion scenarios. We test the performance of RepoCoder by using various
combinations of code retrievers and generators. Experimental results indicate
that RepoCoder significantly improves the zero-shot code completion baseline by
over 10% in all settings and consistently outperforms the vanilla
retrieval-augmented code completion approach. Furthermore, we validate the
effectiveness of RepoCoder through comprehensive analysis, providing valuable
insights for future research.
- Abstract(参考訳): リポジトリレベルのコード補完のタスクは、リポジトリのより広いコンテキストに基づいて未完成のコードを書き続けることです。
自動化されたコード補完ツールでは、異なるファイルに散在する有用な情報を利用するのは難しい。
この課題に対処するためのシンプルで汎用的で効果的なフレームワークであるRepoCoderを提案する。
類似度ベースのレトリバーと事前学習されたコード言語モデルを組み合わせて、リポジトリレベルのコード補完プロセスを合理化し、コード補完にリポジトリレベルの情報の有効利用を可能にし、様々なレベルの粒度でコードを生成する機能を提供する。
さらに、RepoCoderは、検索コンテキストと目的とする完了目標とのギャップを埋める、新しい反復検索生成パラダイムを利用する。
また、ライン、API呼び出し、ファンクションボディ補完シナリオをカバーする最新かつ高品質な現実世界リポジトリで構成される新しいベンチマークRepoEvalを提案する。
コードレトリバーとジェネレータの様々な組み合わせを用いて,レポコーダの性能をテストする。
実験の結果,レポコーダはゼロショットコード補完ベースラインを全設定で10%以上向上させ,バニラ検索によるコード補完アプローチを一貫して上回っていることがわかった。
さらに,RepoCoderの有効性を総合分析により検証し,今後の研究に有用な知見を提供する。
関連論文リスト
- RepoHyper: Better Context Retrieval Is All You Need for Repository-Level Code Completion [12.173834895070827]
Toolは、リポジトリレベルのコード補完に関連する複雑な問題に対処するために設計されたフレームワークである。
Em Repoレベルセマンティックグラフ(RSG)は、コードリポジトリの広大なコンテキストをカプセル化する、新しいセマンティックグラフ構造である。
評価の結果,ツールがリポジトリレベルのコード補完において,既存のテクニックを著しく上回っていることが明らかとなった。
論文 参考訳(メタデータ) (2024-03-10T05:10:34Z) - RepoAgent: An LLM-Powered Open-Source Framework for Repository-level
Code Documentation Generation [79.83270415843857]
コードドキュメンテーションを積極的に生成、保守、更新することを目的とした、大規模な言語モデルによるオープンソースフレームワークであるRepoAgentを紹介します。
RepoAgentは高品質なリポジトリレベルのドキュメントを生成するのに優れています。
論文 参考訳(メタデータ) (2024-02-26T15:39:52Z) - A Review of Repository Level Prompting for LLMs [0.0]
大規模言語モデル(LLM)は、HumanEvalベンチマークで94.6%の解決率を達成するなど、顕著な成功を収めている。
GitHub CopilotやTab Nineといったリポジトリレベルのインラインコード補完ツールの商用化が進んでいる。
本稿では,個々のコーディング問題からリポジトリスケールソリューションへの移行について述べる。
論文 参考訳(メタデータ) (2023-12-15T00:34:52Z) - LongCoder: A Long-Range Pre-trained Language Model for Code Completion [56.813974784131624]
LongCoderは自己アテンションにスライディングウィンドウ機構を採用し、グローバルアクセス可能なトークンを2種類導入している。
ブリッジトークンは入力シーケンス全体を通して挿入され、ローカル情報を集約し、グローバルな相互作用を促進する。
メモリトークンは、後で呼び出され、記憶する必要がある重要なステートメントをハイライトするために含まれます。
論文 参考訳(メタデータ) (2023-06-26T17:59:24Z) - Generation-Augmented Query Expansion For Code Retrieval [51.20943646688115]
本稿では,次世代のクエリ拡張フレームワークを提案する。
人間の検索プロセスにインスパイアされた – 検索前に回答をスケッチする。
CodeSearchNetベンチマークで、最先端の新たな結果を得る。
論文 参考訳(メタデータ) (2022-12-20T23:49:37Z) - Repository-Level Prompt Generation for Large Language Models of Code [28.98699307030983]
本稿では,提案手法を用いてサンプル固有のプロンプトを生成するフレームワークを提案する。
プロンプトプロポーザルはリポジトリ全体からコンテキストを取ります。
我々は,Google Codeアーカイブから取得したコードリポジトリを用いて,単行コード自動補完のタスクについて実験を行った。
論文 参考訳(メタデータ) (2022-06-26T10:51:25Z) - Enhancing Semantic Code Search with Multimodal Contrastive Learning and
Soft Data Augmentation [50.14232079160476]
コード検索のためのマルチモーダルコントラスト学習とソフトデータ拡張を用いた新しい手法を提案する。
我々は,6つのプログラミング言語を用いた大規模データセットにおけるアプローチの有効性を評価するために,広範囲な実験を行った。
論文 参考訳(メタデータ) (2022-04-07T08:49:27Z) - ReACC: A Retrieval-Augmented Code Completion Framework [53.49707123661763]
本稿では,語彙のコピーと類似したセマンティクスを持つコード参照の両方を検索により活用する検索拡張コード補完フレームワークを提案する。
我々は,Python および Java プログラミング言語のコード補完タスクにおけるアプローチを評価し,CodeXGLUE ベンチマークで最先端のパフォーマンスを実現する。
論文 参考訳(メタデータ) (2022-03-15T08:25:08Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。