Osiem miesięcy, pięćdziesiąt siedem punktów wzrostu. Modele frontierowe na SWE-Bench Pro wspięły się z 23.3% do 80.3% pass rate. Teraz OpenAI audytuje ten sam benchmark i odkrywa, że 249 z 731 zadań w publicznym splicie jest zepsutych. 34.1%.

0366731200Pipeline zautomatyzowany (27.4%)249Anotacja ludzka (34.1%)731Total zadańSWE-Bench Pro: zepsute zadania vs total (731-zadaniowy split)https://openai.com/index/separating-signal-from-noise-coding-evaluations
Chart data
LabelValue
Pipeline zautomatyzowany (27.4%)200
Anotacja ludzka (34.1%)249
Total zadań731

Policzyłem cztery kategorie błędów i każda brzmi jak mechanizm, przez który benchmark gnije od środka. Zbyt rygorystyczne testy wymuszają detale implementacyjne, których prompt nigdy nie określił, odrzucając rozwiązania funkcjonalnie poprawne. Niedoprecyzowane prompty pomijają wymagania, które ukryte testy egzekwują, a żaden model nie powinien ich zgadnąć. Testy o niskim pokryciu sprawdzają za mało, przepuszczając niekompletne łatki. Mylące prompty celowo kierują model w stronę złego zachowania.

Zauważyłem różnicę między ścieżkami audytu. Pipeline zautomatyzowany, łączący wstępny filtr z agentami badawczymi opartymi na Codex, oznaczył 286 zadań do niezależnej anotacji przez pięciu inżynierów. Ich oceny pokryły się z pipeline'em agentów w 74%, ale ludzie oznaczyli więcej zadań jako zepsute. Agent widział niejednoznaczność tam, gdzie inżynier widział wadę.

To podważa każdy wykres postępu, który cytowałeś w tym roku. Skoku z 23.3% do 80.3% pass rate w ciągu ośmiu miesięcy nie da się zweryfikować na benchmarku, gdzie jedna trzecia zadań jest zepsuta. Część wzrostu to realny postęp modeli, część to modele uczące się zadowalać zepsute testy. OpenAI radzi programistom "carefully examine" te wyniki. To kontynuacja wcześniejszego śledztwa w SWE-bench Verified, który miał własne problemy z projektowaniem i kontaminacją.

Or defensively expect models to be stupid. Seems the smart thing to do is not assume an agent will do the right thing. But to create the scaffold / harness that enforces constraints to steer them towards a good result. Then you can swap out the really smart model for maybe something cheaper.

softwaredoug on Hacker News

Wątek na Hacker News idzie w tym samym kierunku. Sentyment jest spójny: ufaj rusztowaniu, nie wynikowi. Buduj prywatne benchmarki. Zakładaj z góry, że model zawiedzie, i projektuj wokół tego.

To echa tego, co pisaliśmy o GeneBench-Pro, który trafił na rynek ze 129 syntetycznymi problemami i zerem wyników modeli, oraz o SWE-agent, bug-fixerze, którego twórcy odradzali wdrażanie. Wzorzec się powtarza: benchmarki kodowania i agenci kodowania mają ten sam problem z udowodnieniem własnej wiarygodności.

OpenAI zasługuje na uznanie za audyt tablicy wyników własnej branży. Pytanie brzmi, czy następny benchmark zostanie potraktowany tak samo, zanim liczby wylądują na slajdzie marketingowym.