
Изкуственият интелект пише все повече програмен код, но тази тенденция е съпроводена с увеличаване на броя на уязвимостите. Проучване установи, че кодът, генериран от изкуствен интелект, съдържа 1,7 пъти повече грешки от кода, написан от човек.
Според статистика от платформата CodeRabbit, заявките за изменения в кода, генерирани с помощта на инструменти с изкуствен интелект, съдържат средно 10,83 грешки, в сравнение с 6,45 грешки в заявките (pull-request-ax), написани от човек.
Това води до по-дълго време за преглед на кода и увеличава риска повече грешки да попаднат в крайния продукт, казват експертите.
Проучването установи, че генерираният от изкуствен интелект код съдържа не само 1,7 пъти повече общи грешки, но и 1,4 пъти повече критични грешки и 1,7 пъти повече грешки, свързани с уязвимости.
Най-често срещаните проблеми включват логически грешки и грешки в коректността (1,75 пъти по-често срещани), проблеми с качеството и поддръжката на кода (1,64 пъти по-често срещани), уязвимости в сигурността (1,57 пъти по-често срещани) и проблеми с производителността (1,42 пъти по-често срещани).
Специфичните уязвимости, които се срещат по-често в код, генериран от изкуствен интелект, включват неправилно боравене с пароли, несигурни препратки към обекти, XSS уязвимости и несигурна десериализация (процесът, чрез който данните се възстановяват до първоначалната им структура).
Дейвид Локър, директор на CodeRabbit AI, отбеляза, че инструментите с изкуствен интелект значително увеличават обема на произведения код, но също така водят до недостатъци в кода, които организациите трябва проактивно да смекчат.
Все пак изкуственият интелект вече се е доказал като полезен в ранните етапи на кодиране, увеличавайки ефективността и скоростта на прототипиране на проекти. Генерираният от AI код съдържа 1,76 пъти по-малко правописни грешки и създава 1,32 пъти по-малко проблеми с тестваемостта.
Благодарение на изкуствения интелект, разработчиците създават повече код, така че общият дял на проблемния код може да не е толкова висок, колкото изглежда първоначално.
Освен това, моделите на изкуствен интелект, като например семейството GPT на OpenAI, непрекъснато се усъвършенстват, за да произвеждат по-точни и по-малко податливи на грешки резултати.
