Исследование показало, что ИИ-помощники помогают разработчикам создавать код, который с большей вероятностью содержит ошибки

Ученые-компьютерщики из Стэнфордского университета обнаружили, что программисты, которые принимают помощь от инструментов искусственного интеллекта, таких как Github Copilot, производят менее безопасный код, чем те, кто летает в одиночку. Из отчета: В статье под названием «Пишут ли пользователи более небезопасный код с помощью ИИ-помощников?» ученые из Стэнфорда Нил Перри, Мегха Шривастава, Дипак Кумар и Дэн Боне ответили на этот вопрос утвердительно. Что еще хуже, они обнаружили, что помощь ИИ имеет тенденцию вводить разработчиков в заблуждение относительно качества их продукции. «Мы обнаружили, что участники, имевшие доступ к ИИ-помощнику, часто создавали больше уязвимостей безопасности, чем те, кто не имел доступа, с особенно значительными результатами для шифрования строк и внедрения SQL», — отмечают авторы в своей статье.

«Удивительно, но мы также обнаружили, что участники, предоставившие доступ к ИИ-помощнику, с большей вероятностью поверили, что они написали безопасный код, чем те, кто не имел доступа к ИИ-помощнику». Ранее исследователи Нью-Йоркского университета показали, что предложения по программированию на основе ИИ часто небезопасны в экспериментах в разных условиях. Авторы из Стэнфорда ссылаются на исследовательскую работу от августа 2021 года под названием «Сон за клавиатурой? Оценка безопасности вклада кода GitHub Copilot», в которой было обнаружено, что с учетом 89 сценариев около 40 процентов компьютерных программ, созданных с помощью Copilot, потенциально эксплуатируемые уязвимости.

Это исследование, говорят авторы из Стэнфорда, имеет ограниченный масштаб, поскольку рассматривает ограниченный набор запросов, соответствующих 25 уязвимостям и только трем языкам программирования: Python, C и Verilog. Стэнфордские ученые также ссылаются на последующее исследование, проведенное некоторыми из тех же умников из Нью-Йоркского университета, «Влияние безопасности помощников по моделированию кода на больших языках: исследование пользователей», как единственное сопоставимое исследование пользователей, о котором они знают. Однако они отмечают, что их работа отличается тем, что она сосредоточена на модели OpenAI codex-davinci-002, а не на менее мощной модели OpenAI codex-cushman-001, обе из которых играют роль в GitHub Copilot, который сам является точно настроенным потомком Языковая модель GPT-3.