SWE-bench Multimodal(SWE-bench M)は、ユーザー向け JavaScript リポジトリ(Web インターフェース設計、作図、 データ可視化、シンタックスハイライト、インタラクティブな地図作成のためのライブラリ)の GitHub イシューから集めた ソフトウェアエンジニアリングタスクのベンチマークであり、すべてのタスクが視覚的なコンテンツを含む。 SWE-bench Multimodal:AI システムは視覚的なソフトウェア領域に汎化するか? の著者らによって、 Python のみを対象とする SWE-Bench 向けに開発されたシステムが、他のプログラミング言語や、視覚的に 理解しなければならない問題へ汎化するかどうかを評価するために構築された。
内容
各タスクインスタンスは SWE-bench の定式化に従う。すなわち、コードベースとイシュー(問題記述)、対応する プルリクエストに由来する参照解、そしてユニットテスト(修正によって通過しなければならない fail-to-pass テストと、 既存の振る舞いが保たれていることを確認する pass-to-pass テスト)からなる。論文は 17 リポジトリから 619 件の タスクインスタンスを報告しており、12 リポジトリの 517 件からなるテスト分割と、同様の目的を持つテスト用リポジトリに 対応するよう選ばれた 5 リポジトリの 102 件からなる開発分割に分けられている。リポジトリには bpmn-js、carbon、 Chart.js、highlight.js、lighthouse、openlayers、p5.js、prettier などが含まれ、選ばれたリポジトリはいずれも 70% 以上が JavaScript または TypeScript で書かれている。
問題記述には 862 枚の画像が含まれており、アノテーターはそれらをカテゴリに分類した。最も多いのは Web サイトの スクリーンショットとコードのスクリーンショットで、次いで図、エラーメッセージ、アート、地図、データ可視化が続く。 多くのタスクは複数の画像や動画を持つ。69 件のタスクからなるサブセットは、レンダリングされたスクリーンショットを 比較するピクセルレベルの視覚的テストで正しさを検証する。論文は、問題記述のテキストまたは画像に英語以外の言語を 用いるタスクが 55 件あり、そのうち 38 件で標準中国語が使われていると報告している。
来歴
著者らは GitHub 上でスター数 5,000 以上、プルリクエスト数 500 以上の JavaScript リポジトリを検索し、ユーザー向けの ライブラリ 17 件を手作業で選んで、そのプルリクエストをスクレイピングした。イシューのテキストまたはテストパッチが 画像や動画にリンクしているイシューとプルリクエストのペアを残し、SWE-bench の Docker セットアップに Node.js と Chrome のサポートを追加して、リポジトリごとのインストールスクリプトとテストスクリプトを作成した。さらに、 繰り返し実行したときに結果が一貫しないテストを取り除き、残ったすべてのインスタンスを著者らが手作業で検査して、 解決不可能と判断した 24 件を除外した。イシューからリンクされた画像、動画、再現コード(CodeSandbox や JSFiddle などのオンラインエディタ上のコードを含む)はダウンロードされており、リンクが切れても問題記述を再現できるように なっている。論文は各リポジトリのライセンスを列挙し、データ、コード、リーダーボードが swebench.com/multimodal で公開されていると述べている。
利用
導入論文では、RAG、3 つの構成の SWE-Agent、そして適応させた Agentless がこのベンチマークで 評価された。最も多くのタスクを解決したのは SWE-agent の各構成であり、著者らは Agentless の低い結果の原因を、 Python を前提に設計された位置特定(ローカライゼーション)モジュールにあるとしている。