Innovative Tech
リポジトリ全体のコーディング作業を一気に自動編集する生成AI「CodePlan」 米Microsoftが開発
Innovative Tech:
このコーナーでは、2014年から先端テクノロジーの研究を論文単位で記事にしているWebメディア「Seamless」(シームレス)を主宰する山下裕毅氏が執筆。新規性の高い科学論文を山下氏がピックアップし、解説する。
Twitter: @shiropen2
Microsoft Researchに所属する研究者らが発表した論文「CodePlan: Repository-level Coding using LLMs and Planning」は、単なる一部のコード編集にとどまらず、リポジトリ全体のコーディング作業を計画的に自動編集するための大規模言語モデル(LLM)を使用したフレームワークを提案する研究報告である。
近年、LLMによるプログラミングの自動化が進展を見せている。「Amazon Code Whisperer」「GitHub Copilot」「Replit」などのツールは、自然言語の意図やコードの文脈を元にコードの補完や、自然言語の指示に基づく編集を行うために広く使用されている。
しかし、これらのプログラミング補助ツールは、小規模なコーディング問題のサポートに特化しており、リポジトリ全体の変更には対応が難しいのが現状である。なぜなら、リポジトリ内のコードは相互に関連しているため、全体を一気に考慮するのは困難だからである。
例として、特定のライブラリの新バージョンがリリースされ、APIの仕様が変更された場合、そのライブラリを使用しているプロジェクト全体での変更が必須となる。これは、単に1つの関数やメソッドを変更するだけではなく、ライブラリの変更に影響を受ける全てのコード部分を確認し、適切に更新する作業が求められる。
この問題を解決する新たなフレームワークとして「CodePlan」を提案する。CodePlanは複数のステップから成る計画を作成し、その計画に基づいてコードの編集を行う。
リポジトリ全体のコードを調査し、どの部分が他の部分にどのような影響を与えるかを分析する。その情報に基づき、どの部分をどの順序で修正すべきかの「計画」を策定。その計画に従い、コードの各部分を順に修正していく。
具体的には、グラフ構造とLLMを組み合わせて実現している。この文脈の「グラフ構造」とは、棒グラフや円グラフのようなデータの視覚化とは異なり、対象をノード(頂点)とエッジ(辺)で表現したデータ構造のことを指す。
このグラフでは、ノードはLLMが実施すべき特定のコード編集を示しており、エッジはある編集の完了後に次に行うべき編集の関連性や順序を示している。
このようなグラフ構造を用いることで、CodePlanは編集作業の流れや依存関係を効率的に追跡・管理できる。このグラフは動的に更新されるため、CodePlanはコード編集をリアルタイムで監視し、必要に応じてグラフを更新して、新たな編集のタスクや関係性を追加できる。
全てのステップが完了した後、変更されたリポジトリが正しいかどうかを専門のツールで検証する。問題が検出された場合、その情報を基に計画を見直し、作業を継続する。
「gpt-4-32kモデル」を活用して、C#のパッケージ移行とPythonの時系列に基づくコード編集という2つのリポジトリレベルのコーディングタスクを試験した。1つ目のタスクは、C#で書かれたソフトウェアリポジトリで特定のパッケージやライブラリを新しいバージョンや別のものに変更する場合を指す。2つ目のタスクは、Pythonのリポジトリで過去のコード変更履歴を参照してコード編集を行う場合を指す。
実験結果から、CodePlanは期待される結果や正確な編集結果と高い一致性を示した。これは、CodePlanがコード編集タスクを高精度で行えることを示唆している。さらに、テスト対象となった6つのリポジトリのうち、CodePlanを使用した5つのリポジトリが正当性の検証をクリアした。これは、CodePlanによる編集後のコードがエラーなく正確に動作することを意味する。
Source and Image Credits: Ramakrishna Bairi, Atharv Sonwane, Aditya Kanade, Vageesh D C, Arun Iyer, Suresh Parthasarathy, Sriram Rajamani, B. Ashok, Shashank Shet. CodePlan: Repository-level Coding using LLMs and Planning
Copyright © ITmedia, Inc. All Rights Reserved.
Innovative Tech
2019年にスタートした本連載「Innovative Tech」は、世界中の幅広い分野から最先端の研究論文を独自視点で厳選、解説している。執筆は研究論文メディア「Seamless」(シームレス)を主宰し、日課として数多くの論文に目を通す山下氏が担当。イラストや漫画は、同メディア所属のアーティスト・おね氏が手掛けている。
この記事の著者
関連記事
こんなメディアも見られています
ITmedia NEWSに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
SpecialPR
本日の新着記事
アクセスランキング
-
1
なぜ酒蔵の許諾なしに? 「VTuberコラボ日本酒」騒動、主催者が経緯説明 仲介者による調整で「準備進んでいると認識」
-
2
かっぱ寿司「配布前のコラボグッズ、フリマで買わないで」 プリキュアコラボ発表日に注意喚起
-
3
「食事量は1日1200kcal以下、でも肥満」な人を14日間追跡調査 痩せない理由は……米コロンビア大などの研究
-
4
本物そっくり“AI生成レシート“が経費精算の脅威に マネフォ「自力で見破るのは難しい」 企業はどう備える?
-
5
「菜の花がおかしい」――イラストレーター制作うたうマラソン大会ポスターに指摘相次ぐ 事務局がAI使用明かす【訂正あり】
-
6
デジタル庁に不正アクセス、個人情報24.6万件漏えいか 各府省庁の職員情報など
-
7
藤井風のリサイタル、公式サイトがインターネット老人会すぎると話題 公民館のチラシみたいだけど東京ドーム開催
-
8
松本デジタル相、24.6万件漏えい可能性について説明 「既知の脆弱性を対応前に悪用」
-
9
「ペンギンを返して」→「3匹全部採用して」 批判殺到のSuica新キャラ、ファンアートが空気を変えた? SNSの声
-
10
幻の「ちいかわ」コラボ第3弾皿、捨てちゃうの? くら寿司に聞いてみた
ITmedia NEWS SNS
インフォメーション
注目情報をチェック
ITmediaNEWSをフォロー
あなたにおすすめの記事PR