Xのタイムラインを眺めてたら、IBMリサーチからヤバいベンチマークが出てきた。
ScarfBenchっていう、AIエージェントがJavaフレームワーク移行をどこまでこなせるか測るやつだ。
Hugging Faceのブログに載ってたんだけど、これが思ったより深い話だった。
エンタープライズJavaの移行ってそもそも何がしんどいのか
まず前提として、JavaのフレームワークをSpringからJakarta EEに変えるとか、Quarkusに乗り換えるとか、そういう作業は普通に地獄らしい。
単純にコードを書き換えるだけじゃなくて、ビルドシステムとか依存関係とかランタイムの動作まで全部合わせないといけない。
「アノテーションを置き換えるだけじゃないのか」って思ってたけど、全然そんな話じゃなかった。
ScarfBenchは34のアプリケーションに対して102のフレームワーク実装、合計204の移行タスク、コード行数にして約15万1千行を用意したベンチマークだ。
で、ポイントはそのあとの評価方法。
「コードが生成できたか」じゃなくて、ちゃんとビルドが通るか・デプロイできるか・動作が元と一致するかの3段階で測ってる。
これ、実際の現場で求められる基準そのままだよな。
最強クラスのAIエージェントでも10%以下という現実
ここが一番刺さった部分。
ScarfBenchのリーダーボードを見ると、現時点のトップクラスのコーディングエージェントでも「ビヘイビア成功率が10%未満」なんだ。
コンパイル成功率はもっと高いけど、デプロイして動作まで担保すると一気に落ちる。
ビルドが通っただけで「移行完了」と判断するのは、かなり実態と乖離してるよって話になる。
これ海外のエンジニア界隈でも結構ざわついてて、「AIはまだ本番コードのマイグレーションを任せられるレベルじゃない」という声がちらほら出てた。
一方で「ベンチマーク自体がちゃんとした基準を持ち始めたのが進歩」という見方もある。
日本だと企業の基幹システムをJavaで動かしてるところがまだ多いから、この話はじわじわ広がると思う。
うちの妻に「Java移行をAIに任せる時代が来るかもって話」をしたら、「で、それうちに関係ある?」って返された。
完全に説明下手だったけど、要は「今まで数億円かかってた作業がAIで自動化できるかもしれない」って話なんだよなと後から言い直した。
そしたら少し興味持ってくれた。
AIエージェントに「完了したかどうか」を判断させるのが難しい
ScarfBenchの論文の中で個人的に一番面白かったのが、エージェントが「移行が完了したかどうか」を自分で正しく判断できないって話だ。
コードが書けても、自己評価がズレてる。
これ、コーディングエージェントを使ってる人なら体感あると思う。
たまに「完了しました」って言ってるのに実は全然動いてない、あのやつ。
それをちゃんとベンチマーク上で「何が足りていないか」として定量化しようとしてるのが、ScarfBenchのユニークなところだ。
GitHubでもスターつき始めてるし、今後のAIコーディングツールの評価軸に入ってくる気がする。
GeminiやClaude、各社のエージェントが今後このベンチマークでどんな成績を出すか、追いかけていくつもりだ。
GitHubのscarfbenchリポジトリ、とりあえずウォッチに入れておいた。
フォロワーのみんなはJavaのレガシー移行って身近な話題だったりする?