論文の概要: CodeCloak: A Method for Evaluating and Mitigating Code Leakage by LLM Code Assistants
- arxiv url: http://arxiv.org/abs/2404.09066v2
- Date: Sun, 27 Oct 2024 06:44:03 GMT
- ステータス: 翻訳完了
- システム内更新日: 2024-10-29 12:18:46.810617
- Title: CodeCloak: A Method for Evaluating and Mitigating Code Leakage by LLM Code Assistants
- Title(参考訳): CodeCloak: LLMコードアシスタントによるコード漏洩の評価と緩和方法
- Authors: Amit Finkman Noah, Avishag Shapira, Eden Bar Kochva, Inbar Maimon, Dudu Mimran, Yuval Elovici, Asaf Shabtai,
- Abstract要約: CodeCloakは、コードアシスタントサービスに送信する前にプロンプトを操作する、新しいディープ強化学習エージェントである。
CodeCloakは、次の2つの矛盾した目標を達成することを目指している。
- 参考スコア(独自算出の注目度): 22.342331134131744
- License:
- Abstract: LLM-based code assistants are becoming increasingly popular among developers. These tools help developers improve their coding efficiency and reduce errors by providing real-time suggestions based on the developer's codebase. While beneficial, the use of these tools can inadvertently expose the developer's proprietary code to the code assistant service provider during the development process. In this work, we propose a method to mitigate the risk of code leakage when using LLM-based code assistants. CodeCloak is a novel deep reinforcement learning agent that manipulates the prompts before sending them to the code assistant service. CodeCloak aims to achieve the following two contradictory goals: (i) minimizing code leakage, while (ii) preserving relevant and useful suggestions for the developer. Our evaluation, employing StarCoder and Code Llama, LLM-based code assistants models, demonstrates CodeCloak's effectiveness on a diverse set of code repositories of varying sizes, as well as its transferability across different models. We also designed a method for reconstructing the developer's original codebase from code segments sent to the code assistant service (i.e., prompts) during the development process, to thoroughly analyze code leakage risks and evaluate the effectiveness of CodeCloak under practical development scenarios.
- Abstract(参考訳): LLMベースのコードアシスタントは、開発者の間で人気が高まっている。
これらのツールは、開発者のコードベースに基づいたリアルタイム提案を提供することで、コーディング効率の向上とエラーの削減を支援する。
メリットはあるものの、これらのツールを使用することで、開発プロセス中に開発者のプロプライエタリなコードをコードアシスタントサービスプロバイダに不注意に公開することができる。
本研究では,LLMベースのコードアシスタントを用いた場合のコード漏洩のリスクを軽減する手法を提案する。
CodeCloakは、コードアシスタントサービスに送信する前にプロンプトを操作する、新しいディープ強化学習エージェントである。
CodeCloakは以下の2つの矛盾した目標を達成することを目指している。
(i)コードリークを最小限にする一方で
2) 開発者に対して,関連性及び有用な提案を保持すること。
評価では,StarCoder と Code Llama を用いた LLM ベースのコードアシスタントモデルを用いて,さまざまなサイズのコードリポジトリ上での CodeCloak の有効性と,異なるモデル間での転送性を示す。
また、開発プロセス中にコードアシスタントサービス(即ちプロンプト)に送信されたコードセグメントから開発者のオリジナルのコードベースを再構築する手法を設計し、コード漏洩リスクを徹底的に分析し、実用的な開発シナリオ下でのCodeCloakの有効性を評価する。
関連論文リスト
- Codev-Bench: How Do LLMs Understand Developer-Centric Code Completion? [60.84912551069379]
Code-Development Benchmark (Codev-Bench)は、細粒度で現実世界、リポジトリレベル、開発者中心の評価フレームワークです。
Codev-Agentは、リポジトリのクローリングを自動化し、実行環境を構築し、既存のユニットテストから動的呼び出しチェーンを抽出し、データ漏洩を避けるために新しいテストサンプルを生成するエージェントベースのシステムである。
論文 参考訳(メタデータ) (2024-10-02T09:11:10Z) - Chain of Targeted Verification Questions to Improve the Reliability of Code Generated by LLMs [10.510325069289324]
LLMが生成するコードの信頼性向上を目的とした自己補充手法を提案する。
当社のアプローチは,初期コード内の潜在的なバグを特定するために,対象とする検証質問(VQ)に基づいています。
本手法は,LLMをターゲットとするVQと初期コードで再プロンプトすることで,潜在的なバグの修復を試みる。
論文 参考訳(メタデータ) (2024-05-22T19:02:50Z) - AI-powered Code Review with LLMs: Early Results [10.37036924997437]
本稿では,Large Language Model (LLM) ベースのモデルを用いて,ソフトウェアの品質と効率を改善する新しい手法を提案する。
提案するLLMベースのAIエージェントモデルは,大規模コードリポジトリ上でトレーニングされている。
コードの臭いを検出し、潜在的なバグを特定し、改善の提案を提供し、コードを最適化することを目的としている。
論文 参考訳(メタデータ) (2024-04-29T08:27:50Z) - CodeIP: A Grammar-Guided Multi-Bit Watermark for Large Language Models of Code [56.019447113206006]
大規模言語モデル(LLM)はコード生成において顕著な進歩を遂げた。
CodeIPは、新しいマルチビット透かし技術で、出所の詳細を保存するために追加情報を埋め込む。
5つのプログラミング言語にまたがる実世界のデータセットで実施された実験は、CodeIPの有効性を実証している。
論文 参考訳(メタデータ) (2024-04-24T04:25:04Z) - Comments as Natural Logic Pivots: Improve Code Generation via Comment Perspective [85.48043537327258]
本稿では, MANGO (comMents As Natural loGic pivOts) を提案する。
その結果、MANGOは強いベースラインに基づいてコードパス率を大幅に改善することがわかった。
論理的なコメントの復号化戦略の堅牢性は、考えの連鎖よりも顕著に高い。
論文 参考訳(メタデータ) (2024-04-11T08:30:46Z) - 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) - LLM-Powered Code Vulnerability Repair with Reinforcement Learning and
Semantic Reward [3.729516018513228]
我々は,大規模な言語モデルであるCodeGen2を利用した多目的コード脆弱性解析システム texttSecRepair を導入する。
そこで本研究では,LLMを用いた脆弱性解析に適した命令ベースデータセットを提案する。
GitHub上の6つのオープンソースIoTオペレーティングシステムにおいて、ゼロデイとNデイの脆弱性を特定します。
論文 参考訳(メタデータ) (2024-01-07T02:46:39Z) - A^3-CodGen: A Repository-Level Code Generation Framework for Code Reuse with Local-Aware, Global-Aware, and Third-Party-Library-Aware [13.27883339389175]
本稿では,A3-CodGenと呼ばれる新しいコード生成フレームワークを提案する。
その結果、A3-CodGenフレームワークを採用することで、コードリポジトリ情報をLLMに抽出、ヒューズ、フィードし、より正確で、効率的で、再利用性の高いコードを生成します。
論文 参考訳(メタデータ) (2023-12-10T05:36:06Z) - Function-constrained Program Synthesis [12.55507214959886]
大規模言語モデル(LLM)は、開発環境で利用可能なすべてのコードを描画することで、リアルタイムでコードを生成することができる。
現在のシステムには効果的なリカバリ方法が欠如しており、ユーザーは十分な解に到達するまで、修正されたプロンプトでモデルを反復的に再起動せざるを得ない。
提案手法は,コード生成を明示的な関数集合に制約し,自動生成されたサブ関数を通じて失敗した試行からのリカバリを可能にする。
論文 参考訳(メタデータ) (2023-11-27T02:55:34Z) - CONCORD: Clone-aware Contrastive Learning for Source Code [64.51161487524436]
セルフ教師付き事前トレーニングは、多くのダウンストリームSEタスクに価値のあるジェネリックコード表現を学ぶための牽引役になった。
汎用的な表現学習のために、開発者が日々どのようにコードをコーディングするかは、要因としても不可欠である、と私たちは主張する。
特に,表現空間に良性クローンを近づける自己教師型コントラスト学習戦略であるCONCORDを提案する。
論文 参考訳(メタデータ) (2023-06-05T20:39:08Z) - ReACC: A Retrieval-Augmented Code Completion Framework [53.49707123661763]
本稿では,語彙のコピーと類似したセマンティクスを持つコード参照の両方を検索により活用する検索拡張コード補完フレームワークを提案する。
我々は,Python および Java プログラミング言語のコード補完タスクにおけるアプローチを評価し,CodeXGLUE ベンチマークで最先端のパフォーマンスを実現する。
論文 参考訳(メタデータ) (2022-03-15T08:25:08Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。