Wygeneruj sobie program, czyli o bylejakości AI

W erze powszechnego entuzjazmu wokół sztucznej inteligencji coraz więcej osób – zarówno programistów, jak i zupełnie nietechnicznych użytkowników – sięga po AI, by tworzyć kod, rozwiązywać problemy lub budować proste aplikacje. Problem w tym, że często efekt końcowy to cyfrowy odpowiednik prowizorki.
Przykładem takiej prowizorki może być Kalkulator kalorii zbierający dane osób jako lead magnet dla trenera, czy dietetyka. Aplikacja działa poprawnie w podstawowym scenariuszu, ale nie sprawdza poprawności adresów e-mail, nie szyfruje danych i nie zabezpiecza formularza przed atakami typu SQL Injection. Wszystko wygląda dobrze na ekranie, ale w tle kryją się poważne zaniedbania, które mogą mieć katastrofalne skutki.
Działa, ale tylko na pierwszy rzut oka. A w świecie technologii, gdzie liczy się niezawodność, bezpieczeństwo i zgodność z normami – to zdecydowanie za mało.
Kod, który tylko wygląda na działający
Coraz częściej powstają aplikacje i strony, których kod tworzony jest przez osoby bez technicznego przygotowania. Dzięki AI można dziś błyskawicznie wygenerować całą strukturę projektu – formularze, funkcje logowania, bazy danych. Wszystko wygląda dobrze na pierwszy rzut oka, ale diabeł tkwi w szczegółach. Brak wiedzy sprawia, że nikt nie myśli o bezpieczeństwie, utrzymaniu, jakości, testach jednostkowych czy aktualizacji zależności. Efekt? Błędy, które mogą otworzyć drzwi dla atakujących, wycieki danych, brak zgodności z RODO czy innymi regulacjami.
Badania Stanford University oraz raporty CSET pokazują jasno: niemal połowa kodu generowanego przez AI zawiera poważne błędy bezpieczeństwa. Wśród nich dominują klasyczne podatności jak SQL Injection, XSS – przykładem może być przypadek popularnego projektu open-source, w którym wygenerowany przez AI kod formularza logowania pozostawił podatność SQLi. Błąd ten został później wykorzystany do przejęcia danych użytkowników i wstrzyknięcia złośliwego kodu.
Co gorsza, AI często powiela te same błędy, bo uczy się z publicznych repozytoriów, gdzie również znajdują się wadliwe fragmenty kodu.
To rodzi sytuację, w której błędy nie tylko się powielają – one się namnażają i rozprzestrzeniają, jak cyfrowe wirusy. Powstaje kod, który wygląda elegancko, działa w podstawowych przypadkach, ale zawodzi w momentach krytycznych – tam, gdzie wymagana jest odporność na ataki i zgodność z praktykami bezpieczeństwa.
AI jako doradca – i halucynujący szaman
Osoby nietechniczne coraz częściej traktują AI jak eksperta od wszystkiego – zadają pytania o konfigurację systemu, zabezpieczenia czy implementację funkcji. Problem w tym, że odpowiedzi często zawierają tzw. halucynacje: AI sugeruje nieistniejące opcje, błędne ścieżki, wymyślone komendy. Z zewnątrz wygląda to profesjonalnie, ale w praktyce prowadzi do poważnych problemów – od błędnych konfiguracji systemowych, przez brak kompatybilności z wymaganym środowiskiem, aż po zalecenia, które po prostu nie działają. Użytkownicy mogą tracić czas, wprowadzać błędne ustawienia lub wręcz narazić systemy na dodatkowe ryzyko – tylko dlatego, że AI podało coś, co brzmiało przekonująco.
Zjawisko "slopsquatting" (czyli generowanie przez AI odwołań do nieistniejących bibliotek) to realny wektor ataku. Oszuści mogą rejestrować takie biblioteki w popularnych repozytoriach (np. PyPI, NPM) i przejmować kontrolę nad aplikacjami, które je zaimportują. Co gorsza, osoby nietechniczne mogą nawet nie zauważyć, że korzystają z fałszywej paczki.
Widuję także wzrost liczby wymyślonych porad. Na forach i grupach dyskusyjnych, użytkownicy publikują "rozwiązania" wygenerowane przez AI – często błędne lub wręcz niebezpieczne. Inni je kopiują, nie weryfikując, i w ten sposób błędy rozprzestrzeniają się jak plotki.
Problem nie w AI, tylko w tym, kto pyta
Nie chodzi o to, że AI jest złe. Chodzi o to, że AI nie zastąpi wiedzy i doświadczenia. Źle sformułowany prompt, brak zrozumienia tematu, ślepa wiara w wynik – to główne przyczyny błędów. Modele językowe nie mają świadomości kontekstu, nie znają naszych realiów, nie rozumieją regulacji prawnych. Nie mają intuicji, nie zrozumieją wyjątków biznesowych ani subtelnych niuansów, które są codziennością dla ludzkiego specjalisty.
Tymczasem wiele osób zakłada, że skoro odpowiedź wygląda przekonująco – to jest poprawna. To bardzo złudne. W badaniu firmy Snyk aż 80% programistów uznało kod wygenerowany przez AI za bezpieczniejszy niż własny. To nie tylko naiwne – to wręcz niebezpieczne, bo prowadzi do rezygnacji z jakiejkolwiek weryfikacji. Tymczasem każdy fragment kodu – niezależnie od źródła – powinien przejść przez testy, przeglądy i analizę bezpieczeństwa.
AI może pomóc – ale nie każdemu i nie w każdy sposób
Dobrze przygotowany prompt, połączony z wiedzą ekspercką, może przynieść świetne efekty. AI sprawdza się jako narzędzie wspomagające – ale tylko wtedy, gdy używa go ktoś, kto zna temat. Osoba, która rozumie, co robi, potrafi zadać właściwe pytanie, zweryfikować wynik i zrozumieć konsekwencje implementacji. W rękach osoby początkującej to jak dać kierownicę dziecku. Pojedzie? Może. Ale czy bezpiecznie? Zdecydowanie nie.
Nie oznacza to, że początkujący nie mogą korzystać z AI. Oznacza to, że powinni robić to ostrożnie – jako wsparcie edukacyjne, a nie bezpośrednie źródło gotowych rozwiązań. To narzędzie, które ma potencjał, ale jego efektywność zależy od kompetencji użytkownika. Przykładowo: doświadczony programista korzystający z AI do wygenerowania szkieletu kodu REST API może znacznie przyspieszyć swoją pracę, a następnie poprawić i zabezpieczyć kod zgodnie z dobrymi praktykami. W takim scenariuszu AI staje się realnym wsparciem, a nie źródłem ryzyka.
Warto również mówić o odpowiedzialności. Kto jest odpowiedzialny za błędy wygenerowane przez AI? Programista? Firma? Twórca modelu? To pytanie coraz częściej zadają sobie regulatorzy i prawnicy – i na razie nie ma na nie jednej odpowiedzi.
Wnioski są jasne: AI to potężne narzędzie, ale wymaga świadomości, odpowiedzialności i pokory. Nie chodzi o to, by rezygnować z jego użycia – ale by wiedzieć, kiedy i jak z niego korzystać. To nie magia ani wszechwiedzący ekspert, tylko narzędzie – i jak każde narzędzie, w nieodpowiednich rękach może wyrządzić więcej szkód niż pożytku. Jeśli mamy korzystać z AI, róbmy to z głową. A jeśli nie wiemy, co robimy – zatrzymajmy się, zanim klikniemy "wygeneruj". krytycznego myślenia i umiejętności technicznych. W przeciwnym razie staje się źródłem bylejakości, prowizorki i poważnych zagrożeń bezpieczeństwa. I choć może przyspieszać pracę, to bez kontroli jakości robi więcej szkody niż pożytku.
W czasach, gdy każdy może generować kod jednym kliknięciem, jeszcze ważniejsze staje się zadanie pytania: kto ten kod sprawdził? Kto go zweryfikował? Kto będzie odpowiadał, gdy dane klientów wypłyną do sieci? I kto powie użytkownikowi: "to nie działa dobrze – tylko wygląda, jakby działało"?
Zobacz podobne artykuły

Awarie IT zdarzają się każdemu
Od paru godzin trwa awaria komunikatora internetowego Slack. Kilka tygodni temu nie można było korzystać z usług firmy Google, a jeszcze wcześniej spora część Internetu nie działała z powodu awarii usług Cloudflare. Czy to możliwe, że usługi w chmurze są niedostępne?

Macierz Eisenhovera, czyli jak zapanować nad priorytetami?
Iść na przerwę a może odpisać na tego maila, czy odebrać telefon od przełożonego? W jakiej kolejności zająć się tymi zadaniami, aby nie utracić nad tym kontroli i nie popaść w bezsilność? Rozwiązaniem tych problemów może być Macierz Eisenhowera (nazywana także Matrycą lub Kwadratem Eisenhowera).

Czy Alert RCB powinien informować o wyborach prezydenckich?
Komunikacja w niebezpieczeństwie jest jednym z ważniejszych zagadnień jakie się porusza podczas żeglowania, latania czy nurkowania. Ostrzeżenia potrafią uratować życie, dlatego nie powinny być lekceważone, a tym bardziej nie powinny swoją treścią prowadzić do ich zignorowania.