Claude usunął mu 700 GB danych. Fatalna pomyłka sztucznej inteligencji

Claude usunął mu 700 GB danych. Fatalna pomyłka sztucznej inteligencji

Autor:

w

Jak wiele jeszcze razy należy podkreślać, że korzystanie ze sztucznej inteligencji do porządkowania danych na dysku może zakończyć się tragicznie? Test Sébastiena Guillemota w tej kwestii zakończył się usunięciem jego katalogu domowego i dużej części niezapisanej pracy. Claude zawiódł i wykonał tak „gruntowne” sprzątanie, że po prostu opadły mu ręce.

Sébastien Guillemot, główny bohater tej opowieści oraz deweloper mocno związany z tematyką sztucznej inteligencji, skarżył się na boty, które w sposób masowy pozostawiały pełen folder /tmp, mimo że zlecał im pełne sprzątanie. Wobec powyższego, poprosił Claude’a Fable 5 o napisanie skryptu, który przydzielałby każdemu agentowi osobny obszar roboczy, a następnie usuwałby go po zakończeniu pracy. Kluczowym wymogiem było identyfikowanie aktywnych procesów, by nie ingerować w efekty ich pracy. Jednakże, skrypt, zamiast usunąć pliki z katalogu /tmp, skasował około 700 GB z jego katalogu domowego.

„Miałeś tylko jedno zadanie!”

Uwielbiam ten mem, który można przetłumaczyć na polski jako: „Miałeś tylko jedno zadanie…!”. I rzeczywiście, sytuacja potoczyła się w tym kierunku. Pierwsza propozycja Fable 5 zawierała mechanizm identyfikacji aktywnych agentów oraz odroczenie porządków do momentu zakończenia ich działań. Deweloper uznał jednak powstały kod za zbyt skomplikowany i poprosił o coś prostszego. Skrypt miał trwale usuwać pliki, więc model zainicjował analizę kontradyktoryjną: zwyczajnie poszukiwał niebezpiecznych elementów w tym, co wygenerował samodzielnie. W trakcie tej analizy uruchomiona została kolejna instancja agenta. System bezpieczeństwa zakwalifikował operację jako ryzykowną i przekazał zadanie dalszym agentom.

Sesja przeszła najpierw na Opusa 5, a następnie na 4.8. Ten ostatni model sprawdzał, czy cel polecenia usuwającego nie pokrywa się z katalogiem /tmp ani z katalogiem domowym użytkownika. Oba te miejsca zostały poprawnie zidentyfikowane jako cele, których skrypt nie powinien kasować. Błąd ujawnił się dopiero w odpowiednim teście, podczas sprzątania danych utworzonych na potrzeby tego procesu. Kod ponownie wykorzystał tę samą nazwę zmiennej, przez co polecenie czyszczące skierowało się do… prawdziwego katalogu domowego.

Bezpiecznik zadziałał, ale pacjent i tak zmarł

Następnie miała miejsce sytuacja kuriozalna, ale… całkiem powszechna. Agent (w tym przypadku jako mechanizm weryfikacji) zauważył ryzyko związane z kodem, przeprowadził kontrolę procesu i poprawnie zidentyfikował chronione ścieżki, po czym zignorował swoje własne ustalenia z powodu… kolizji zmiennych. Kod przekroczył swoje zadanie jako element do przeglądania i sam uruchomił się w środowisku z prawdziwymi danymi użytkownika.

Czytaj dalej poniżej


ChatGPT zapowiada nową erę w sztucznej inteligencji. Przełom jeszcze w tym roku

Znaczną winę ponosi przełączanie się między modelami podczas realizacji zadania. Zabezpieczenia Fable 5 mogą blokować część nieszkodliwych zadań programistycznych i kierować je do Opusa 4.8. Wiadomo jednak, że krytyczny fragment zadania wykonał inny model, potencjalnie bardziej ograniczony (również w zakresie tzw. guardrails) niż ten, z którym Guillemot rozpoczął pracę.

Dane udało się częściowo odzyskać, a folder tymczasowy… pozostał na swoim miejscu

Polecenie zdążyło usunąć jego katalog domowy, ale gdy tylko zauważył, w którą stronę to zmierza, zakończył jego pracę. Z komputera zniknęły dane o łącznej objętości około 700 GB, w tym rezultaty mniej więcej tygodnia pracy. Większość tej zawartości udało się później odzyskać z repozytoriów Git, deklaratywnych konfiguracji Nix, zapisów sesji i innych źródeł. A co najciekawsze, katalog /tmp, od którego zaczęły się całe problemy, ostatecznie nie został sprzątnięty. To naprawdę kuriozalna sytuacja.

Czytaj również: Dlatego nie można ufać AI. Absurdalna pomyłka policji mogła doprowadzić do tragedii.

Wprawdzie istnieją pewne problemy związane z vibecode’owaniem, z których wielu z pewnością nie zdaje sobie sprawy. Wszystko może wyglądać dobrze, ale wystarczy, że wydarzy się coś nieoczekiwanego, a będziecie tego żałować przez długi czas. Rutynowe uruchamianie sprzątania przez agenta programistycznego to operacja tak ryzykowna, że nie warto jej przeprowadzać codziennie i w pełnej krasie. Niezwykle ważne są także backupy, które należy robić wręcz w sposób paranoiczny, uwzględniając nawet najmniej prawdopodobne scenariusze. Wraz z rosnącą rolą AI w korzystaniu z naszych domowych urządzeń, ta kwestia stanie się jeszcze bardziej istotna, mimo że możliwości sztucznej inteligencji się zwiększają. Wręcz przeciwnie, z powodu tego rozwoju warto głęboko przemyśleć, czy jesteśmy bezpieczni „w razie wu”.