概要: 深層学習手法は自動化されたソフトウェアのバグ検出で注目を集めつつありますが、与えられたコードに対するグローバルな理解を欠いています。その結果、特にそれらを大規模で相互に連結されたコードベースや複雑なモジュール型プログラムに適用した場合に、性能が低下しがちです。近年、大規模言語モデル(LLM)が、コードベース内の複数の相互に連結されたモジュール間の依存関係を捉えるのに有効であることが示されました。そこで我々は、4つのエージェントから構成され、逐次的に動作するFlow-Graph-Driven Multi-Agent Framework(FGDM)を提案しました。この枠組みは、受け取ったコードをフローグラフに変換し、誤りのある箇所を特定し、さらに修復されたコードを生成します。使用するすべてのエージェントは、Chain-of-Thought(COT)およびTree-of-Thoughts(TOT)のプロンプトを利用します。加えて、FAISSのベクターデータベースと統合し、類似した過去のバグとその修復を取得できるようにしました。Ansible、Black、FastAPI、Keras、Luigi、Matplotlib、Pandas、Scrapy、SpaCy、Tornado を含む複数のプロジェクトからの100本超のプログラムについて、CおよびPythonの両方で、提案した枠組みの有効性を実証しました。実験の結果、FGDMは既存の手法を上回り、PythonとCそれぞれにおいて、Levenshtein距離で平均24.33および8.37の削減、cosine similarityでそれぞれ0.951および0.974の類似度を達成しました。
FGDM:Chain of Thought と Tree of Thought による推論対応マルチエージェント・フレームワークを用いたソフトウェアバグ検出
arXiv cs.LG / 2026/4/29
💬 オピニオンDeveloper Stack & InfrastructureModels & Research
要点
- 本論文は、既存のディープラーニングによるソフトウェアバグ検出がコード全体の「グローバルな理解」を欠くため、大規模で相互に結びついたコードベースや複雑なモジュール構成では性能が低下しやすいと主張している。
- 4つのエージェントを順次動作させる FGDM(Flow-Graph-Driven Multi-Agent Framework)を提案し、受け取ったコードをフローグラフに変換して誤り箇所を特定し、修正版コードを生成する。
- FGDMでは、モジュール間の依存関係をより良く扱うために、各エージェントで Chain-of-Thought(COT)と Tree-of-Thought(TOT)プロンプトを用いている。
- 修復プロセスを支援するため、FAISS ベクタDBを統合し、類似する過去のバグとその修復例を検索・活用している。
- Ansible や Pandas、FastAPI、Matplotlib、Scrapy などの複数プロジェクトの 100 本以上のプログラムで評価した結果、FGDMは既存手法を上回り、Levenshtein 距離の平均が Python で 24.33、C で 8.37 減少し、コサイン類似度も Python 0.951、C 0.974 と高い値を示した。



