論文の概要: RefExpo: Unveiling Software Project Structures through Advanced Dependency Graph Extraction
- arxiv url: http://arxiv.org/abs/2407.02620v1
- Date: Tue, 2 Jul 2024 19:16:27 GMT
- ステータス: 処理完了
- システム内更新日: 2024-07-04 18:24:13.169964
- Title: RefExpo: Unveiling Software Project Structures through Advanced Dependency Graph Extraction
- Title(参考訳): RefExpo: 高度な依存性グラフ抽出によるソフトウェアプロジェクト構造の構築
- Authors: Vahid Haratian, Pouria Derakhshanfar, Vladimir Kovalenko, Eray Tüzün,
- Abstract要約: RefExpoは、Java、Python、JavaScriptなどの複数の言語をサポートする、使いやすいDG抽出ツールである。
IntelliJプラグインSDKに基づいて、RefExpoはさまざまなプロジェクト構造と技術バージョンとの互換性を保証する。
また、20のJavaおよびPythonプロジェクトのデータセットも提供しています。
- 参考スコア(独自算出の注目度): 4.213593962963307
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Assessing the dependency graph (DG) of a software project offers valuable insights for identifying its key components. Numerous studies have explored extracting DGs and leveraging them for various analyses, including security and bus factor calculations. However, there is a lack of user-friendly tools for DG extraction, and no comprehensive DG datasets from open-source projects are available. This study introduces RefExpo, an easy-to-use DG extraction tool supporting multiple languages like Java, Python, and JavaScript. Based on the IntelliJ plugin SDK, RefExpo ensures compatibility with various project structures and technology versions. We also provide a dataset of 20 Java and Python projects, with plans to expand upon request. To validate RefExpo we focused on Java and Python. Our tests showed RefExpo achieving 92% and 100% recall on micro test suites Judge and PyCG for Python and Java, respectively. In macro-level experiments, RefExpo outperformed existing tools by at least 31% and 7% in finding unique and shared results. You can access the source code of our tool from our replication package1. The installable version of RefExpo is available on the IntelliJ marketplace. Additionally, a short video describing its functionality can be viewed here: https://youtu.be/eCnPUlj6YgA.
- Abstract(参考訳): ソフトウェアプロジェクトの依存性グラフ(DG)を評価することは、重要なコンポーネントを特定する上で貴重な洞察を提供する。
多くの研究がDGを抽出し、セキュリティやバスファクターの計算など様々な分析に利用している。
しかし、DG抽出のためのユーザフレンドリなツールが欠如しており、オープンソースプロジェクトからの包括的なDGデータセットが利用できない。
この記事では、Java、Python、JavaScriptなどの複数の言語をサポートする、使い易いDG抽出ツールであるRefExpoを紹介した。
IntelliJプラグインSDKに基づいて、RefExpoはさまざまなプロジェクト構造と技術バージョンとの互換性を保証する。
また、20のJavaおよびPythonプロジェクトのデータセットも提供しています。
RefExpoを検証するために、JavaとPythonに焦点を当てました。
マイクロテストスイートではRefExpoが92%,マイクロテストスイートでは100%リコールされた。
マクロレベルの実験では、RefExpoは、独特で共有された結果を見つける上で、既存のツールを少なくとも31%、7%上回った。
私たちのツールのソースコードは、レプリケーションパッケージ1からアクセスできます。
RefExpoのインストール可能なバージョンはIntelliJマーケットプレースで入手できる。
さらに、機能を説明する短いビデオは、https://youtu.be/eCnPUlj6YgA.com/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s /s/s/s
関連論文リスト
- ToolHop: A Query-Driven Benchmark for Evaluating Large Language Models in Multi-Hop Tool Use [51.43211624452462]
995のユーザクエリと3,912の関連ツールからなるデータセットであるToolHopを提示する。
ToolHopは、多様なクエリ、意味のある相互依存性、ローカル実行可能なツール、詳細なフィードバック、検証可能な回答を保証する。
5つのモデルファミリーにまたがる14のLSMを評価し、マルチホップツールの使用シナリオを扱う上で重要な課題を明らかにした。
論文 参考訳(メタデータ) (2025-01-05T11:06:55Z) - ExecRepoBench: Multi-level Executable Code Completion Evaluation [45.963424627710765]
本稿では,リポジトリレベルのベンチマークであるExecRepoBenchの作成を通じて,ソフトウェア開発におけるコード補完を強化する新しいフレームワークを紹介する。
本稿では,抽象構文木をベースとした多段階文法ベースの補完手法を提案し,様々な論理単位のコードフラグメントをマスキングする。
次に,Repo-Instruct の 7B パラメータでオープンソースの LLM を微調整し,強力なコード補完ベースラインモデル Qwen2.5-Coder-Instruct-C を生成する。
論文 参考訳(メタデータ) (2024-12-16T17:14:35Z) - Class-Level Code Generation from Natural Language Using Iterative, Tool-Enhanced Reasoning over Repository [4.767858874370881]
実世界のリポジトリ内でクラスレベルのコードを生成する際に,LLMを厳格に評価するためのベンチマークであるRepoClassBenchを紹介する。
RepoClassBenchには、リポジトリの選択からJava、Python、C#にまたがる"Natural Language to Class Generation"タスクが含まれている。
Retrieve-Repotools-Reflect (RRR)は,レポジトリレベルのコンテキストを反復的にナビゲートし,推論する静的解析ツールを備えた新しいアプローチである。
論文 参考訳(メタデータ) (2024-04-22T03:52:54Z) - ReGAL: Refactoring Programs to Discover Generalizable Abstractions [59.05769810380928]
Generalizable Abstraction Learning (ReGAL)は、再利用可能な関数のライブラリをコード化して学習する手法である。
ReGALによって発見された共有関数ライブラリは、プログラムが様々な領域で容易に予測できることを示している。
CodeLlama-13Bでは、ReGALはLOGOで11.5%、日付理解で26.1%、TextCraftで8.1%という絶対精度が向上し、3つのドメインのうち2つでGPT-3.5を上回った。
論文 参考訳(メタデータ) (2024-01-29T18:45:30Z) - EASYTOOL: Enhancing LLM-based Agents with Concise Tool Instruction [56.02100384015907]
EasyToolは、多種多様で長いツールドキュメントを統一的で簡潔なツール命令に変換するフレームワークである。
トークン使用量を大幅に削減し、現実のシナリオにおけるツール利用のパフォーマンスを向上させることができる。
論文 参考訳(メタデータ) (2024-01-11T15:45:11Z) - ControlLLM: Augment Language Models with Tools by Searching on Graphs [97.62758830255002]
我々は,大規模言語モデル(LLM)が実世界のタスクを解くためのマルチモーダルツールを利用できる新しいフレームワークであるControlLLMを提案する。
フレームワークは,(1)複雑なタスクを明確なサブタスクに分割し,入力と出力を適切に定義したサブタスクに分解するtextittask Decomposer,(2)構築済みのツールグラフ上で最適なソリューションパスを探索する textitThoughts-on-Graph(ToG)パラダイム,(3)ソリューションパスを解釈して実行するリッチなツールボックスを備えた textitexecution Engine,の3つの主要なコンポーネントから構成される。
論文 参考訳(メタデータ) (2023-10-26T21:57:21Z) - scg-cli -- a Tool Supporting Software Comprehension via Extraction and
Analysis of Semantic Code Graph [0.0]
scg-cliは、ソフトウェアの理解を容易にするコマンドラインツールである。
JavaおよびScalaプロジェクトから、コード構造と依存関係に関するセマンティック情報を取り出す。
プロジェクトメトリクスを取得し、最も重要なコードエンティティを見つけ、プロジェクトのパーティショニングを計算するのに使うことができる。
論文 参考訳(メタデータ) (2023-10-03T19:04:51Z) - CRAFT: Customizing LLMs by Creating and Retrieving from Specialized
Toolsets [75.64181719386497]
大規模言語モデル(LLM)のためのツール作成・検索フレームワークであるCRAFTを提案する。
タスク用に特別にキュレートされたツールセットを作成し、複雑なタスクを解決する能力を高めるためにこれらのセットからツールを取得するコンポーネントをLLMに装備する。
本手法はフレキシブルに設計されており,既製のLCMを細かな調整なしに未確認領域やモダリティに適応するためのプラグアンドプレイ方式を提供する。
論文 参考訳(メタデータ) (2023-09-29T17:40:26Z) - ToolLLM: Facilitating Large Language Models to Master 16000+ Real-world
APIs [104.37772295581088]
オープンソースの大規模言語モデル(LLM)、例えばLLaMAは、ツール使用能力に大きく制限されている。
データ構築、モデルトレーニング、評価を含む汎用ツールであるToolLLMを紹介する。
ツール使用のためのインストラクションチューニングフレームワークであるToolBenchを,ChatGPTを使って自動構築する。
論文 参考訳(メタデータ) (2023-07-31T15:56:53Z) - A Language Model of Java Methods with Train/Test Deduplication [5.529795221640365]
このツールデモでは、Javaソースコードの言語モデルの研究ツールキットが紹介されている。
対象読者には、Javaのサブルーチン、ステートメント、変数の粒度レベルでの問題を研究する研究者も含まれる。
論文 参考訳(メタデータ) (2023-05-15T00:22:02Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。