論文の概要: AI Coders Are Among Us: Rethinking Programming Language Grammar Towards Efficient Code Generation
- arxiv url: http://arxiv.org/abs/2404.16333v1
- Date: Thu, 25 Apr 2024 04:46:02 GMT
- ステータス: 処理完了
- システム内更新日: 2024-04-26 14:48:28.150624
- Title: AI Coders Are Among Us: Rethinking Programming Language Grammar Towards Efficient Code Generation
- Title(参考訳): AIプログラマは、効率的なコード生成に向けてプログラミング言語文法を再考する
- Authors: Zhensu Sun, Xiaoning Du, Zhou Yang, Li Li, David Lo,
- Abstract要約: 私たちはSimple Python(SimPy)という,Pythonの最初のAI指向文法を実装しました。
オリジナルのPythonと比較して、SimPyはトークン使用量を13.5%削減し、CodeLlamaとGPT-4は10.4%削減した。
- 参考スコア(独自算出の注目度): 14.831115535710692
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Besides humans and machines, Artificial Intelligence (AI) models have emerged to be another important audience of programming languages, as we come to the era of large language models (LLMs). LLMs can now excel at coding competitions and even program like developers to address various tasks, such as math calculation. Yet, the grammar and layout of existing programs are designed for humans. Particularly, abundant grammar tokens and formatting tokens are included to make the code more readable to humans. While beneficial, such a human-centric design imposes an unnecessary computational burden on LLMs where each token, either consumed or generated, consumes computational resources. To improve inference efficiency and reduce computational costs, we propose the concept of AI-oriented grammar, which aims to represent the code in a way that better suits the working mechanism of AI models. Code written with AI-oriented grammar discards formats and uses a minimum number of tokens to convey code semantics effectively. To demonstrate the feasibility of this concept, we explore and implement the first AI-oriented grammar for Python, named Simple Python (SimPy). SimPy is crafted by revising the original Python grammar through a series of heuristic rules. Programs written in SimPy maintain identical Abstract Syntax Tree (AST) structures to those in standard Python, allowing execution via a modified AST parser. In addition, we explore methods to enable existing LLMs to proficiently understand and use SimPy, and ensure the changes remain imperceptible for human developers. Compared with the original Python, SimPy not only reduces token usage by 13.5% and 10.4% for CodeLlama and GPT-4, but can also achieve equivalent, even improved, performance over the models trained on Python code.
- Abstract(参考訳): 人間や機械以外にも、大規模言語モデル(LLM)の時代になると、人工知能(AI)モデルは、プログラミング言語の別の重要なオーディエンスとして現れています。
LLMは、コーディングコンペティションや、計算計算など、さまざまなタスクに対処する開発者などのプログラムにも長けている。
しかし、既存のプログラムの文法とレイアウトは人間のために設計されている。
特に、コードを読みやすくするために、豊富な文法トークンとフォーマットトークンが含まれている。
有益ではあるが、そのような人間中心の設計は、それぞれのトークンが消費されるか、生成されるか、計算資源を消費するLLMに不要な計算負担を課す。
推論効率の向上と計算コストの削減を目的として,AIモデルの動作機構によく適合する方法でコードを表現することを目的とした,AI指向文法の概念を提案する。
AI指向文法で書かれたコードはフォーマットを捨て、コードのセマンティクスを効果的に伝達するために最小限のトークンを使用する。
この概念の実現可能性を示すため、我々はSimple Python (SimPy) と呼ばれるPythonの最初のAI指向文法を探索し、実装した。
SimPyは、一連のヒューリスティックなルールを通じて、オリジナルのPython文法を改訂することで開発されている。
SimPyで書かれたプログラムは、AST構文木 (Abstract Syntax Tree, AST) 構造を標準Pythonと同一に維持し、修正されたASTパーサによる実行を可能にする。
さらに、既存のLLMがSimPyを十分に理解し、使用できるようにし、変更が人間開発者には受け入れられないようにする方法についても検討する。
オリジナルのPythonと比較して、SimPyはトークン使用量を13.5%削減し、CodeLlamaとGPT-4は10.4%削減した。
関連論文リスト
- Effective LLM-Driven Code Generation with Pythoness [0.0]
Pythonessは、大きな言語モデル(LLM)を使用したコード生成のための組み込みドメイン固有言語である。
Pythonessでは、関数やクラス、プログラム全体を記述する際に、開発者は振る舞い仕様のレベルで動作します。
Pythonessは、テストとコード生成の組み合わせをうまく利用して、仕様のみよりも高品質なコードを生成することができることを示す。
論文 参考訳(メタデータ) (2025-01-03T23:14:46Z) - Is This You, LLM? Recognizing AI-written Programs with Multilingual Code Stylometry [3.6936359356095454]
我々は,LLMが生成するコードと人間が記述したコードとを区別する,AIコードスタイメトリーの技法を紹介する。
H-AIRosettaMPもリリースしました。H-AIRosettaMPはAIコードスタイメトリータスクのための新しいオープンデータセットで、10の人気のあるプログラミング言語で121の247のコードスニペットで構成されています。
論文 参考訳(メタデータ) (2024-12-19T08:00:20Z) - CRUXEval-X: A Benchmark for Multilingual Code Reasoning, Understanding and Execution [50.7413285637879]
CRUXEVAL-Xコード推論ベンチマークには19のプログラミング言語が含まれている。
各言語に対して少なくとも600人の被験者で構成され、合計19Kのコンテンツ一貫性テストがある。
Pythonでのみトレーニングされたモデルでさえ、他の言語で34.4%のPass@1を達成することができる。
論文 参考訳(メタデータ) (2024-08-23T11:43:00Z) - Learning to Reason via Program Generation, Emulation, and Search [33.11955431589091]
言語モデル(LM)によるプログラム合成は、多くの推論能力を解放した。
すべての推論タスクは、コードとして容易に表現できるわけではない。例えば、常識的推論、道徳的意思決定、皮肉な理解を含むタスクである。
我々は,プログラム合成スキルをこのようなタスクに拡張するために,コード生成とエミュレートされた実行(CoGEX)を提案する。
論文 参考訳(メタデータ) (2024-05-25T19:40:50Z) - LILO: Learning Interpretable Libraries by Compressing and Documenting Code [71.55208585024198]
LILOは、反復的に合成、圧縮、文書化を行う、ニューロシンボリックなフレームワークである。
LILOは、LLM誘導プログラム合成と、Stitchから自動化された最近のアルゴリズムの進歩を組み合わせたものである。
LILOのシンセサイザーが学習した抽象化を解釈し、デプロイするのを手助けすることで、AutoDocがパフォーマンスを向上させることが分かりました。
論文 参考訳(メタデータ) (2023-10-30T17:55:02Z) - Guess & Sketch: Language Model Guided Transpilation [59.02147255276078]
学習されたトランスパイレーションは、手作業による書き直しやエンジニアリングの取り組みに代わるものだ。
確率的ニューラルネットワークモデル(LM)は、入力毎に可塑性出力を生成するが、正確性を保証するコストがかかる。
Guess & Sketch は LM の特徴からアライメントと信頼性情報を抽出し、意味的等価性を解決するためにシンボリック・ソルバに渡す。
論文 参考訳(メタデータ) (2023-09-25T15:42:18Z) - PAL: Program-aided Language Models [112.94785609781503]
自然言語問題を理解するために,プログラム支援言語モデル(PaL)を提案する。
PaLはソリューションステップをPythonインタプリタのようなプログラムランタイムにオフロードする。
私たちは12のベンチマークで新しい最先端の結果を設定しました。
論文 参考訳(メタデータ) (2022-11-18T18:56:13Z) - Repairing Bugs in Python Assignments Using Large Language Models [9.973714032271708]
本稿では,プログラム代入のためのAPRシステムを構築するために,コード上で訓練された大規模言語モデルを提案する。
本システムでは,複数モーダルプロンプト,反復クエリ,テストケースベースの数ショット選択,プログラムチャンキングを組み合わせることで,構文的および意味的誤りを解消することができる。
我々は,286の実際の学生プログラム上でMMAPRを評価し,最新のPython構文修復エンジン,BIFI,最新のPython意味修復エンジンを組み合わせたベースラインであるRefactoryと比較した。
論文 参考訳(メタデータ) (2022-09-29T15:41:17Z) - Interactive Code Generation via Test-Driven User-Intent Formalization [60.90035204567797]
大きな言語モデル(LLM)は、非公式な自然言語(NL)の意図からコードを生成する。
自然言語は曖昧であり、形式的な意味論が欠けているため、正確性の概念を定義するのは難しい。
言語に依存しない抽象アルゴリズムと具体的な実装TiCoderについて述べる。
論文 参考訳(メタデータ) (2022-08-11T17:41:08Z) - Language Models Can Teach Themselves to Program Better [4.627023679353507]
近年の言語モデル (LM) は、人間の許可を受けた問題で訓練された場合、コード生成において画期的な性能を達成する。
そこで本研究では,Pythonインタプリタの正しさをフィルタするプログラミング問題と解を,LMが合成可能であることを示す。
LMの性能は、独自の合成問題と検証された解を微調整することで改善される。
論文 参考訳(メタデータ) (2022-07-29T06:43:28Z) - ReACC: A Retrieval-Augmented Code Completion Framework [53.49707123661763]
本稿では,語彙のコピーと類似したセマンティクスを持つコード参照の両方を検索により活用する検索拡張コード補完フレームワークを提案する。
我々は,Python および Java プログラミング言語のコード補完タスクにおけるアプローチを評価し,CodeXGLUE ベンチマークで最先端のパフォーマンスを実現する。
論文 参考訳(メタデータ) (2022-03-15T08:25:08Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。