【えすだぶりゅーいーべんち】

SWE-bench とは?

最終更新:
💡 実際のリポジトリの課題を、AIが修正できるか測る

実際のGitHubの課題とコードを使い、AIが課題を解決するパッチを作れるかを評価するベンチマーク。指定した環境とテストで解決率を測る。原版やVerifiedなどがあり、問題集合や評価条件を区別して読む必要がある。

📌 このページのポイント
SWE-bench:課題からパッチを作る 課題+コード 実際のリポジトリ AIによる コード修正 パッチを作る 指定環境で テスト評価 解決かを判定 問題集合の違い 原版:2,294問 12のPythonリポジトリ Verified:500問 人が解決可能性を確認 版・モデル・エージェント・実行条件を確認 解決率は、あらゆる開発の品質保証ではない
課題とコードから修正を作り、指定環境のテストで評価する。問題集合と実行条件を揃えて解決率を読む。
ひよこ ひよこ
短いプログラムを書かせる問題?
ペンギン先生 ペンギン先生
実際のリポジトリのコードと課題の説明を渡し、解決するパッチを作らせるよ。関数やファイルをまたぐ変更が必要な場合もあり、単独の関数を生成する問題とは違うんだ。
ひよこ ひよこ
何問あるの?
ペンギン先生 ペンギン先生
原版は12のPythonリポジトリから集めた2,294問だよ。Verifiedは人が解決可能性を確認した500問の部分集合。Liteなどの別の問題集合もあるので、SWE-benchという名前だけで全部同じ問題だと思わないんだ。
ひよこ ひよこ
直せたかはどう決める?
ペンギン先生 ペンギン先生
パッチを適用し、評価用の環境でテストを実行するよ。解決率は、その評価で解決と判定された課題の割合だね。人の元の修正と文字単位で一致するかだけを調べるものではないんだ。
ひよこ ひよこ
解決率が高いモデルなら、そのまま比較できる?
ペンギン先生 ペンギン先生
同じ版・問題集合か、どのモデルやエージェントが使ったツール・実行環境かを確認するよ。モデルだけでなく、作業の進め方や条件も結果に関わる。評価日と条件を併記して比べるんだ。
ひよこ ひよこ
合格したら、実際の開発も全部任せて大丈夫?
ペンギン先生 ペンギン先生
結果が示すのは、対象の問題と評価条件での能力だよ。テストが通ったことだけで、あらゆる仕様や本番環境での品質を保証するものではない。実際の変更では仕様確認やレビューなども必要なんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「SWE-bench」って出てきたら「実際のソフトの課題をAIが修正できるか測るベンチマーク」と思えばだいたいOK!
📖 おまけ:英語の意味
「SWE-bench」 = ソフトウェア工学のベンチマーク
💬 SWEはSoftware Engineering、benchはbenchmarkを表す名前だよ。実際のGitHubの課題を使って、コードを修正する能力を評価するんだ。

参考資料

← 用語集にもどる