Бағдарламалау бағалауларында сигналды шудан ажырату
Егжей-тегжейлі аудит арқылы SWE-Bench Pro-да тапсырмаларға қатысты кең таралған мәселелерді анықтап, тапсырмалардың ~30%-ы ақаулы деп бағалаймыз.
Модельдеріміздің мүмкіндіктерін дәл өлшеу сенімді енгізу және қауіпсіздік шешімдері үшін, соның ішінде OpenAI-дың Дайындық шеңбері(жаңа терезеде ашылады) аясындағы шешімдер үшін маңызды. Әр модель шығарылымында модель ілгерілеуін бақылау үшін әртүрлі сыртқы және ішкі бенчмарк нәтижелерін хабарлаймыз. Нәтижелерге әсер ететін кемшіліктері бар бағалаулар мүмкіндіктер туралы жалған түсінік беріп, қауіпсіздік дәлелдерін бұрмалап, зерттеу басымдықтарына ықпал етуі мүмкін.
Біз жақында ең кең қолданылатын бағдарламалау бенчмарктерінің бірі SWE-bench Verified-те іргелі дизайн және контаминация мәселелері болғанын зерттеп, бұл бағалау бағдарламалық жасақтама әзірлеу мүмкіндіктері туралы мәнді сигнал бермей қалғанын анықтадық. Сол кезде біз кең қауымдастыққа SWE-Bench Pro-ға көшуді ұсынған едік.
SWE-Bench Pro(жаңа терезеде ашылады) модельдерді ұзағырақ көкжиектерде және шынайырақ бағдарламалау тапсырмаларында тексеру арқылы SWE-bench Verified-ті жақсарту және агенттік бағдарламалау мүмкіндіктерін жақсырақ бақылау үшін жасалды. SWE-bench Verified-тегідей, тапсырмалар жалпыға ашық және жеке репозиторийлер жиынындағы функция өзгерістері тарихынан бағдарламалық түрде алынады. Модельдерден бар функционалдықты бұзбай, жаңа функцияға арналған жаңа тесттерден өтетін шешім іске асыру талап етіледі. 731 тапсырмадан тұратын ашық бөлікте озық модельдер сегіз айда өту көрсеткішін 23,3%-дан 80,3%-ға дейін жақсартты.
Содан бері біз SWE-Bench Pro-ға да ұқсас аудит жүргізіп, деректер жиынын дерек нүктелерін талдау конвейері арқылы қарадық. Конвейер ықтимал бағалау кемшіліктерін белгілеу үшін модельдің тапсырманы орындау әрекеттерін, тапсырма метадеректерін және сәтсіздік іздерін талдады. Әр белгіленген тапсырма зерттеуші агенттердің бірнеше тәуелсіз тексеру кезеңінен өткізіліп, кейін бес тәжірибелі бағдарламалық жасақтама инженері тарапынан тәуелсіз қаралды; келіспеушіліктер қосымша зерттеуге жіберілді.
Деректер жиынының елеулі бөлігінде тапсырмаларды жарамсыз ететін мәселелер бар екенін анықтадық. Дерек нүктелерін талдау конвейеріміз 200 (27,4%) ақаулы тапсырманы белгіледі, ал адам аннотациясы науқаны 249 тапсырманы (34,1%) анықтады.
Мәселелер негізінен төрт санатқа бөлінді:
- Тым қатаң тесттер1 көмексөзде көрсетілмеген нақты іске асыру бөлшектерін міндеттейді, соның салдарынан функционалдық тұрғыдан дұрыс көптеген шешім жарамсыз деп танылады.
- Жеткіліксіз нақты көмексөздер2 жасырын тесттер талап ететін және қисынды түрде анықтау мүмкін емес талаптарды қамтымайды.
- Қамтуы төмен тесттер сұралған функцияны жеткіліксіз тексереді, сондықтан толық емес түзетулер өтіп кетуі мүмкін.
- Жаңылыстыратын көмексөз модельдерді қате мінез-құлыққа бағыттайды немесе тесттер талап ететін нәрсеге қайшы келеді.
Біздің нәтижелеріміз күрделі, бірақ әділ бенчмарктерді іріктеудің қиындығын және масштабталатын дерек сапасын тексеруде агенттердің пайдасы артып келе жатқанын көрсетеді. Осы нәтижелерді ескере отырып, SWE-bench Pro тапсырмаларының шамамен ~30%-ы ақаулы деп бағалаймыз және модель әзірлеушілеріне нәтижелерді мұқият зерделеуді ұсынамыз.
Мақсатымыз — тапсырмадағы сәтсіздіктер модельдің нақты шектеулерін, ал тапсырмадағы жетістіктер көмексөз талаптарына толық әрі жарамды шешімдерді көрсететініне көз жеткізу. Бағалауда қолданылған деректердің сапасын тексеру үшін әр дерек нүктесінің модель мүмкіндіктерін қаншалықты дәл көрсететінін бағалайтын сапаны қамтамасыз ету конвейерін құрдық.
Бастапқы дерек сапасы конвейері шолу үшін проблемаларды белгілейді. Біз белгіленген тапсырмаларды тереңірек агент көмегімен аудиттеу және тәжірибелі инженерлермен жүргізілген адам аннотациясы науқаны арқылы тексереміз.
Бастапқы автоматтандырылған сүзгі ықтимал ақаулы немесе проблемалы мысалдарды белгілеу үшін модельге берілген нұсқауларды, модельдің тапсырманы шешу әрекеттерін және осы әрекеттерді бағалау үшін қолданылған тесттерді қарайды. Бұл сүзгі ықтимал ақаулы 286 тапсырманы белгіледі. Содан кейін біз осы ішкі жиынды екі тәсілмен тереңірек қарадық: зерттеуші агенттермен кең тексерулер және соңғы адам пайымын қамтитын адам қадағалайтын агент шолуы; әрі тәжірибелі бағдарламалық жасақтама әзірлеушілерімен жүргізілген адам аннотациясы науқаны.
Әр белгіленген мәселені тапсырма репозиторийі мен ортасына қол жеткізген Codex негізіндегі зерттеуші агенттер тексереді. Бұл оларға жақын маңдағы кодты және репозиторийде қалыптасқан қағидаларды зерттеу арқылы жиі шешуге болатын орынды тапсырма екіұштылығын шын мәніндегі жеткіліксіз нақтылықтан ажыратуға көмектеседі. Агент тесттерді іске қосып, репозиторийдегі файлдарды қарап, модельдің тапсырманы орындау әрекеттерін және сол тапсырмадағы ортақ сәтсіздік түрлерін зерттей алады. Осындай терең аудиттер бірнеше рет тәуелсіз жүргізілгеннен кейін зерттеуші қорытындыларды қарап, соңғы шешім қабылдап, ықтимал мәселелерді белгіледі.
Сонымен қатар біз белгіленген ішкі жиынға адам аннотациясы науқанын жүргіздік. Тапсырмаларды қарамас бұрын бенчмарк мақсаттары, мәселе таксономиясы және шеткі жағдайлар бойынша оқытылған тәжірибелі бағдарламалық жасақтама инженерлерімен жұмыс істедік. Әр тапсырманы бес инженер қарады.
Шолушылар конвейер талдауын немесе транскриптіні қосымша контекст ретінде пайдаланбас бұрын, көрінетін мәселе сипаттамасы, тест жағдайлары және нақты дұрыс эталондық шешім («gold patch» деп аталады) негізінде тәуелсіз пайым қалыптастырды. Содан кейін шолушылар нақты дәлелдерге сүйеніп белгі мен маңыздылық деңгейін тағайындады, ал келіспеушіліктерді немесе сенімділігі төмен жағдайларды қосымша қарауға жіберді.
Адам шолушылары зерттеуші агенттерге қарағанда тапсырмаларды ақаулы деп белгілеуге көбірек бейім болды. Екі шолу жолы арасында санаттар бойынша да белгілі бір келіспеушілік болды, бірақ белгіленген тапсырмалардың ешқайсысында «ақаулы емес» ең жиі қойылған адам белгісі болған жоқ. Агент конвейері белгілеген санаттар бойынша шолушылардың пайымдары жағдайлардың 74%-ында қабысты.
Агент конвейерімен салыстырғанда, адам шолушылары тапсырмаға бірнеше белгі таңдауға да көбірек бейім болды; бұл олардың тапсырмалар бірнеше тұрғыдан ақаулы деп тапқанын немесе бір санатқа анық сыймайтынын көрсетеді. Бұл агент пен шолушы біріктірілген конвейер консервативті белгілеу бергенін аңғартады: ол адамдар анықтаған кең сәтсіздік түрлерін қамтыды, бірақ шолушылар қосымша немесе қабаттасқан мәселелерді көрген жағдайларды толық санамады. Ең үлкен айырмашылық қамтуы төмен тесттерде болды: адамдар оларды бенчмарктің 9,4%-ында ең жиі мәселе ретінде таңдады, ал агент конвейерінде бұл көрсеткіш 4,1% болды.
Сәтсіздік түрлері
Бірқатар жағдайда тапсырма көмексөзінде нақты іске асыру тәсілі көрсетілген, бірақ жасырын тест жағдайлары басқа мінез-құлықты күткен.
Біз анықтаған мәселелер SWE-bench Verified ішіндегі ұқсас жағдайлармен бірге бенчмарктерді мұқият тексерудің маңызын көрсетеді. Ашық бастапқы код репозиторийлеріндегі мәселелер мен pull request-тер бастапқыда адамдардың бірлесіп жұмыс істеуі үшін, көбіне мейнтейнерлер мен үлес қосушылар арасындағы ұзақ пікір алмасулар барысында жасалған. Соның салдарынан мәселе сипаттамалары, біріктірілген код және модульдік тесттер модельдерді сенімді бағалауға арналған нақты әрі оқшауланған тапсырмаларға әрдайым толық сәйкес келе бермейді. Атап айтқанда, pull request-терге енгізілген тесттер тым қатаң болуы мүмкін, өйткені олар тапсырманы шешудің іске асыру тәсіліне тәуелсіз стандартын анықтау үшін емес, нақты өзгерісті растау үшін жазылады.
Сонымен қатар бағалау кемшіліктерін қазір тіпті аз уақыт бұрынғыға қарағанда анықтау оңайырақ. Модель мүмкіндіктері жақсарған сайын, біз сол модельдерді көмексөздерді, тесттерді, патчтарды, іздерді және шеткі жағдайларды әлдеқайда терең әрі дәйекті тексеруге пайдалана аламыз; бұл бұрын ауқымды түрде табу қымбат немесе іс жүзінде қиын болған бенчмарк мәселелерін ашуға көмектеседі.
Кең бағалау қауымдастығы модель мүмкіндіктерін арнайы тексеру үшін тәжірибелі бағдарламалық жасақтама әзірлеушілері құратын жаңа бенчмарктер жасайды деп үміттенеміз. Бұл тәсіл модель мүмкіндіктерін өлшеуде біз қалаған жоғары талап пен шынайылықты сақтай алады әрі бүкіл процесс бойы адам қадағалауын жақсартады. Осы талдауда анықталған мәселелерді ескере отырып, SWE-Bench Pro-ны қабылдау жөніндегі бұрынғы ұсынысымыздан бас тартамыз.
Түптеп келгенде, бағалау алдауға қиын, сенуге оңай және модель мүмкіндігі не сәйкестігін шынайы көрсететін бенчмарктер арқылы мәнді сигнал беруі керек. Бұл нәтижелер OpenAI-дың енгізу және қауіпсіздік шешімдеріне негіз болатындықтан, біз бақылайтын бағалаулар жарамды әрі ақпараттық болуы қажет.
Автор
Ескертпелер
- 1
Біз бұл санатты бұрын тар тесттер деп атағанбыз.
- 2
Бұрын біз бұл санатты кең тесттер деп атағанбыз.


