Kod stworzony przez AI zawiera gorsze błędy niż oprogramowanie stworzone przez ludzi


Kod stworzony przez AI zawiera gorsze błędy niż oprogramowanie stworzone przez ludzi

Rosnąca popularność narzędzi generatywnej sztucznej inteligencji w programowaniu zderza się z twardymi danymi. Najnowsza analiza pokazuje, że kod tworzony przez modele AI częściej zawiera poważne błędy niż oprogramowanie pisane przez ludzi. Choć automatyczne generowanie fragmentów aplikacji przyspiesza pracę zespołów, badacze ostrzegają, że zyski produktywności mogą być okupione spadkiem jakości i bezpieczeństwa.

Wnioski płyną z badania, które objęło setki zmian w otwartym oprogramowaniu. Rezultaty potwierdzają obawy wielu inżynierów, którzy w ostatnich miesiącach coraz częściej musieli poprawiać kod dostarczany przez asystentów AI.

Analiza setek zmian w repozytoriach

Badanie objęło 470 pull requestów zgłoszonych do projektów open source. Każda zmiana została oceniona pod kątem liczby i rodzaju problemów wykrytych w kodzie. Wynik okazał się jednoznaczny. Zmiany generowane przez sztuczną inteligencję zawierały średnio ponad dziesięć problemów, podczas gdy w przypadku kodu pisanego przez ludzi liczba ta była znacząco niższa.

Różnice były widoczne nie tylko w ogólnej liczbie usterek. W kodzie tworzonym przez AI częściej pojawiały się błędy uznawane za krytyczne oraz poważne, które mogą prowadzić do awarii aplikacji, wycieków danych lub podatności na ataki.

Logika, bezpieczeństwo i wydajność na minusie

Największe rozbieżności dotyczyły obszarów kluczowych z punktu widzenia jakości oprogramowania. Kod generowany przez sztuczną inteligencję znacznie częściej zawierał błędy logiczne i problemy z poprawnością działania. Równie wyraźnie odstawał pod względem bezpieczeństwa, utrzymania oraz wydajności.

Kod generowany automatycznie wymaga takiej samej, a często większej kontroli niż ten pisany ręcznie.

Raport CodeRabbit wykazał, że kod generowany przez sztuczną inteligencję jest mniej skuteczny niż kod tworzony na siłę w głównych kategoriach problemów. Boty wygenerowały więcej błędów logicznych i poprawności (1,75x), więcej błędów jakościowych i konserwacyjnych kodu (1,64x), więcej błędów bezpieczeństwa (1,57x) i więcej problemów z wydajnością (1,42x).

Jeśli chodzi o konkretne problemy związane z bezpieczeństwem, kod generowany przez sztuczną inteligencję 1,88 razy częściej zawierał błędy w obsłudze haseł, 1,91 razy częściej tworzył niebezpieczne odwołania do obiektów, 2,74 razy częściej dodawał luki w zabezpieczeniach XSS i 1,82 razy częściej implementował niebezpieczną deserializację niż kod generowany przez ludzi.

Eksperci podkreślają, że takie błędy nie zawsze są oczywiste na pierwszy rzut oka i często ujawniają się dopiero podczas testów lub audytów bezpieczeństwa. To zwiększa koszty dalszego rozwoju i utrzymania aplikacji.

Programiści kontra maszyny w drobnych detalach

Paradoksalnie sztuczna inteligencja wypadła lepiej w obszarze, który bywa zmorą wielu zespołów programistycznych. Kod generowany przez AI rzadziej zawierał literówki i błędy ortograficzne w nazwach zmiennych czy komentarzach. Badanie wykazało również, że fragmenty pisane przez ludzi częściej sprawiały trudności w kontekście testowalności.

Zdaniem Davida Lokera z CodeRabbit narzędzia AI realnie zwiększają tempo pracy, ale wprowadzają nowe ryzyka. Zespoły zyskują szybkość, a jednocześnie muszą poświęcać dodatkowy czas na przegląd, poprawki i wyjaśnianie działania kodu, którego autor nie zawsze w pełni rozumie.

Inne badania potwierdzają problem

Autorzy raportu zwracają uwagę na ograniczenia metodologii, ponieważ nie da się z absolutną pewnością ustalić, czy dany fragment kodu został w całości napisany przez człowieka. Mimo to podobne wnioski pojawiają się w niezależnych analizach.

Specjaliści z firmy Apiiro wykazali wcześniej, że korzystanie z asystentów AI wiąże się z wielokrotnie częstszym występowaniem problemów bezpieczeństwa w kodzie. Z kolei zespoły badawcze z uniwersytetów w Stanach Zjednoczonych i Kanadzie ostrzegały, że iteracyjne poprawianie kodu przy pomocy modeli językowych może prowadzić do stopniowego obniżania poziomu zabezpieczeń.

Spór naukowców trwa

Nie wszyscy badacze zgadzają się z tezą o wyraźnej przewadze ludzi nad maszynami. W innym badaniu, opublikowanym na początku 2025 roku przez naukowców z Australii i Nowej Zelandii, stwierdzono, że kod generowany przez GPT-4 przechodził więcej testów w określonych zadaniach niż rozwiązania przygotowane przez programistów.

Spodobało Ci się? Podziel się ze znajomymi!

Pokaż / Dodaj komentarze do:

Kod stworzony przez AI zawiera gorsze błędy niż oprogramowanie stworzone przez ludzi
 0