← 最新の論文
🤖 machine learning

Merge-Bench: Resolve Merge Conflicts with Large Language Models

本論文は、実世界のマージコンフリクトの大規模データセットであるMerge-Benchを導入し、グループ相対方策最適化を用いて訓練されたJava固有のモデルであるLLMergeJを提示するが、これは複数の商用LLMを上回るものの、現在でも最良のモデルであっても11のプログラミング言語にわたるコンフリクトの60%未満しか解決できていない。

原著者: Benedikt Schesch, Michael D. Ernst

公開日 2026-05-26
📖 1 分で読めます☕ さくっと読める

原著者: Benedikt Schesch, Michael D. Ernst

原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む

2 人の友人が同時に同じドキュメントを編集しているグループプロジェクトを想像してください。友人 A が段落を変更し、友人 B が全く同じ段落を変更します。両者の作業を統合しようとすると、コンピューターは混乱し、「どちらのバージョンを保持すればよいかわからない!」と叫びます。これをマージコンフリクトと呼びます。

通常、人間が介入し、両方のバージョンを読み、友人たちが実際に何を意図していたかを特定し、手動でその混乱を修正する必要があります。これは時間を要し、ミスにつながる可能性があります。

この論文は、これらの混乱を「賢い」AI(大規模言語モデル)を用いて自動的に修正する新しい方法を紹介します。彼らの研究を簡単な言葉で分解すると以下のようになります。

1. 問題:コンピューターは見当違いだ

従来のツールは、文字だけを眺めるロボットのようなものです。友人 A が「cat」と書き、友人 B が「dog」と書いた場合、そのロボットは単に衝突を見ています。彼らがペットについて話していたのか、あるいはどちらかがタイプミスだったのかを理解していません。それは人間の「意図」の説明を必要とします。

2. 解決策:新しい訓練場(Merge-Bench)

AI にこれらのコンフリクトを修正させるためには、「ここが混乱状態であり、ここが人間のエリートがどのように修正したか」を示す膨大な事例のライブラリが必要です。

  • 旧来の方法: 他の研究者は、これらのライブラリを手作業で作成したり、テストを実行したりしようとしました。これは遅く、高価であり、時には AI がコードを修正することを学ぶ代わりにテストの答えを暗記することで「不正」を行うこともありました。
  • 新しい方法(Merge-Bench): 著者らは、Merge-Benchと呼ばれる巨大な自動化ライブラリを構築しました。彼らは GitHub 上の 1,439 の異なる公開コードプロジェクトから、7,938 の実際のコンフリクトをスクレイピングしました。
    • 比喩: 教師がすべての宿題を手作業で採点する必要がないと想像してください。代わりに、生徒の間違いと教師による正解の 8,000 件の実例を自動的に収集する機械を持っています。機械がすべての作業を行うため、巨大で尽きることのないライブラリを持つことができます。

3. 生徒:LLMergeJ

著者らは、LLMergeJという特定の AI モデルを訓練しました(「J」は彼らが焦点を当てたプログラミング言語である Java を表します)。

  • 教え方: 標準的な教師のようにモデルに答えを見せるのではなく、強化学習と呼ばれる方法を使用しました。
    • 比喩: 犬を訓練すると考えてください。犬が正しい芸をすればご褒美がもらえます。間違えれば何ももらえません。推測を拒否して「わからない」と言うだけ(コンフリクトを維持する)の場合、小さなパンくずがもらえます。
    • AI は何千回も試行しました。コードを正しく統合する方法を見つけたとき、大きな報酬を得ました。時間の経過とともに、それは単に答えがどのようなものかだけでなく、そこに至るために問題をどのように考えるかを学びました。

4. 結果:小さな犬、大きな芸

彼らは、AI 基準としては比較的小さい 140 億パラメータのモデルを、利用可能な最大かつ最も高価な商用 AI モデル(Gemini、Claude、Grok など)と比較してテストしました。

  • 驚き: 彼らの小さくカスタム訓練されたモデルは、ほぼすべての巨大な商用モデルよりも優れていました。 minor な書式の違いを無視した後、コンフリクトの約**59%**を正しく解決しました。
  • 比較: 最高の商用モデル(Gemini 2.5 Pro)はわずかに優れていましたが、著者らのモデルは他のモデルを大幅に凌駕しました。
  • 教訓: 報酬を用いて「マージコンフリクトの修正方法」に特化して訓練された小さなモデルは、一度だけその作業を依頼されただけの巨大な汎用モデルよりも優れています。

5. なぜこれが重要なのか

  • 不正なし: 彼らのテスト方法はコードテストの実行(AI が時折だますことができる)に依存していません。コードを人間の開発者が実際に行ったことと直接比較します。
  • スケーラブル: データのラベル付けに人間を必要としなかったため、トレーニングセットを好きなだけ大きくすることができました。
  • 言語非依存: モデルを Java のみで訓練しましたが、C、Python、Rust などの 11 の異なる言語で巨大な商用モデルをテストしました。AI の挙動はすべての言語で類似していたことがわかり、彼らの方法はあらゆるプログラミング言語で機能する可能性があることが示唆されました。

まとめ

著者らは、コードのコンフリクトを解決するために特定の AI アスリート(LLMergeJ)を訓練するための巨大な自動化ジム(Merge-Bench)を構築しました。報酬ベースの訓練システムを使用することで、彼らは比較的小さな AI に、この特定のタスクにおいて最大かつ最も高価な AI モデルを上回る能力を身につけさせました。これは、ソフトウェアの混乱を修正する際、汎用的な規模よりも特化した訓練の方が優れていることを証明しています。

自分の分野の論文に埋もれていませんか?

研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。

Digest を試す →