Liliana Hotsko氏らは2026年6月4日(現地時間)、コード言語モデル(CLM)がリポジトリレベルの文脈を必要とする課題を解決するため、ハイパーネットワークフレームワーク「Code2LoRA」を導入したと発表した。このシステムは、リポジトリ固有のLow-Rank Adaptation(LoRA)アダプターを生成することで、推論時のトークンオーバーヘッドなしにリポジトリ知識を効果的に注入する。従来の取得拡張生成(RAG)やリポジトリごとのファインチューニングが抱える、コストや進化するコードベースへの適応性の課題を解決することが期待される。

コード言語モデルが大規模なソフトウェアリポジトリを理解し、その文脈で正確な予測を行うことは、開発支援ツールや自動プログラミングの分野で極めて重要視されている課題だ。しかし、膨大なコードベース全体を一度に処理するには、計算リソースの制約や、コードの継続的な進化に対応する難しさという壁が存在する。これまでの手法、例えば取得拡張生成(RAG)や依存関係分析による長大な入力は、推論時のオーバーヘッドが増大し、リポジトリごとのファインチューニングやLow-Rank Adaptation(LoRA)のような手法は、リポジトリ規模での学習コストが課題となっていた。

こうした背景から開発されたCode2LoRAは、ハイパーネットワークを活用してリポジトリ固有のLoRAアダプターを動的に生成する。LoRAは、既存の事前学習済みモデルのパラメーターの一部を低ランク行列で近似することで、ファインチューニング時の学習パラメーター数を大幅に削減し、モデルの適応性を高める技術である。Code2LoRAはこのLoRAアダプターを、各リポジトリの特性に応じてオンデマンドで生成することで、リポジトリの知識を効率的に注入し、従来の課題を克服しようとしている。

Code2LoRAは、用途に応じて二つの主要な利用シナリオをサポートする。一つ目のCode2LoRA-Staticは、特定時点の単一リポジトリスナップショットからアダプターを生成し、その時点の安定したコードベースの理解に特化している。これは、公開されたライブラリやアーカイブされたプロジェクトの解析に適している。二つ目の「Code2LoRA-Evo」は、コードの差分(diff)がコミットされるたびに、Gated Recurrent Unit(GRU)の隠れ状態を更新することでアダプターを維持する。GRUは再帰型ニューラルネットワークの一種で、長期的な依存関係を効率的に学習できる特性を持つ。この動的な更新メカニズムにより、Code2LoRA-Evoは継続的に進化するコードベースの活発な開発サイクルに適応できる。

研究チームは、Code2LoRAとそのパラメーター効率の良いファインチューニングのベースラインを客観的に評価するため、「RepoPeftBench」という大規模なベンチマークを構築した。このベンチマークは、604ものPythonリポジトリで構成され、静的なコードベースと進化するコードベースの両方をカバーするために二つのトラックを持つ。スタティックトラックには4万件の訓練タスクと1万2千件のテストアサーション完了タスクが含まれており、多様な静的コード理解のシナリオを網羅する。一方、エボリューションラックは、コミット履歴から生成された21万5千件の訓練タスクと8万7千件のテストタスクで構成され、コードの進化に合わせたモデルの適応性を評価する。

評価の結果、Code2LoRA-Staticはスタティックトラックにおいて、クロスリポジトリで63.8%の完全一致率、インリポジトリで66.2%の完全一致率を達成した。これは、リポジトリごとのLoRAを適用した場合の理論的な性能上限に匹敵するものであり、単一のアダプターで複数のリポジトリに効率的に対応できる可能性を示唆している。エボリューションラックでは、Code2LoRA-Evoがクロスリポジトリで60.3%の完全一致率を達成し、単一の共有LoRAと比較して5.2パーセンテージポイントの向上を示した。この進歩は、進化するコードベースに対するモデルの適応能力が大幅に向上したことを意味し、ソフトウェア開発の実世界における応用可能性を広げるものとして期待されている。この研究論文は、arXiv cs.SEを通じて公開された。


参考: arXiv cs.SE — 2026年6月5日 02:59 (JST)

原文ハイライト

"Code2LoRA, a hypernetwork framework that generates repository-specific LoRA adapters"

この記事をシェア
X はてブ LinkedIn