論文の概要: Generative Compilation: On-the-Fly Compiler Feedback as AI Generates Code
- arxiv url: http://arxiv.org/abs/2607.13921v2
- Date: Thu, 16 Jul 2026 21:41:50 GMT
- ステータス: 翻訳完了
- システム内更新日: 2026-07-20 13:50:44.357173
- Title: Generative Compilation: On-the-Fly Compiler Feedback as AI Generates Code
- Title(参考訳): 生成コンパイル: AIによるコード生成によるオンザフライコンパイラのフィードバック
- Abstract要約: 本稿では、生成中の部分的プログラムに対するコンパイラフィードバックを得るための最初のアプローチである生成コンパイルを紹介する。
生成的コンパイルが非コンパイル出力を削減し、標準のポストジェネレーションフィードバックと比較して機能的正当性を向上させることを示す。
- 参考スコア(独自算出の注目度): 43.07697210931911
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Languages with rich static semantics, such as Rust, provide stronger guarantees for AI-generated code, but their strictness makes generation more difficult. Off-the-shelf compilers can provide useful feedback post-generation, but does not guide intermediate generation steps, such as those during autoregressive LLM decoding. Constrained decoding intervenes earlier by rejecting invalid tokens during sampling, but requires white-box model access and costly reimplementation for semantic constraints. We introduce generative compilation, the first approach to obtaining compiler feedback on partial programs during generation. The core technical device is a sealor: a lightweight, mostly syntax-guided transformation that converts partial programs into complete ones that standard compilers can diagnose. It is designed such that possible-to-complete partial programs are never rejected, while preserving enough code context to catch genuine dead ends early. We construct such a sealor on a core Rust-like calculus and prove that it satisfies these properties, all mechanized in Lean. We extend it to the first partial-program checker for real Rust. We evaluate our method on challenging repository-level Rust coding tasks, across both frontier black-box and open-weight models. We show that generative compilation reduces non-compiling outputs and improves functional correctness, relative to standard post-generation feedback. It does so by detecting a broad range of errors close to their source and early during generation, thereby reducing errors cascades and enabling focused diagnostics. More broadly, generative compilation is a step toward making compilers a first-class citizen of AI-assisted programming active during generation, rather than a separate post-generation check.
- Abstract(参考訳): Rustのようなリッチな静的セマンティクスを持つ言語は、AI生成コードに対してより強力な保証を提供するが、その厳しさによって生成が難しくなる。
オフザシェルフコンパイラは、生成後の有用なフィードバックを提供することができるが、自動回帰LDMデコーディングのような中間生成ステップをガイドしない。
制限付き復号化はサンプリング中に無効なトークンを拒否することで早期に介入するが、ホワイトボックスモデルアクセスとセマンティック制約に対するコストのかかる再実装が必要である。
本稿では、生成中の部分的プログラムに対するコンパイラフィードバックを得るための最初のアプローチである生成コンパイルを紹介する。
部分的なプログラムを標準コンパイラが診断できる完全なプログラムに変換する、軽量で大部分が構文誘導型変換である。
完全な部分的なプログラムは一度も拒否されないよう設計されており、真のデッドエンドを早期にキャッチするのに十分なコードコンテキストを保っている。
コアのRustライクな計算上にこのようなアザラシを構築して,これらプロパティがすべてリーンで機械化されていることを証明します。
実際のRust用の最初の部分プログラムチェッカーに拡張します。
我々は、最前線のブラックボックスとオープンウェイトモデルの両方で、リポジトリレベルのRustコーディングタスクに挑戦する手法を評価した。
生成的コンパイルが非コンパイル出力を削減し、標準のポストジェネレーションフィードバックと比較して機能的正当性を向上させることを示す。
これにより、ソースに近い広範囲のエラーを、生成時に早期に検出し、エラーカスケードを低減し、集中診断を可能にする。
より広義には、生成コンパイルは、コンパイラを世代別チェックではなく、世代間AI支援プログラミングの第一級市民にするためのステップである。
関連論文リスト
- Finding Compiler-Platform Interaction Bugs in Deep Learning Pipelines via Cross-Layer Constraints [6.16235197336957]
ディープラーニング(DL)コンパイラのテストは、コンパイルスタック全体に埋め込まれた暗黙の制約に依存するため、難しい。
既存のテストアプローチでは、入力モデルの生成を制限するために、主に型制約を取ります。
本稿では,スケーラブルで自動的なDLコンパイラテストフレームワークを提案する。
論文 参考訳(メタデータ) (2026-06-16T19:15:17Z) - Decaf: Improving Neural Decompilation with Automatic Feedback and Search [64.02615739798277]
高レベルな構文、識別子、カスタムデータ型は一般的に失われ、コンパイラは人間可読なコードを低レベルなマシンコードに変換する。
生成AIモデルは、ハイレベルな構文、識別子、型を再構築するのに自然なものだ。
コンパイラフィードバックは,サーチによるニューラルデコンパイラ出力のセマンティックな正当性の向上に有効である,と我々は主張する。
論文 参考訳(メタデータ) (2026-05-12T04:21:26Z) - LLM4C2Rust: Large Language Models for Automated Memory-Safe Code Transpilation [1.4490522938516996]
Rustは、最も若いモダンプログラミング言語の1つで、組み込みのメモリセーフティ保証を提供する。
C/C++コードをメモリセーフなRustコードにトランスパイルすることは、研究の領域が増えている。
本稿では,C/C++-to-Rustトランスパイルを実現するためのRAG(Retrieval-Augmented Generation)フレームワークを提案する。
論文 参考訳(メタデータ) (2026-04-16T19:33:44Z) - Superset Decompilation [7.989066784325648]
decompilationはコンパイルの逆で、モジュラーパスのシーケンスとして構成できる。
我々はこれを、バイナリに関する事実を一元的にリレーショナルストアに導出するフレームワークである、証明誘導スーパーセットデコンパイル(PGSD)として定式化する。
Mandelは、宣言的なリバースエンジニアリングフレームワークとしてPGSDを実装しており、Linux ELFバイナリを35K行のRustとDatalogの粒度の中間表現を通じてC99に引き上げている。
論文 参考訳(メタデータ) (2026-03-30T03:47:19Z) - Context-Guided Decompilation: A Step Towards Re-executability [50.71992919223209]
バイナリ逆コンパイルは、ソフトウェアセキュリティ分析、リバースエンジニアリング、マルウェア理解において重要な役割を果たす。
大規模言語モデル (LLMs) の最近の進歩により、ニューラルデコンパイルが可能になったが、生成されたコードは一般的に意味論的にのみ使用可能である。
In-context Learning(ICL)を活用して,再実行可能なソースコードを生成するためのILC4Decompを提案する。
論文 参考訳(メタデータ) (2025-11-03T17:21:39Z) - Type-Constrained Code Generation with Language Models [51.03439021895432]
本稿では,型システムを利用してコード生成を誘導する型制約デコード手法を提案する。
そこで本研究では,新しい接頭辞オートマトンと,在来型を探索する手法を開発し,LLM生成コードに適切な型付けを強制するための健全なアプローチを構築した。
提案手法は,コード合成,翻訳,修復作業において,コンパイルエラーを半分以上削減し,機能的正しさを著しく向上させる。
論文 参考訳(メタデータ) (2025-04-12T15:03:00Z) - Context-aware Code Segmentation for C-to-Rust Translation using Large Language Models [1.8416014644193066]
大きな言語モデル(LLM)は、ルールベースのメソッドよりも自然で安全なコードを生成することで、この翻訳を自動化することを約束している。
大規模Cコードをコンパイル可能なRustコードに変換する際の成功率を改善するLLMベースの翻訳方式を提案する。
4キロのコードを含む20のベンチマークCプログラムの実験では、すべてのプログラムをコンパイル可能なRustコードに変換することに成功した。
論文 参考訳(メタデータ) (2024-09-16T17:52:36Z) - Decoding at the Speed of Thought: Harnessing Parallel Decoding of Lexical Units for LLMs [57.27982780697922]
大規模言語モデルは、自然言語の理解と生成において例外的な能力を示した。
しかし、それらの生成速度は、その復号過程の本質的にシーケンシャルな性質によって制限される。
本稿では,データ駆動方式で実装された新しいデコーディング手法であるLexical Unit Decodingを紹介する。
論文 参考訳(メタデータ) (2024-05-24T04:35:13Z) - Outline, Then Details: Syntactically Guided Coarse-To-Fine Code
Generation [61.50286000143233]
ChainCoderは、Pythonコードを段階的に生成するプログラム合成言語モデルである。
自然言語記述と構文的に整合したI/Oデータサンプルを共同で符号化するために、カスタマイズされたトランスフォーマーアーキテクチャを利用する。
論文 参考訳(メタデータ) (2023-04-28T01:47:09Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。