Għaliex SWE-bench Verified m’għadux ikejjel il-kapaċitajiet tal-kodifikazzjoni fruntiera
SWE-bench Verified qed isir dejjem aktar ikkontaminat. Nirrakkomandaw SWE-bench Pro.
Minn meta ppubblikajna għall-ewwel darba SWE-bench Verified f’Awwissu 2024, l-industrija użatu b’mod mifrux biex tkejjel il-progress tal-mudelli f’kompiti awtonomi ta’ inġinerija tas-software. Wara r-rilaxx tiegħu, SWE-bench Verified ta sinjal qawwi tal-progress fil-kapaċitajiet u sar metrika standard irrappurtata fir-rilaxxi ta’ mudelli fruntiera. It-traċċar u t-tbassir tal-progress ta’ dawn il-kapaċitajiet huma wkoll parti importanti mill-Preparedness Framework ta’ OpenAI. Meta inizjalment ħloqna l-benchmark Verified, ippruvajna nsolvu kwistjonijiet fl-evalwazzjoni oriġinali li kienu jagħmlu ċerti kompiti impossibbli biex jitlestew fis-sett tad-data SWE-bench(jinfetaħ f’tieqa ġdida).
Wara qabżiet inizjali, il-progress tal-aqwa livell fuq SWE-bench Verified naqas, u tjieb(jinfetaħ f’tieqa ġdida) minn 74.9% għal 80.9% fl-aħħar 6 xhur. Dan iqajjem il-mistoqsija: il-fallimenti li fadal jirriflettu limitazzjonijiet tal-mudell jew proprjetajiet tas-sett tad-data nnifsu?
F’analiżi ġdida, sibna żewġ problemi ewlenin bis-sett Verified li jindikaw li l-benchmark m’għadux adattat biex ikejjel il-progress fil-kapaċitajiet awtonomi ta’ inġinerija tas-software għal rilaxxi fruntiera fil-livelli tal-prestazzjoni tal-lum:
- It-testijiet jirrifjutaw soluzzjonijiet korretti: Ivverifikajna sottogrupp ta’ 27.6% tas-sett tad-data li l-mudelli ta’ spiss naqsu milli jsolvu u sibna li mill-inqas 59.4% tal-problemi verifikati għandhom każijiet ta’ test difettużi li jirrifjutaw sottomissjonijiet funzjonalment korretti, minkejja l-aqwa sforzi tagħna biex intejbuhom fil-ħolqien inizjali ta’ SWE-bench Verified.
- Taħriġ fuq is-soluzzjonijiet: Minħabba li mudelli fruntiera kbar jistgħu jitgħallmu informazzjoni mit-taħriġ tagħhom, huwa importanti li qatt ma jiġu mħarrġa fuq problemi u soluzzjonijiet li jiġu evalwati fuqhom. Dan jixbah li taqsam problemi u soluzzjonijiet ta’ test li ġej mal-istudenti qabel it-test - jistgħu ma jimmemorizzawx it-tweġiba, iżda studenti li jkunu raw it-tweġibiet qabel ċertament jagħmlu aħjar minn dawk li ma rawhomx. Il-problemi ta’ SWE-bench jittieħdu minn repożitorji open-source li ħafna fornituri ta’ mudelli jużaw għal skopijiet ta’ taħriġ. Fl-analiżi tagħna sibna li l-mudelli fruntiera kollha li ttestjajna setgħu jirriproduċu t-tiswija oriġinali tal-bug miktuba minn bniedem li ntużat bħala r-referenza tal-verità bażi, magħrufa bħala l-gold patch, jew dettalji speċifiċi kelma b’kelma tad-dikjarazzjoni tal-problema għal ċerti kompiti, u dan jindika li kollha raw mill-inqas xi wħud mill-problemi u s-soluzzjonijiet waqt it-taħriġ.
Sibna wkoll evidenza li mudelli li jkunu raw il-problemi waqt it-taħriġ huma aktar probabbli li jirnexxu, għax għandhom informazzjoni addizzjonali meħtieġa biex jgħaddu mit-testijiet mhux speċifikati biżżejjed.
Dan ifisser li t-titjib fuq SWE-bench Verified m’għadux jirrifletti titjib sinifikanti fil-kapaċitajiet tal-mudelli għall-iżvilupp tas-software fid-dinja reali. Minflok, dejjem aktar jirrifletti kemm il-mudell kien espost għall-benchmark waqt it-taħriġ. Huwa għalhekk li waqafna nirrapportaw il-punteġġi ta’ SWE-bench Verified, u nirrakkomandaw li żviluppaturi oħra ta’ mudelli jagħmlu l-istess.
Qed nibnu evalwazzjonijiet ġodda, mhux ikkontaminati, biex insegwu aħjar il-kapaċitajiet tal-kodifikazzjoni, u naħsbu li dan hu qasam importanti fuq xiex għandha tiffoka l-komunità usa’ tar-riċerka. Sa ma jkollna dawn, OpenAI jirrakkomanda li jiġu rrappurtati r-riżultati għal SWE-bench Pro.
L-evalwazzjoni oriġinali ta’ SWE-bench(jinfetaħ f’tieqa ġdida) ġiet rilaxxata fl-2023. Kull problema tittieħed minn issue solvuta ta’ GitHub f’wieħed minn 12-il repożitorju Python open-source u tiġi mqabbla mat-talba ta' pull (PR) korrispondenti. Biex jiġi determinat jekk bidla fil-kodiċi ġġenerata minn mudell hijiex korretta, kull problema tiġi b’żewġ settijiet ta’ testijiet:
- Testijiet li jonqsu fuq il-codebase mhux modifikata iżda jgħaddu jekk l-issue tiġi rranġata b’mod korrett
- Testijiet ta’ regressjoni li jgħaddu kemm qabel kif ukoll wara t-tiswija biex jiżguraw li funzjonalità mhux relatata tibqa’ intatta.
Il-mudell ma jarax it-testijiet. Irid jipproduċi bidla fil-kodiċi billi jingħata biss it-test oriġinali tal-issue u l-istat tar-repożitorju qabel it-tiswija. Jgħaddi minn problema biss jekk it-testijiet kollha jgħaddu wara li tiġi applikata l-bidla fil-kodiċi.
Sibna ħafna problemi b’dik l-evalwazzjoni li setgħu jwasslu biex il-kapaċità tal-mudelli tiġi rrappurtata inqas milli hi.
- Xi unit tests kienu speċifiċi wisq jew mhux allinjati mal-kompitu, għalhekk tiswijiet korretti setgħu jiġu rrifjutati.
- Ħafna dikjarazzjonijiet tal-kompiti ma kinux speċifikati biżżejjed, u dan seta’ jwassal għal bosta interpretazzjonijiet validi - filwaqt li t-testijiet kienu jkopru waħda speċifika biss.
- Skont kif ikun stabbilit l-ambjent (pereżempju Linux vs Windows, jew il-verżjoni ta’ python), xi testijiet setgħu jonqsu b’mod falz
Ħloqna SWE-bench Verified fl-2024 biex nindirizzaw dawn il-problemi. Ħdimna ma’ inġiniera esperti tas-software biex nirrevedu 1,699 problema ta’ SWE-bench u niffiltraw barra problemi li kellhom dawn il-kwistjonijiet. Kull problema ġiet riveduta b’mod indipendenti minn tliet esperti. Dan il-proċess ta’ reviżjoni wassal għal SWE-bench Verified, sett ikkurat ta’ 500 problema.
Filwaqt li SWE-bench Verified hu titjib kbir fuq il-verżjoni inizjali, għad fadal problemi residwi. Għamilna verifika ta’ 138 problema ta’ SWE-bench Verified li OpenAI o3 ma solviex b’mod konsistenti tul 64 run indipendenti. Kull każ ġie rivedut b’mod indipendenti minn mill-inqas sitt inġiniera tas-software b’esperjenza. Jekk espert jimmarka problema, din terġa’ tiġi vverifikata minn tim addizzjonali.
Sibna li 59.4% mill-138 problema kien fihom problemi materjali fid-disinn tat-test u/jew fid-deskrizzjoni tal-problema, li jagħmluhom diffiċli ħafna jew impossibbli biex jissolvewhom anki l-aktar mudell jew bniedem kapaċi.
- 35.5% tal-kompiti verifikati għandhom każijiet ta’ test stretti li jinfurzaw dettalji speċifiċi ta’ implimentazzjoni, u b’hekk jinvalidaw ħafna sottomissjonijiet funzjonalment korretti, li aħna nsejħulhom każijiet ta’ test dojoq.
- 18.8% tal-kompiti verifikati għandhom testijiet li jiċċekkjaw funzjonalità addizzjonali li ma kinitx speċifikata fid-deskrizzjoni tal-problema, li aħna nsejħulhom każijiet ta’ test wesgħin.
- Il-5.1% li fadal tal-kompiti kellhom diversi problemi oħra li ma kinux miġbura tajjeb ma’ din it-tassonomija.
Eżempju illustrattiv tal-ewwel mod ta’ falliment hu pylint-dev__pylint-4551(jinfetaħ f’tieqa ġdida), fejn il-PR jintroduċi funzjoni ġdida `get_annotation` bħala parti mis-soluzzjoni ġenerali. Dan l-isem tal-funzjoni ma jissemmawx fid-deskrizzjoni tal-problema, iżda jiġi importat direttament mit-testijiet. Filwaqt li xi mudelli jistgħu jintuwixxu li joħolqu funzjoni bħal din, mhuwiex strettament meħtieġ li tiġi implimentata funzjoni b’dan l-isem speċifiku biex il-problema tiġi indirizzata b’mod korrett. Ħafna soluzzjonijiet validi jonqsu mit-testijiet minħabba żbalji fl-importazzjoni.
Deskrizzjoni tal-problema
Silta tat-test tal-PR
Fallimenti tat-test tal-PR (imqassar biex jinqara aħjar)
Eżempju ta’ każijiet ta’ test wesgħin wisq hu sympy__sympy-18199(jinfetaħ f’tieqa ġdida). Dan il-kompitu ttieħed minn PR li indirizza tliet kwistjonijiet distinti bil-funzjoni `nthroot_mod`, speċifikament #17373(jinfetaħ f’tieqa ġdida), #17377(jinfetaħ f’tieqa ġdida), u #18212(jinfetaħ f’tieqa ġdida). Id-deskrizzjoni għall-kompitu ta’ SWE-bench Verified, madankollu, tkopri biss l-aħħar issue #18212(jinfetaħ f’tieqa ġdida). Dan joħloq nuqqas ta’ qbil: it-testijiet tal-PR ikopru t-tliet issues kollha, filwaqt li d-deskrizzjoni tagħti dettalji ta’ waħda biss. Fir-runs tagħna, il-mudelli ta’ spiss jimplimentaw b’mod korrett it-tiswija deskritta u mbagħad jonqsu mit-testijiet li jkopru implimentazzjoni għaż-żewġ issues l-oħra.
Deskrizzjoni oriġinali tal-PR (mill-PR ta’ GitHub)
Deskrizzjoni tal-Problema għal #18212
Deskrizzjoni tal-Problema għat-task ta’ SWE-bench Verified (meħuda biss minn #18212):
SWE-bench Verified u r-repożitorji (il-code bases u n-noti tar-rilaxx) huma t-tnejn open-source u użati u diskussi b’mod mifrux, u dan jagħmel l-evitar tal-kontaminazzjoni diffiċli għall-iżviluppaturi ta’ mudelli.
L-ewwel sinjali ta’ kontaminazzjoni ltqajna magħhom fil-mudelli tagħna stess. Pereżempju, meta GPT‑5.2 solva 31 kompitu li identifikajna bħala kważi impossibbli biex jiġu solvuti. F’django__django-14725(jinfetaħ f’tieqa ġdida) it-testijiet jeħtieġu parametru ġdid speċifiku `edit_only` li mhuwiex meħtieġ b’mod espliċitu mid-dikjarazzjoni tal-problema. Waqt li jsolvi l-problema, GPT‑5.2 juri fil-chain of thought tiegħu li għandu informazzjoni dwar in-noti tar-rilaxx li jagħtu dettalji tal-bidliet fil-codebase, u jidentifika b’mod korrett li l-parametru `edit_only` ġie introdott f’Django 4.1.
GPT‑5.2 CoT
Biex nivvalutaw kemm hi sinifikanti l-kontaminazzjoni b’mod aktar wiesa’, ħloqna setup awtomatizzat ta’ red-teaming. Għal kull mistoqsija ta’ SWE-bench Verified, tajna lil GPT‑5 il-kompitu li jfittex kontaminazzjoni f’GPT‑5.2‑Chat, Claude Opus 4.5 u Gemini 3 Flash Preview. Dawn il-mudelli ntgħażlu biex jeskludu mudelli tar-raġunament, iżda nirrikonoxxu li x’aktarx hemm differenza mhux trivjali fil-kapaċità bejniethom.
Biex jfittex il-kontaminazzjoni, GPT‑5 irċieva: l-ID tal-kompitu ta’ SWE-bench Verified, id-deskrizzjoni, il-gold patch, u t-testijiet tal-PR. Tul 15-il turn, ippermettejna lil GPT‑5 jvarja l-prompt tas-sistema/tal-iżviluppatur, il-prompt tal-utent, u l-prefill tal-assistent kif ukoll strateġiji differenti ta’ eliċitazzjoni. Wara kull turn, mudell ġudikant ittikketta kemm dehret informazzjoni ġdida speċifika għall-kompitu u kull tweġiba ġiet ittikkettata għas-severità tal-kontaminazzjoni minn “xejn” sa “qawwija.” GPT‑5 tħalla jadatta l-istrateġija tiegħu abbażi tat-turns preċedenti biex jirkupra iterattivament dettalji speċifiċi għall-kompitu. Għal kull eżempju ta’ kontaminazzjoni qawwija, ivverifikajna ma’ ġudikant ieħor li GPT‑5 ma żvelax wisq informazzjoni lill-mudell fil-mira. Fl-aħħar, imbagħad irrevedejna manwalment l-eżempji “qawwija” li jiffurmaw it-traskrizzjonijiet f’din il-kariga.
Hawn taħt hemm eżempji ta’ kontaminazzjoni qawwija fost fornituri differenti ta’ mudelli.
Mogħti biċċa qasira mid-deskrizzjoni tal-kompitu, GPT‑5.2 joħroġ il-gold patch eżatt. B’mod partikolari, jaf l-isem eżatt tal-klassi u tal-metodu, u l-kundizzjoni ġdida ta’ ritorn kmieni `if username is None or password is None` li tiġi introdotta.
Eliċitazzjoni tal-kontaminazzjoni
Gold patch
Opus kapaċi mhux biss jiftakar il-bidla funzjonali eżatta ta’ 4 linji li introduċa l-PR, flimkien mal-isem speċifiku tal-fajl u l-metodu li mess, iżda wkoll jikkwota kelma b’kelma l-kumment inline li kien parti mid-diff.
Eliċitazzjoni tal-kontaminazzjoni
Gold patch
Gemini 3 Flash, meta ma tingħata ebda informazzjoni oħra dwar il-kompitu minbarra l-ID, kapaċi joħroġ kelma b’kelma dettalji mid-deskrizzjoni tal-kompitu u l-gold patch. Dan jinkludi l-formula ġdida tar-regex għall-validazzjoni tal-isem tal-utent u n-numri eżatti tal-linji għall-bidla.
Eliċitazzjoni tal-kontaminazzjoni
Gold patch
Minn din il-verifika ta’ SWE-bench Verified, naraw żewġ lezzjonijiet usa’ għad-disinn tal-evalwazzjoni. L-ewwel, benchmarks meħuda minn materjal disponibbli pubblikament iġorru riskju ta’ kontaminazzjoni, fejn esponiment għad-data tat-taħriġ jista’ jintefaħ b’mod silenzjuż il-punteġġi. Jekk tintuża data miġbura pubblikament fil-kostruzzjoni tal-benchmark, l-iżviluppaturi ta’ mudelli għandhom jagħmlu testijiet addizzjonali għall-kontaminazzjoni. Il-benchmarks, u anke s-soluzzjonijiet tagħhom, ippubblikati pubblikament jistgħu jispiċċaw fid-data tat-taħriġ. Għandha tittieħed attenzjoni żejda kemm fil-mod kif jiġu ppubblikati s-settijiet tad-data (jiġifieri protetti b’password) kif ukoll fil-filtrazzjoni tad-data tat-taħriġ (jiġifieri aderenza stretta ma’ canary strings).
It-tieni, l-iskorjar awtomatizzat hu diffiċli biex isir sew; każijiet ta’ test perfetti għandhom jivverifikaw kompletament il-funzjonalità korretta, ikunu kemm agnostiċi għal dettalji speċifiċi ta’ implimentazzjoni li mhumiex importanti kif ukoll robusti kontra soluzzjonijiet ta’ shortcut. Dawn il-problemi huma intrinsikament kumplessi u diffiċli biex jissolvew. Biex instabu dawn il-problemi kien hemm bżonn diversi kampanji estensivi ta’ ttikkettar uman.
Inkorporajna dawn is-sejbiet fl-isforzi reċenti tagħna ta’ evalwazzjoni. Fl-aħħar xhur għażilna li nirrapportaw riżultati mis-split pubbliku ta’ SWE-Bench Pro. Nirrakkomandaw li żviluppaturi oħra ta’ mudelli jagħmlu l-istess. SWE-bench Pro mhux perfett, iżda empirikament jidher li jsofri inqas minn problemi ta’ kontaminazzjoni. Il-pipeline tagħna tal-kontaminazzjoni sab xi każijiet ta’ kontaminazzjoni, iżda dawn il-każijiet kienu ferm aktar rari u inqas gravi minn SWE-bench Verified, u l-ebda mudell ma seta’ jipproduċi gold patch sħiħ kelma b’kelma.
Se nkomplu ninvestu f’benchmarks oriġinali, miktuba privatament, u nitolbu l-għajnuna mill-industrija u mill-akkademja biex jagħmlu l-istess. F’GDPVal, il-kompiti jinkitbu privatament minn esperti tad-dominju, u dan inaqqas ir-riskju tal-esponiment, u s-soluzzjonijiet jiġu evalwati b’mod olistiku minn reviżuri mħarrġa. Dan l-approċċ juża ħafna riżorsi, iżda qed isir dejjem aktar meħtieġ biex jitkejlu titjibiet ġenwini fil-kapaċità.


