«Сбер» обучил нейросеть ruGPT-3 писать программный код
«Сбер» представил модель генерации кода, основанную на нейросети ruGPT-3. Разработку ведут команды Sberdevices и Sberworks. Модель легла в основу созданной разработчиками Сбера системы, получившей шуточное название JARVIS (Just another really valuable intellectual system — Еще одна очень ценная интеллектуальная система). Одной из частей системы стал сервис, позволяющий автоматически писать код, сокращая время на разработку. Уже с 15 ноября у внешних разработчиков появится возможность воспользоваться этим сервисом на Smartmarket — единой точке доступа ко всем технологическим платформам «Сбера».
Модель генерации кода основана на глубокой нейронной сети ruGPT-3, обученной на коде «Сбера» и open-source библиотек. Возможности такой модели позволяют нейросети дописывать код разработчика, искать уязвимые места в коде, переводить код с одного языка программирования на другой и даже — в перспективе — трансформировать в код алгоритм, сформулированный обычной речью.
Частью системы является сервис автозавершения кода, который работает по принципу подсказок. После написания одной части кода нейросеть предлагает варианты продолжения, которые пользователь может выбрать и не вводить код вручную. Уже сегодня JARVIS включает в себя плагины для популярных инструментов разработки (IDE): IDEA, PyCharm, WebStorm с поддержкой языков Java, Python и JavaScript, но эта функция доступна пока только для разработчиков Сбера. Планируется, что в начале следующего года плагины JARVIS для IDEA, PyCharm и WebStorm станут доступны всем желающим. Кроме того, поработать с сервисом автозавершения кода уже в ближайшее время можно будет на платформе Smartmarket — эта функция включена в инструментарий создания приложений для виртуальных ассистентов Салют.
В отличие от стандартных инструментов автозавершения кода, встроенных в IDE, JARVIS при написании программ способен опираться не только на структуру проекта и синтаксис языка, но и на текст комментариев на естественном языке. Таким образом, система, по сути, способна в определённых пределах переводить неформальные описания функций в программный код.
Константин Круглов, старший вице-президент по новым цифровым поверхностям Сбербанка, CEO Sberdevices, сказал: «Написание кода — процесс творческий, но целый ряд рутинных задач уже сейчас можно перепоручить нейросети. Решения, основанные на нашей модели, позволяют экономить самый ценный ресурс разработчика — время. Мы стали первой российской компанией, которая создала собственную модель генерации кода — и уже скоро предложим доступ к ней внешним разработчикам. При этом число доступных сервисов будет расширяться — например, нейросеть научится дописывать код на новых языках программирования».