論文の概要: Treefix: Enabling Execution with a Tree of Prefixes
- arxiv url: http://arxiv.org/abs/2501.12339v1
- Date: Tue, 21 Jan 2025 18:13:43 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-01-22 14:26:10.505348
- Title: Treefix: Enabling Execution with a Tree of Prefixes
- Title(参考訳): Treefix: プレフィックスのツリーで実行を実行する
- Authors: Beatriz Souza, Michael Pradel,
- Abstract要約: 本稿では,新しい学習誘導型実行手法であるTreefixを提案する。
これは反復的にプレフィックスのツリーを生成し、そのサブセットはコードスニペット内で実行された行数を最大化するプレフィックスとしてユーザに返される。
Treefixは、学習誘導実行における現在の技術状況と比較して25%と7%のカバレッジを実現しており、コードスニペット内の全行の84%と82%をカバーしている。
- 参考スコア(独自算出の注目度): 18.129031749321058
- License:
- Abstract: The ability to execute code is a prerequisite for various dynamic program analyses. Learning-guided execution has been proposed as an approach to enable the execution of arbitrary code snippets by letting a neural model predict likely values for any missing variables. Although state-of-the-art learning-guided execution approaches, such as LExecutor, can enable the execution of a relative high amount of code, they are limited to predicting a restricted set of possible values and do not use any feedback from previous executions to execute even more code. This paper presents Treefix, a novel learning-guided execution approach that leverages LLMs to iteratively create code prefixes that enable the execution of a given code snippet. The approach addresses the problem in a multi-step fashion, where each step uses feedback about the code snippet and its execution to instruct an LLM to improve a previously generated prefix. This process iteratively creates a tree of prefixes, a subset of which is returned to the user as prefixes that maximize the number of executed lines in the code snippet. In our experiments with two datasets of Python code snippets, Treefix achieves 25% and 7% more coverage relative to the current state of the art in learning-guided execution, covering a total of 84% and 82% of all lines in the code snippets.
- Abstract(参考訳): コードを実行することは、様々な動的プログラム分析の前提条件である。
学習誘導型実行は、ニューラルネットワークが不足する変数の潜在的な値を予測することによって、任意のコードスニペットの実行を可能にするアプローチとして提案されている。
LExecutorのような最先端の学習誘導型実行アプローチは、比較的多くのコードの実行を可能にするが、制限された可能な値セットの予測に限られており、さらに多くのコードを実行するために、以前の実行からのフィードバックは使用されない。
本稿では,LLMを利用して与えられたコードスニペットの実行を可能にするコードプレフィックスを反復的に生成する,新しい学習誘導型実行手法であるTreefixを提案する。
このアプローチは、各ステップがコードスニペットとその実行に関するフィードバックを使用して、以前生成されたプレフィックスを改善するようにLCMに指示する、多段階的な方法でこの問題に対処する。
このプロセスはプレフィックスのツリーを反復的に生成し、そのサブセットはコードスニペット内で実行された行数を最大化するプレフィックスとしてユーザに返される。
Pythonコードスニペットの2つのデータセットによる実験で、Treefixは、学習誘導実行における現在の最先端と比較して25%と7%のカバレッジを実現し、コードスニペットの全行の84%と82%をカバーしています。
関連論文リスト
- CodeTree: Agent-guided Tree Search for Code Generation with Large Language Models [106.11371409170818]
大規模言語モデル(LLM)は、生成されたコードを自己定義し、自律的に改善する機能を持つエージェントとして機能する。
コード生成プロセスの異なる段階における探索空間を効率的に探索するLLMエージェントのためのフレームワークであるCodeTreeを提案する。
具体的には、異なるコーディング戦略を明示的に探求し、対応するコーディングソリューションを生成し、その後、ソリューションを洗練するために統合されたツリー構造を採用しました。
論文 参考訳(メタデータ) (2024-11-07T00:09:54Z) - Large Language Models as Code Executors: An Exploratory Study [29.545321608864295]
本稿では,Large Language Models (LLM) をコードエグゼキュータとして探索する。
OpenAIのo1、GPT-4o、GPT-3.5、DeepSeek、Qwen-Coderなど、さまざまなLLMでこの実現可能性を調べています。
我々は,コードスニペットを行単位で処理し,弱いモデルの精度を平均7.22%向上させるIIP(Iterative Instruction Prompting)技術を導入する。
論文 参考訳(メタデータ) (2024-10-09T08:23:22Z) - DOCE: Finding the Sweet Spot for Execution-Based Code Generation [69.5305729627198]
本稿では,候補生成,$n$-best再ランク,最小ベイズリスク(MBR)復号化,自己老化などを含む包括的フレームワークを提案する。
本研究は,実行ベースメソッドの重要性と,実行ベースメソッドと実行フリーメソッドとの差を明らかにする。
論文 参考訳(メタデータ) (2024-08-25T07:10:36Z) - JumpCoder: Go Beyond Autoregressive Coder via Online Modification [18.9350072969148]
JumpCoderは、人間に似たオンライン修正と非逐次生成が可能な新しいモデルに依存しないフレームワークで、LLMを増強する。
JumpCoderの背景にある重要なアイデアは、生成時に必要に応じて、現在生成されたコードに新しいコードを挿入することである。
論文 参考訳(メタデータ) (2024-01-15T18:04:29Z) - CodeT5+: Open Code Large Language Models for Code Understanding and
Generation [72.1638273937025]
大きな言語モデル (LLM) は膨大なソースコードで事前訓練されており、コードインテリジェンスにおいて顕著な進歩を遂げている。
CodeT5+は、コンポーネントモジュールを柔軟に組み合わせて、幅広い下流のコードタスクに適合させることができるコードのためのエンコーダ-デコーダLLMのファミリーである。
我々は、ゼロショット、微調整、命令調整を含む20以上のコード関連ベンチマークでCodeT5+を広範囲に評価した。
論文 参考訳(メタデータ) (2023-05-13T14:23:07Z) - Code Execution with Pre-trained Language Models [88.04688617516827]
コードインテリジェンスのトレーニング済みモデルのほとんどは実行トレースを無視しており、ソースコードと構文構造のみに依存している。
我々は,大規模かつ現実的なPythonデータセットとコード実行タスクを作成するために,突然変異に基づくデータ拡張手法を開発した。
次に、コード実行事前学習とカリキュラム学習を活用して意味理解を強化するトランスフォーマーモデルであるCodeExecutorを提案する。
論文 参考訳(メタデータ) (2023-05-08T10:00:05Z) - LExecutor: Learning-Guided Execution [21.417049430066616]
本稿では,任意のコードスニペットを制約の少ない方法で実行するための学習誘導型LExecutorを提案する。
キーとなるアイデアは、プログラムが立ち往生する原因となる欠落した値をニューラルモデルに予測させ、これらの値を実行に注入することです。
我々は、人気のあるオープンソースプロジェクトからのPythonコードに対するアプローチと、Stack Overflowから抽出されたコードスニペットについて評価する。
論文 参考訳(メタデータ) (2023-02-05T09:12:07Z) - ReACC: A Retrieval-Augmented Code Completion Framework [53.49707123661763]
本稿では,語彙のコピーと類似したセマンティクスを持つコード参照の両方を検索により活用する検索拡張コード補完フレームワークを提案する。
我々は,Python および Java プログラミング言語のコード補完タスクにおけるアプローチを評価し,CodeXGLUE ベンチマークで最先端のパフォーマンスを実現する。
論文 参考訳(メタデータ) (2022-03-15T08:25:08Z) - CodeRetriever: Unimodal and Bimodal Contrastive Learning [128.06072658302165]
関数レベルのコードセマンティック表現を訓練するために,一様および二様のコントラスト学習を組み合わせたCodeRetrieverモデルを提案する。
ノンモーダルなコントラスト学習のために、文書と関数名に基づいてポジティブなコードペアを構築するためのセマンティックガイド付き手法を設計する。
バイモーダルなコントラスト学習では、コードのドキュメンテーションとインラインコメントを活用して、テキストコードペアを構築します。
論文 参考訳(メタデータ) (2022-01-26T10:54:30Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。