本記事では、Googleが取り組むエージェントベースのプログラム自動修復に関する研究を紹介します。
プログラムの自動修復は長年の研究課題でしたが、近年のLLMの発展により、バグの特定から修正まで一連の作業を自律的に行えるようになりつつあります。
しかし、その有効性は主にオープンソースのプロジェクトで実証されており、Googleのような企業環境での実用性は未知数でした。そこで同社は実際の社内での取り組みをまとめて報告しています。
発表者情報
- 研究者:Pat Rondon et al.
- 研究機関:Google
背景
プログラムの自動修復(APR:Automated Program Repair)は、長年にわたりプログラミング言語とソフトウェア工学の研究分野で取り組まれてきました。これまでのAPRシステムでは、バグを再現するテストスイートが与えられ、それを用いてバグの修正が試みられてきました。
近年、LLMの進歩により、APRシステムの性能も大きく向上しています。LLMをエージェントとして活用することで、バグの説明から自動的にバグ再現テストを生成し、不具合箇所を特定し、修正候補を生成し、それを検証して解決策を提案するといった一連の作業を自律的に実行できるようになりました。
LLMのバグ修正性能を示す一例として、オープンソースのPythonプロジェクトから収集されたSWE-Benchデータセットでは、エージェントベースのAPRシステムが高い性能を示しています。
しかし、実際の企業環境での有効性はまだ明らかになっていない部分が大きいです。企業のコードベースは多言語で構成され、プロジェクトが複数の領域にまたがり、企業独自のインフラストラクチャで動作するなど、オープンソースとは異なる特徴を持つためです。
そのような状況を受け、Googleの研究者らは社内バグ追跡システムから収集した178件のバグを対象に、エージェントベースのAPRシステムを開発し、その有効性を検証することに取り組みました。
以下で詳しく紹介します。
また記事の購読には、アカウント作成後の決済が必要です。
※ログイン/初回登録後、下記ボタンを押してください。
AIDBとは
プレミアム会員(記事の購読)について
■サポートのお願い
AIDBを便利だと思っていただけた方に、任意の金額でサポートしていただけますと幸いです。