論文の概要: LLMDFA: Analyzing Dataflow in Code with Large Language Models
- arxiv url: http://arxiv.org/abs/2402.10754v2
- Date: Sat, 23 Nov 2024 19:23:14 GMT
- ステータス: 翻訳完了
- システム内更新日: 2024-11-26 14:17:16.455539
- Title: LLMDFA: Analyzing Dataflow in Code with Large Language Models
- Title(参考訳): LLMDFA: 大きな言語モデルでコード内のデータフローを分析する
- Authors: Chengpeng Wang, Wuqi Zhang, Zian Su, Xiangzhe Xu, Xiaoheng Xie, Xiangyu Zhang,
- Abstract要約: 本稿では,コンパイル不要でカスタマイズ可能なデータフロー解析フレームワークLLMDFAを提案する。
問題をいくつかのサブタスクに分解し、一連の新しい戦略を導入する。
LLMDFAは平均87.10%の精度と80.77%のリコールを達成し、F1スコアを最大0.35に向上させた。
- 参考スコア(独自算出の注目度): 8.92611389987991
- License:
- Abstract: Dataflow analysis is a fundamental code analysis technique that identifies dependencies between program values. Traditional approaches typically necessitate successful compilation and expert customization, hindering their applicability and usability for analyzing uncompilable programs with evolving analysis needs in real-world scenarios. This paper presents LLMDFA, an LLM-powered compilation-free and customizable dataflow analysis framework. To address hallucinations for reliable results, we decompose the problem into several subtasks and introduce a series of novel strategies. Specifically, we leverage LLMs to synthesize code that outsources delicate reasoning to external expert tools, such as using a parsing library to extract program values of interest and invoking an automated theorem prover to validate path feasibility. Additionally, we adopt a few-shot chain-of-thought prompting to summarize dataflow facts in individual functions, aligning the LLMs with the program semantics of small code snippets to mitigate hallucinations. We evaluate LLMDFA on synthetic programs to detect three representative types of bugs and on real-world Android applications for customized bug detection. On average, LLMDFA achieves 87.10% precision and 80.77% recall, surpassing existing techniques with F1 score improvements of up to 0.35. We have open-sourced LLMDFA at https://github.com/chengpeng-wang/LLMDFA.
- Abstract(参考訳): データフロー解析は、プログラム値間の依存関係を識別する基本的なコード解析手法である。
従来のアプローチは一般的に、コンパイルと専門家のカスタマイズを成功させる必要があり、現実のシナリオで分析のニーズが進化するにつれて、コンパイル不可能なプログラムを解析するための適用性と使用性を妨げている。
本稿では,LLMDFAについて述べる。LLMDFAはLLMによるコンパイル不要で,カスタマイズ可能なデータフロー解析フレームワークである。
信頼性のある結果に対する幻覚に対処するため,問題をいくつかのサブタスクに分解し,一連の新しい戦略を導入する。
具体的には、LCMを活用して、解析ライブラリを使って興味のあるプログラム値を抽出したり、自動定理証明器を起動してパスの有効性を検証するなど、外部の専門家ツールに微妙な推論をアウトソースするコードを合成する。
さらに、各関数にデータフローの事実をまとめて、小さなコードスニペットのプログラムセマンティクスとLLMを整合させて幻覚を和らげるよう促す。
LLMDFAを合成プログラムで評価し、3種類の代表的なバグを検知し、実世界のAndroidアプリケーションでカスタマイズしたバグ検出を行う。
LLMDFAは平均87.10%の精度と80.77%のリコールを達成し、F1スコアを最大0.35に向上させた。
LLMDFAはhttps://github.com/chengpeng-wang/LLMDFAでオープンソース化しました。
関連論文リスト
- OpenCoder: The Open Cookbook for Top-Tier Code Large Language Models [70.72097493954067]
コードのための大規模言語モデル(LLM)は、コード生成、推論タスク、エージェントシステムなど、さまざまな領域で必須になっている。
オープンアクセスのコード LLM はプロプライエタリなモデルの性能レベルに近づきつつあるが、高品質なコード LLM は依然として限られている。
トップクラスのコードLLMであるOpenCoderは、主要なモデルに匹敵するパフォーマンスを達成するだけでなく、研究コミュニティの"オープンクックブック"としても機能します。
論文 参考訳(メタデータ) (2024-11-07T17:47:25Z) - Impact of Large Language Models of Code on Fault Localization [2.936007114555107]
本稿では,FLタスクのための大規模言語モデルの微調整のための,単純だが効果的なシーケンス生成手法を提案する。
具体的には、FLタスク用の代表エンコーダ、エンコーダデコーダ、デコーダベースの13のLLMCを微調整する。
実験結果から, LLMCは50.6%, 64.2%, 72.3%の誤差位置を検出できた。
論文 参考訳(メタデータ) (2024-08-19T02:36:07Z) - What's Wrong with Your Code Generated by Large Language Models? An Extensive Study [80.18342600996601]
大規模言語モデル(LLM)は、標準解に比べて短いがより複雑なコードを生成する。
3つのカテゴリと12のサブカテゴリを含む誤ったコードに対するバグの分類を開発し、一般的なバグタイプに対する根本原因を分析する。
そこで本研究では,LLMがバグタイプやコンパイラフィードバックに基づいて生成したコードを批判し,修正することのできる,自己批判を導入した新たな学習自由反復手法を提案する。
論文 参考訳(メタデータ) (2024-07-08T17:27:17Z) - CodecLM: Aligning Language Models with Tailored Synthetic Data [51.59223474427153]
命令追従能力のための高品質な合成データを適応的に生成するフレームワークであるCodecLMを紹介する。
まず、ターゲットの指示分布をキャプチャするために、オンザフライで生成された簡潔なキーワードであるメタデータにシード命令をエンコードする。
また、デコード中に自己論理とコントラストフィルタを導入し、データ効率の良いサンプルを調整する。
論文 参考訳(メタデータ) (2024-04-08T21:15:36Z) - An Empirical Study of Automated Vulnerability Localization with Large Language Models [21.84971967029474]
大規模言語モデル(LLM)は、様々な領域において可能性を示しているが、脆弱性のローカライゼーションにおけるその有効性は未解明のままである。
本調査では,ChatGPTや各種オープンソースモデルなど,コード解析に適した10以上のLLMを対象とする。
ゼロショット学習,ワンショット学習,識別的微調整,生成的微調整の4つのパラダイムを用いて,これらのLCMの有効性を検討する。
論文 参考訳(メタデータ) (2024-03-30T08:42:10Z) - Leveraging Large Language Models for Automated Proof Synthesis in Rust [6.202137610101939]
大規模言語モデル(LLM)は、コード解析と合成に成功している。
我々は、LLMと静的解析を組み合わせることで、Verusと呼ばれるRustベースの形式検証フレームワークの不変性、アサーション、その他の証明構造を合成する。
プロトタイプでは,検証タスクを複数の小さなタスクに分割し,反復的にGPT-4をクエリし,その出力と軽量な静的解析を組み合わせる。
論文 参考訳(メタデータ) (2023-11-07T05:47:47Z) - LINC: A Neurosymbolic Approach for Logical Reasoning by Combining
Language Models with First-Order Logic Provers [60.009969929857704]
論理的推論は、科学、数学、社会に潜在的影響を与える可能性のある人工知能にとって重要なタスクである。
本研究では、LINCと呼ばれるモジュール型ニューロシンボリックプログラミングのようなタスクを再構成する。
我々は,FOLIOとProofWriterのバランスの取れたサブセットに対して,ほぼすべての実験条件下で,3つの異なるモデルに対して顕著な性能向上を観察した。
論文 参考訳(メタデータ) (2023-10-23T17:58:40Z) - FederatedScope-LLM: A Comprehensive Package for Fine-tuning Large
Language Models in Federated Learning [70.38817963253034]
本稿では, ファインチューニング LLM のこれらの課題について論じ, 本パッケージ FS-LLM を主な貢献として紹介する。
我々は、FLシナリオにおける将来の拡張のために、包括的フェデレーションパラメータ効率の良い微調整アルゴリズムの実装と汎用プログラミングインタフェースを提供する。
本研究では, FS-LLM の有効性を検証し, FL 設定におけるパラメータ効率の高いパラメータ調整アルゴリズムを用いて, 高度な LLM のベンチマークを行う。
論文 参考訳(メタデータ) (2023-09-01T09:40:36Z) - The Hitchhiker's Guide to Program Analysis: A Journey with Large
Language Models [18.026567399243]
大規模言語モデル(LLM)は静的解析に代わる有望な選択肢を提供する。
本稿では,LLM支援静的解析のオープン空間を深く掘り下げる。
LLiftは,静的解析ツールとLLMの両方を併用した,完全に自動化されたフレームワークである。
論文 参考訳(メタデータ) (2023-08-01T02:57:43Z) - LLMDet: A Third Party Large Language Models Generated Text Detection
Tool [119.0952092533317]
大規模言語モデル(LLM)は、高品質な人間によるテキストに非常に近い。
既存の検出ツールは、機械が生成したテキストと人間によるテキストしか区別できない。
本稿では,モデル固有,セキュア,効率的,拡張可能な検出ツールであるLLMDetを提案する。
論文 参考訳(メタデータ) (2023-05-24T10:45:16Z) - Comparative Code Structure Analysis using Deep Learning for Performance
Prediction [18.226950022938954]
本稿では,アプリケーションの静的情報(抽象構文木やASTなど)を用いてコード構造の変化に基づいて性能変化を予測することの実現可能性を評価することを目的とする。
組込み学習手法の評価により,木系長短メモリ(LSTM)モデルでは,ソースコードの階層構造を利用して遅延表現を発見し,最大84%(個人的問題)と73%(複数の問題を含む組み合わせデータセット)の精度で性能変化を予測できることが示された。
論文 参考訳(メタデータ) (2021-02-12T16:59:12Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。