論文の概要: LLM4Decompile: Decompiling Binary Code with Large Language Models
- arxiv url: http://arxiv.org/abs/2403.05286v3
- Date: Tue, 22 Oct 2024 03:58:20 GMT
- ステータス: 翻訳完了
- システム内更新日: 2024-10-23 14:24:46.457804
- Title: LLM4Decompile: Decompiling Binary Code with Large Language Models
- Title(参考訳): LLM4Decompile: 大きな言語モデルでバイナリコードを分解する
- Authors: Hanzhuo Tan, Qi Luo, Jing Li, Yuqun Zhang,
- Abstract要約: Decompilationはバイナリコードを高レベルのソースコードに変換することを目的としているが、Ghidraのような従来のツールでは読み書きが難しい場合が多い。
LLM4Decompileは,バイナリコードのデコンパイルを訓練した最初の,かつ最大のオープンソースLLMシリーズ(1.3Bから33B)である。
結果、GPT-4oとGhidraをHumanEvalとExeBenchのベンチマークで100%以上上回った。
- 参考スコア(独自算出の注目度): 10.346311290153398
- License:
- Abstract: Decompilation aims to convert binary code to high-level source code, but traditional tools like Ghidra often produce results that are difficult to read and execute. Motivated by the advancements in Large Language Models (LLMs), we propose LLM4Decompile, the first and largest open-source LLM series (1.3B to 33B) trained to decompile binary code. We optimize the LLM training process and introduce the LLM4Decompile-End models to decompile binary directly. The resulting models significantly outperform GPT-4o and Ghidra on the HumanEval and ExeBench benchmarks by over 100% in terms of re-executability rate. Additionally, we improve the standard refinement approach to fine-tune the LLM4Decompile-Ref models, enabling them to effectively refine the decompiled code from Ghidra and achieve a further 16.2% improvement over the LLM4Decompile-End. LLM4Decompile demonstrates the potential of LLMs to revolutionize binary code decompilation, delivering remarkable improvements in readability and executability while complementing conventional tools for optimal results. Our code, dataset, and models are released at https://github.com/albertan017/LLM4Decompile
- Abstract(参考訳): Decompilationはバイナリコードを高レベルのソースコードに変換することを目的としているが、Ghidraのような従来のツールは読み書きが難しい結果を生み出すことが多い。
LLM(Large Language Models)の進歩に触発されて,バイナリコードをデコンパイルするために訓練された,最初の,かつ最大のLLMシリーズ(1.3Bから33B)であるLLM4Decompileを提案する。
LLMのトレーニングプロセスを最適化し、直接バイナリをデコンパイルするLLM4Decompile-Endモデルを導入する。
結果、GPT-4oとGhidraをHumanEvalとExeBenchのベンチマークで100%以上上回った。
さらに、LLM4Decompile-Refモデルを微調整する標準的な改良手法を改良し、Ghidraからのデコンパイルコードを効果的に洗練し、LLM4Decompile-Endよりも16.2%改善する。
LLM4Decompileは、LLMがバイナリコードのデコンパイルに革命をもたらす可能性を実証する。
私たちのコード、データセット、モデルはhttps://github.com/albertan017/LLM4Decompileでリリースされます。
関連論文リスト
- OpenCoder: The Open Cookbook for Top-Tier Code Large Language Models [70.72097493954067]
コードのための大規模言語モデル(LLM)は、コード生成、推論、タスク、エージェントシステムなど、さまざまな領域で必須になっている。
トップクラスのコードLLMであるOpenCoderは、主要なモデルに匹敵するパフォーマンスを達成するだけでなく、研究コミュニティの'オープンクックブック'として機能します。
論文 参考訳(メタデータ) (2024-11-07T17:47:25Z) - 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) - CodeV: Empowering LLMs for Verilog Generation through Multi-Level Summarization [37.4446786461791]
本稿では,オープンソースの命令調整型Verilog生成用LLMであるCodeVを紹介する。
CodeVは以前のオープンソースSOTAを14.4%(VerilogEvalのBetterV)と11.3%(RTLCoder in RTLLM)で相対的に上回っている。
論文 参考訳(メタデータ) (2024-07-15T03:57:20Z) - InverseCoder: Unleashing the Power of Instruction-Tuned Code LLMs with Inverse-Instruct [43.7550233177368]
本稿では,逆ではなくコードスニペットからの命令を要約したINVERSE-INSTRUCTを提案する。
InverseCoder というコード LLM のシリーズを提示する。これは、広範囲のベンチマークにおいて、元のコード LLM のパフォーマンスを上回ります。
論文 参考訳(メタデータ) (2024-07-08T08:00:05Z) - Meta Large Language Model Compiler: Foundation Models of Compiler Optimization [21.161784011956126]
大規模言語モデル(LLM)は、様々なソフトウェア工学やコーディングタスクにまたがる顕著な機能を示している。
しかしながら、コード領域におけるそれらのアプリケーションとコンパイラの最適化については、まだ未検討である。
Meta Large Language Model Compiler (LLM Compiler)は、コード最適化タスクのための、堅牢で、オープンに利用可能な、事前訓練されたモデルのスイートである。
論文 参考訳(メタデータ) (2024-06-27T21:47:48Z) - Performance-Aligned LLMs for Generating Fast Code [2.180216161965907]
コードLLMの出力と性能を一致させる強化学習に基づく手法を提案する。
我々は,一連のベンチマークタスクのベースモデル上でのコード生成の高速化を,微調整モデルにより改善できることを実証した。
論文 参考訳(メタデータ) (2024-04-29T16:52:38Z) - The Era of 1-bit LLMs: All Large Language Models are in 1.58 Bits [129.6765656933016]
我々は1ビットのLarge Language Models (LLMs) 、すなわちBitNet b1.58を導入する。
1.58ビット LLM は、新しい世代の LLM を訓練するための新しいスケーリング法則とレシピを定義している。
これは新しいパラダイムを可能にし、1ビットLLM向けに最適化された特定のハードウェアを設計するための扉を開く。
論文 参考訳(メタデータ) (2024-02-27T18:56:19Z) - 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) - InstructZero: Efficient Instruction Optimization for Black-Box Large
Language Models [117.92988284226765]
大規模言語モデル(LLM)は命令従者であるが、異なる状況に最適な命令を見つけることは困難である。
我々は,オープンソースLLMに適用した低次元ソフトプロンプトを最適化し,ブラックボックスLLMの命令を生成する。
InstructZero は,様々な下流タスクにおいて SOTA 自動命令手法より優れていることを示す。
論文 参考訳(メタデータ) (2023-06-05T17:55:22Z) - LEVER: Learning to Verify Language-to-Code Generation with Execution [64.36459105535]
本稿では,プログラムの実行結果の検証を学習することで,言語からコードへの生成を改善するシンプルな手法であるLEVERを提案する。
具体的には、LLMからサンプリングされたプログラムが、自然言語入力、プログラム自体とその実行結果に基づいて正しいか否かを判定するために、検証者を訓練する。
LEVER はベースコード LLMs (4.6% から 10.9% まで) を継続的に改善し、それらすべてに対して新しい最先端の結果を得る。
論文 参考訳(メタデータ) (2023-02-16T18:23:22Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。