Az OpenAI friss kutatási bejegyzése elég kellemetlen dolgot mond ki a kódoló AI-modellek egyik fontos mércéjéről: a cég auditja szerint a SWE-Bench Pro publikus feladatainak nagyjából 30 százaléka hibás lehet. Ez nem apró lábjegyzet, mert ilyen benchmarkok alapján szokás megítélni, mennyire jók a modellek valós szoftverfejlesztési munkában.

Miért pont a SWE-Bench Pro számít?
A SWE-Bench Pro azért lett fontos, mert a korábbi SWE-bench Verified után hosszabb, életszerűbb kódolási feladatokat ígért. A feladatok valódi repositoryk történetéből jönnek: a modell kap egy problémát, módosítania kell a kódot, majd rejtett és meglévő tesztek döntik el, sikerült-e a javítás.
Papíron ez közelebb van ahhoz, amit egy fejlesztő vagy egy kódoló agent tényleg csinál. Nem elég egy rövid függvényt megírni, érteni kell a meglévő projektet, a teszteket és a környező kód szokásait. Pont ezért lett erős jelzőszám abból, hogyan teljesítenek rajta a nagy modellek.
A számok nem szépek
Az OpenAI a 731 feladatból álló publikus splitet vizsgálta. A cég szerint a frontier modellek nyolc hónap alatt 23,3 százalékról 80,3 százalékra javították a pass rate-et ezen a halmazon, ami első ránézésre hatalmas ugrás. A gond az, hogy a mérce közben nem biztos, hogy elég tisztán mér.
Az automatikus minőségellenőrző pipeline 286 gyanús feladatot jelölt meg, majd ezekből 200-at, vagyis a publikus split 27,4 százalékát minősített töröttnek. A külön futó, tapasztalt szoftvermérnökökkel végzett emberi annotáció még szigorúbb volt: ott 249 feladat, 34,1 százalék kapott törött címkét. Innen jön az OpenAI óvatos, de elég súlyos becslése, hogy a feladatok körülbelül 30 százaléka problémás.

Nem az a baj, hogy nehezek a feladatok
Egy benchmark lehet nehéz, sőt legyen is az. Itt inkább az a baj, hogy a feladat és az ellenőrzés néha nem ugyanazt kéri. Az OpenAI négy fő hibacsoportot talált: túl szigorú tesztek, alulspecifikált promptok, gyenge lefedettségű tesztek és félrevezető feladatleírások.

Ez fejlesztői szemmel ismerős helyzet. Ha a ticket mást mond, mint amit a teszt elvár, akkor a jó megoldás is elbukhat. Ha a teszt túl kevés dolgot néz, akkor egy félig kész javítás is átcsúszhat. A modell ilyenkor nem feltétlenül azért kap rossz vagy jó pontot, mert tényleg ennyire ügyes vagy ennyire gyenge.
Az OpenAI egy konkrét példát is hoz: a feladat szövege egyetlen szóközt mutatott a Markdown kimenetben, a rejtett teszt viszont két vezető szóközt várt. Egy modell követhette pontosan a promptot, mégis elbukhatott egy olyan karakterkülönbségen, amelyet a feladat nem írt le rendesen.
Ez a ranglistákat is óvatosabbá teszi
A benchmarkok azért veszélyesek, mert nagyon könnyű egyetlen számmá lapítani őket. Ha egy modell 80 százalék fölött teljesít, az jól hangzik. Ha viszont a feladatok jelentős része hibás, akkor nem világos, mennyi ebből valódi szoftverfejlesztési képesség, mennyi mérési zaj, és mennyi olyan szerencse, amely egy adott tesztcsomaghoz kötődik.
Az OpenAI ezért visszavonta a korábbi ajánlását, hogy a közösség térjen át SWE-Bench Pro használatára. Ez ritka, de hasznos gesztus: nem csak újabb toplista kell, hanem olyan mérés, amelyben a feladatleírás, a referenciajavítás és a teszt tényleg ugyanarra mutat.
A cégeknek ebből saját lecke jön
Aki AI-kódoló eszközt választ, ebből ne azt vigye haza, hogy minden benchmark rossz. Inkább azt, hogy egy publikus ranglista önmagában kevés. Egy belső kódbázison, saját issue-kon, saját tesztekkel sokkal hamarabb kiderül, melyik modell segít tényleg, és melyik csak egy külső táblázatban mutat jól.
A kódoló AI-k következő nagy vitája valószínűleg nem az lesz, hogy melyik modell ír szebb demót. Hanem az, hogy ki tud megbízhatóan mérni. Ha a mérce zajos, a győztes sem biztos, hogy az, akinek látszik.