論文の概要: COMEX: A Tool for Generating Customized Source Code Representations
- arxiv url: http://arxiv.org/abs/2307.04693v1
- Date: Mon, 10 Jul 2023 16:46:34 GMT
- ステータス: 処理完了
- システム内更新日: 2023-07-11 12:25:34.833950
- Title: COMEX: A Tool for Generating Customized Source Code Representations
- Title(参考訳): COMEX: カスタマイズされたソースコード表現を生成するツール
- Authors: Debeshee Das, Noble Saji Mathews, Alex Mathai, Srikanth Tamilselvam,
Kranthi Sedamaki, Sridhar Chimalakonda and Atul Kumar
- Abstract要約: COMEXは、研究者と開発者が複数のコードビューを作成し、組み合わせることを可能にするフレームワークである。
プロシージャ内スニペットとプロシージャ間スニペットの両方を使用して、メソッドレベルのスニペットとプログラムレベルのスニペットの両方を分析することができる。
これは40以上の言語をサポートする、広く使われているインクリメンタル分析ツールであるtree-sitter上に構築されている。
- 参考スコア(独自算出の注目度): 7.151800146054561
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Learning effective representations of source code is critical for any Machine
Learning for Software Engineering (ML4SE) system. Inspired by natural language
processing, large language models (LLMs) like Codex and CodeGen treat code as
generic sequences of text and are trained on huge corpora of code data,
achieving state of the art performance on several software engineering (SE)
tasks. However, valid source code, unlike natural language, follows a strict
structure and pattern governed by the underlying grammar of the programming
language. Current LLMs do not exploit this property of the source code as they
treat code like a sequence of tokens and overlook key structural and semantic
properties of code that can be extracted from code-views like the Control Flow
Graph (CFG), Data Flow Graph (DFG), Abstract Syntax Tree (AST), etc.
Unfortunately, the process of generating and integrating code-views for every
programming language is cumbersome and time consuming. To overcome this
barrier, we propose our tool COMEX - a framework that allows researchers and
developers to create and combine multiple code-views which can be used by
machine learning (ML) models for various SE tasks. Some salient features of our
tool are: (i) it works directly on source code (which need not be compilable),
(ii) it currently supports Java and C#, (iii) it can analyze both method-level
snippets and program-level snippets by using both intra-procedural and
inter-procedural analysis, and (iv) it is easily extendable to other languages
as it is built on tree-sitter - a widely used incremental parser that supports
over 40 languages. We believe this easy-to-use code-view generation and
customization tool will give impetus to research in source code representation
learning methods and ML4SE.
Tool: https://pypi.org/project/comex - GitHub:
https://github.com/IBM/tree-sitter-codeviews - Demo:
https://youtu.be/GER6U87FVbU
- Abstract(参考訳): ソースコードの効果的な表現を学ぶことは、ソフトウェアエンジニアリング(ml4se)システムのための機械学習には不可欠である。
自然言語処理にインスパイアされたCodexやCodeGenといった大規模言語モデル(LLM)は、コードをテキストのジェネリックシーケンスとして扱い、コードの巨大なコーパスに基づいてトレーニングし、いくつかのソフトウェアエンジニアリング(SE)タスクにおけるアートパフォーマンスの状態を達成する。
しかし、有効なソースコードは、自然言語とは異なり、プログラミング言語の基盤となる文法によって支配される厳密な構造とパターンに従う。
現在のLLMは、コードのこの特性を、トークンのシーケンスのように扱い、制御フローグラフ(CFG)、データフローグラフ(DFG)、抽象構文木(AST)などのコードビューから抽出できるコードのキー構造とセマンティックプロパティを、コードの構造とセマンティックプロパティの見落としとして利用していない。
残念ながら、すべてのプログラミング言語でコードビューを生成し統合するプロセスは面倒で時間がかかります。
この障壁を克服するために、研究者や開発者がさまざまなSEタスクのために機械学習(ML)モデルで使用可能な複数のコードビューを作成し、組み合わせられるフレームワークであるCOMEXを提案する。
私たちのツールの素晴らしい特徴は次のとおりです。
(i)ソースコード上で直接動作する(コンパイルは不要)。
(ii) 現在JavaとC#をサポートしている。
(iii)プロシージャ内およびプロシージャ間分析を用いて、メソッドレベルのスニペットとプログラムレベルのスニペットの両方を解析し、
(iv) 40以上の言語をサポートするインクリメンタルパーサであるtree-sitter上に構築されているため、他の言語にも簡単に拡張できる。
この使いやすいコードビュー生成とカスタマイズツールによって、ソースコード表現学習メソッドやml4seの研究が促進されると考えています。
ツール: https://pypi.org/project/comex - github: https://github.com/ibm/tree-sitter-codeviews - デモ: https://youtu.be/ger6u87fvbu
関連論文リスト
- Codellm-Devkit: A Framework for Contextualizing Code LLMs with Program Analysis Insights [9.414198519543564]
codellm-devkit (以下, CLDK') は,プログラム解析のプロセスを大幅に単純化したオープンソースライブラリである。
CLDKは開発者に対して直感的でユーザフレンドリなインターフェースを提供しています。
論文 参考訳(メタデータ) (2024-10-16T20:05:59Z) - Benchmarking LLM Code Generation for Audio Programming with Visual Dataflow Languages [1.559169421643164]
ノードベースのプログラミング言語は、メディアアートコーディングドメインでますます人気がある。
LLMベースのコード生成を使用して、創造的なアウトプットの障壁をさらに低くするというのは、エキサイティングな機会です。
ビジュアルノードベースのプログラミング言語のためのコード生成の最良の戦略は、まだオープンな問題である。
論文 参考訳(メタデータ) (2024-09-01T22:11:23Z) - CodeGRAG: Bridging the Gap between Natural Language and Programming Language via Graphical Retrieval Augmented Generation [58.84212778960507]
我々は,LLMの性能を高めるため,グラフィカル検索拡張コード生成フレームワークであるCodeGRAGを提案する。
CodeGRAGは、制御フローとデータフローに基づいて、コードブロックのグラフィカルなビューを構築し、プログラミング言語と自然言語のギャップを埋める。
ハードメタグラフプロンプト、ソフトプロンプト技術、事前訓練されたGNN専門家の目的の有効性を検証するために、C++言語とピソン言語の両方を含む4つのデータセットで様々な実験と改善が行われた。
論文 参考訳(メタデータ) (2024-05-03T02:48:55Z) - IRCoder: Intermediate Representations Make Language Models Robust Multilingual Code Generators [49.903001442804594]
本研究では、コンパイラ中間表現(IR)を活用して、Code-LMの多言語機能を改善する可能性について検討する。
まず,約400万のソースコードファイルからなる並列データセットであるSLTransをコンパイルする。
次に、SLTransにおける因果言語モデリングトレーニングを継続して実施し、Code-LMはIR言語を学習せざるを得なかった。
IRCoderと呼ばれる結果のモデルは、さまざまなコード生成タスクやメトリクスに対して、サイズと一貫性のあるゲインを表示します。
論文 参考訳(メタデータ) (2024-03-06T17:52:08Z) - LILO: Learning Interpretable Libraries by Compressing and Documenting Code [71.55208585024198]
LILOは、反復的に合成、圧縮、文書化を行う、ニューロシンボリックなフレームワークである。
LILOは、LLM誘導プログラム合成と、Stitchから自動化された最近のアルゴリズムの進歩を組み合わせたものである。
LILOのシンセサイザーが学習した抽象化を解釈し、デプロイするのを手助けすることで、AutoDocがパフォーマンスを向上させることが分かりました。
論文 参考訳(メタデータ) (2023-10-30T17:55:02Z) - CodeLens: An Interactive Tool for Visualizing Code Representations [12.59741038895472]
ソフトウェアエンジニアリングタスクを自動化するためには、ソースコードを汎用的な入力形式で表現することが不可欠である。
コード表現を視覚化することで、人間の専門家がコードに関する直感的な洞察を得られるようになる。
我々は、様々な表現方法をサポートする視覚的相互作用環境を提供するツール、CodeLensを紹介する。
論文 参考訳(メタデータ) (2023-07-27T14:46:09Z) - CodeTF: One-stop Transformer Library for State-of-the-art Code LLM [72.1638273937025]
我々は、最先端のCode LLMとコードインテリジェンスのためのオープンソースのTransformerベースのライブラリであるCodeTFを紹介する。
我々のライブラリは、事前訓練されたコードLLMモデルと人気のあるコードベンチマークのコレクションをサポートします。
CodeTFが機械学習/生成AIとソフトウェア工学のギャップを埋められることを願っている。
論文 参考訳(メタデータ) (2023-05-31T05:24:48Z) - ReACC: A Retrieval-Augmented Code Completion Framework [53.49707123661763]
本稿では,語彙のコピーと類似したセマンティクスを持つコード参照の両方を検索により活用する検索拡張コード補完フレームワークを提案する。
我々は,Python および Java プログラミング言語のコード補完タスクにおけるアプローチを評価し,CodeXGLUE ベンチマークで最先端のパフォーマンスを実現する。
論文 参考訳(メタデータ) (2022-03-15T08:25:08Z) - A Systematic Evaluation of Large Language Models of Code [88.34057460577957]
コードの大規模な言語モデル(LM)は、最近、コードを完成させ、自然言語記述からコードを合成する大きな可能性を示しています。
現在の最先端のコードLMは公開されておらず、モデルやデータ設計の決定について多くの疑問が残されている。
Codexはオープンソースではありませんが、既存のオープンソースモデルはいくつかのプログラミング言語でクローズな結果が得られることが分かりました。
GPT-2アーキテクチャに基づいた2.7Bパラメータを持つ新しいモデルPolyCoderをリリースし、12のプログラミング言語を1台のマシンで249GBのコードでトレーニングした。
論文 参考訳(メタデータ) (2022-02-26T15:53:55Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。