«Дочка» Alphabet выкатила ИИ, который пишет код не хуже среднего разраба
Компания DeepMind, которая принадлежит Alphabet, разработала систему искусственного интеллекта под названием AlphaCode, которая «пишет компьютерные программы на конкурентоспособном уровне» и может выдавать код не хуже среднестатистического разработчика. По словам создателей продукта, AlphaCode хорош, хоть и не идеален, но это только пока.
Компания DeepMind стала известной благодаря разработкам в области искусственного интеллекта и построения нейронных сетей, которые способны играть в компьютерные и настольные игры, как человек.
Принцип работы и особенности
Нейросеть основана на модели машинного обучения «Трансформер». По данным разработчиков DeepMind, AlphaCode способна генерировать код на Python или C++, принимая на входе текст с постановкой задачи на английском языке. Затем с помощью методов семплирования и фильтрации, которые позволяют создавать рандомные варианты кода, все решения распределяются в небольшой набор из десяти программ-кандидатов, которые отправляются на внешнюю оценку. Этот автоматизированный процесс заменяет «людские» отладку, компиляцию и тестирование.
Тестирование AlphaCode
Эффективность AlphaCode проверили в рамках соревнований, организованных на платформе для кодинга Codeforces. В тестировании приняли участие более 5000 человек. Например, на одном из этапов нужно было преобразовать строку случайных, повторяющихся букв s и t в другую строку тех же букв, используя ограниченный набор входных данных. Участники испытания не могли просто набрать новые буквы, а должны были использовать команду backspace, которая удаляет несколько букв в исходной строке.
Десять таких задач были переданы в AlphaCode в точно таком же формате, в каком они даются людям. Чтобы найти решение, AlphaCode генерировал определенное количество возможных ответов и отсеивал неподходящие, запуская код и проверяя результат так же, как это сделал бы человек. По итогу десяти тестов, нейросеть попала в 54% лучших участников. В компании отметили, что для решения задач DeepMind каждый раз создавала новый код с нуля, а не использовала готовые сниппеты, в чем, например, ранее обвиняли другой продукт для генерации кода под названием Copilot.
Набор данных о задач и решения, на которые команда DeepMind опиралась во время тестирования продукта, доступен на GitHub.
«Могу с уверенностью сказать, что результаты AlphaCode превзошли мои ожидания. Я был настроен скептически, потому что даже в простых соревновательных задачах часто требуется не только реализовать алгоритм, но и (и это самая сложная часть) придумать его», — подчеркнул основатель Codeforces Майк Мирзаянов в письме The Verge.
В DeepMind отметили, что в настоящее время набора навыков AlphaCode достаточно только для соревновательного программирования, но его способности открывают путь к созданию будущих инструментов, которые «сделают программирование более доступным и однажды полностью автоматизированным».
Мнение пользователей
Вероятно, как и в случае с Copilot, цель AlphaCode — помочь разработчикам, а не заменить их. В любом случае, отношение к подобным технологиям пока скорее скептическое. Пользователи считают, что рано говорить о внедрении в реальные процессы технологии, которая решает примитивные задачи, так как при первом же столкновении с настоящими кейсами, выходящими за пределы специально подобранных примеров, показатели эффективности AlphaCode будут меньше нуля или равны ему.
Также, по мнению пользователей, никому не нужен продукт с «искусственным самосознанием». А вот инструмент, который был бы меньше похож на человека, но при этом был способен решать вместо него интеллектуальные задачи, был бы кстати. А вам?
Сообщить об опечатке
Текст, который будет отправлен нашим редакторам: