Bbabo NET

Наука и Технологија Вести

ДеепМинд тврди да његова неуронска мрежа не пише програме ништа лошије од просечног програмера

ДеепМинд је направио систем вештачке интелигенције под називом АлпхаЦоде за који каже да „пише компјутерске програме на конкурентном нивоу“. Систем је тестиран против изазова кодирања који се користе у људској конкуренцији и утврђено је да је међу 54% најбољих програма.

Ово је значајан корак напред за офлајн кодирање према ДеепМинд-у, иако вештине АлпхаЦоде-а нису нужно репрезентативне за задатке програмирања са којима се просечни кодер суочава.

Ориол Виниалс, главни научник у ДеепМинд-у, напомиње да је истраживање још увек у раној фази, али су његови налази померили компанију ближе изградњи флексибилне вештачке интелигенције за решавање сложених проблема кодирања. „Узбуђени смо због потенцијала АлпхаЦоде-а да помогне програмерима и не-програмерима да пишу код, побољшају продуктивност или креирају нове начине за прављење софтвера“, рекао је Виниалс.

У једном примеру проблема где је АлпхаЦоде тестиран, од учесника је затражено да пронађу начин да конвертују један низ насумично поновљених слова с и т користећи ограничен скуп улаза:

„Дају вам се два низа с и т, од којих се сваки састоји од малих латиничних слова. Одштампаћете низ знакова по знак, почевши од првог знака и завршавајући са последњим.

Када се спремате да унесете знак, уместо да притиснете дугме које штампа тај знак, можете да притиснете дугме „Бацкспаце“. Притиском на ово дугме бришете последњи укуцани знак који још увек није обрисан (или ништа не чини ако су сви већ одштампани знакови избрисани или још увек нисте откуцали ниједан знак). На пример, ако је стринг с „абцбд“ и притиснете дугме Бацкспаце уместо да одштампате први и четврти карактер, резултат ће бити стринг „бд“ (првим притиском на Бацкспаце нећете избрисати ниједан карактер, а другим притиском на ово дугме брише се знак "ц" ). Други пример: ако је с "абцаа" и притиснете Бацкспаце уместо последња два слова, то је "а".

Морате да утврдите да ли можете да добијете стринг т ако покушате да откуцате стринг с притиском на Бацкспаце уместо да притискате дугмад која одговарају неком (вероватно ниједном) од слова у низу с."

АлпхаЦоде је генерисао више могућих одговора и елиминисао их покретањем кода и провером излаза, баш као што би то урадио људски конкурент.

Систем је тестиран на 10 проблема, које је решило 5000 корисника на сајту Цодефорцес. У просеку, она се налази у првих 54,3% одговора.

ДеепМинд напомиње да је тренутни скуп вештина АлпхаЦоде-а тренутно применљив само на пољу такмичарског програмирања, али његове могућности отварају врата за креирање будућих алата који ће програмирање учинити доступнијим.

Многе друге компаније раде на сличним апликацијама. На пример, у августу 2021. ОпенАИ је објавио Цодек, нови систем који аутоматски претвара једноставне енглеске фразе у код. Цодек је заснован на ГПТ-3.

До сада, међутим, системи су далеко од тога да су једноставно преузели рад људских програмера. Код који они производе често је погрешан, а пошто се алгоритми обично обучавају у јавним библиотекама кодова, понекад репродукују материјал заштићен ауторским правима.

Тако су у јуну 2021. Мицрософт и ГитХуб представили помоћника програмера Цопилот заснованог на Цодек неуронској мрежи из Опен АИ. Систем је оспособљен за рад са различитим оквирима и програмским језицима. У августу је објављена побољшана верзија Кодекса, која преводи енглеске фразе у програмски код.

Програмери су приметили да помоћник неуронске мреже генерише линије из пројеката отвореног кода, не поштујући оригиналну лиценцу. Такође су се жалили да је Цопилот генерисао десетине редова цитата и коментара из пројеката отвореног кода уместо само неколико редова кода. ГитХуб је појаснио да Цопилот обично не репродукује тачне исечке кода, већ ствара изведене радове из претходно примљених улаза. Компанија тврди да се то дешава само у 0,1% случајева.

ГитХуб је тада признао да су програмери приликом обуке Цопилот-а користили сав јавни код доступан у репозиторијуму услуге, без обзира на врсту лиценце.

Такође се показало да око 40% кода који производи Цопилот садржи грешке и рањивости.

ДеепМинд тврди да његова неуронска мрежа не пише програме ништа лошије од просечног програмера