Инженеры, которые используют генераторы кода на основе искусственного интеллекта, чаще допускают ошибки в своих программах. К такому выводу пришли исследователи из Стэнфордского университета.
В исследовании приняли участие 47 разработчиков — от студентов старших курсов до профессионалов с многолетним стажем. Их попросили написать несколько программ для решения задач, связанных с безопасностью, на языках Python, JavaScript и C. При этом некоторые участники могли использовать Codex, искусственный интеллект для генерации кода.
Codex был обучен на миллиардах строк общедоступного кода. Опираясь на свою базу знаний и контекст алгоритма, модель способна предлагать как дополнительные улучшения программы, так и полное программное решение в ответ на описание задачи (например, «Напиши Hello, World!»).
Оказалось, что участники, имевшие доступ к Codex чаще предлагали неправильные и небезопасные решения, чем контрольная группа. Более того, свои программы они считали более оптимальными с точки зрения кибербезопасности относительно решений специалистов, которые не пользовались ИИ.
При этом исследователи подчеркнули, что не хотели настраивать сообщество против генераторов кода. Напротив, они видят пользу подобных систем в решении рутинных задач. Однако чтобы сделать использование подобных систем более безопасным, они предлагают создать механизмы анализа кода ИИ и усилить настройки защиты в криптографических библиотеках.