Молодежь и наука - третье тысячелетие: Материалы студенческой научно-практической конференции с международным участием

74 К. Ю. Комаров Факультет математики, физики и информатики, II курс магистратуры (очная форма обучения) Научный руководитель – И. Н. Балаба РАЗВИТИЕ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА В СФЕРЕ ПРОГРАММИРОВАНИЯ В настоящее время участились способы автоматизации стандартных задач разработчиков. Вследствие чего все больше и больше компаний развивают ис- кусственный интеллект для своих нужд. Искусственный интеллект применяется в технологиях, базирующихся на машинном обучении, и используется во многих задачах, чтобы облегчить вычис- лительные процессы, которые трудны для понимания или сложны в алгоритми- зации. Обработка и распознавания речи стали первыми примерами использова- ния машинного обучения, далее появились задачи, связанные с автоматизацией распознавания текстовых файлов, аудио и видео изображений. Основой искусственного интеллект является обучение без учителя (unsupervised learning), целью которого является методика глубокого обучения в процессе обработки решаемой задачи. Правильно настроенная система обучения способна автоматически определить основные черты входных данных и предо- ставить результаты обработки. Без глубокого обучения поиск необходимой ин- формации зачастую ложится на обязанности программиста, разрабатывающего систему их обработки. Данная модель предоставляет возможность самостоятель- ного принятия решений, связанного с обработкой данных, а после прохождения стадии обучения требования, связанные с вычислительной мощностью, памятью и энергией для поддержки работы сокращаются. Главное, чему надо научить нейросеть – это понимать и превращать человеческие слова (комментарии) в го- товый программный код, но поскольку данная технология еще в стадии развития, то необходимо четко описывать, предъявляемые к ней требования. В 2021 году Microsoft совместно с OpenAI запустили интеллектуальный по- мощник Copilot, созданный на основе нейронной сети Codex. Данный помощник анализирует программный код, расположенный во всех репозиториях GitHub и дает подсказки в виде целых блоков кода, написанные под запросы програм- миста. Алгоритм построен на базе языковой модели GPT-3, который синтезирует код в Visual Studio Code, позволяя не тратить много времени на поиск базового кода из Google или Stack Overflow [1]. На данный момент Copilot умеет работать с такими языками программирования, как JavaScript, Go, Python, Ruby и Typescript , и позволяет использовать различные фрейморки [2] . К сожалению, Copilot не лишен множества ошибок. На данный момент он уязвим к буферизации строк с плавающей запятой, имеются инциденты генера- ции строк из проектов с открытым исходным кодом, что является “отмыванием” GPL кода и позволяет обходить первоначальные лицензионные соглашения, а также несоответствии возраста модели анализируемого кода и т. д. [3]. Можно

RkJQdWJsaXNoZXIy ODQ5NTQ=