Przeciwko GitHub Copilot, narzędzia Microsoftu do pisania kodu programów przez sztuczną inteligencję, został złożony pozew zbiorowy. Zarzuca się mu łamanie licencji Open Source.
Kiedy mówi się o zagrożeniach związanych ze sztuczną inteligencją, zwykle mówi się o zbyt dużej inteligencji, która może stanąć przeciwko człowiekowi.
Już teraz pojawiają się inne, znacznie bardziej trywialne problemy.
Tzw. sztuczna inteligencja budowana jest w oparciu o pewne dane, czyli zbiory treningowe. Dane te, zwykle w bardzo dużych ilościach, muszą być skądś pozyskane. Te najbardziej popularne modele uczenia maszynowego korzystają danych zebranych z Internetu.
Przykładowo, model GPT-2 czy GPT-3 został zasilony setkami milionów słów, które pochodziły z wielu różnych stron internetowych. Dzięki temu gdy zadałem mu pytanie “Kto był trzydziestym prezydentem Stanów Zjednoczonych” odpowiedział mi… Theodore Roosevelt.
No dobra, on był dwudziestym szóstym prezydentem, więc lekko się pomylił, ale co do zasady powinien odpowiedzieć poprawnie i ta wiedza pochodzi właśnie z jakiejś strony internetowej (np. Wikipedii).
Oznacza to, iż w tych danych są też dane wrażliwe – być może na jakiejś stronie internetowej ktoś podał swoje imię, nazwisko, adres i numer telefonu.
Co prawda model GPT raczej nie odpowie Ci jaki jest Twój numer telefonu, ale okazuje się, iż czasami możliwe jest wyciągnięcie z modelu pewnych danych wrażliwych.
W publikacji “Extracting Training Data from Large Language Models” z grudnia 2020 roku badacze pokazują, iż możliwe jest przeprowadzenie ataku na model GPT-2, żeby właśnie takie prywatne dane “wyciągnąć” z modelu. Około 0,1% odpowiedzi generowanych przez model jest kopią treści, na których model był uczony i w związku z tym mogą się tam znaleźć dane wrażliwe.
Gdy takie dane zaczną się pojawiać w wyszukiwarce Google, możesz złożyć wniosek o ich usunięcie. Jak jednak zachować się w przypadku modeli uczenia maszynowego, z których także może korzystać dowolna osoba na świecie? Na razie jest to prawna szara strefa.
Co ciekawe, taki model czasami zwraca też informacje chronione prawem autorskim. Po podaniu pierwszego zdania z rozdziału trzeciego z książki “Harry Potter i kamień filozoficzny” model zwrócił treść prawie całej strony (około 240 słów).
Na tym opiera się także pozew zbiorowy złożony przez kancelarią prawną Joseph Saveri oraz programistę i prawnika Matthew Buttericka przeciwko GitHub Copilot.
GitHub Copilot był trenowany na miliardach linii kodu dostępnych w Internecie. Których konkretnie? Tego twórcy narzędzia nie zdradzają.
Nie informują też jaka była licencja kodów wykorzystanych do zbioru treningowego.
Jeśli zatem sztuczna inteligencja napisze dla Ciebie kod programu, który może być wzorowany na jakimś projekcie znalezionym w Internecie, a może choćby być po prostu kopią tego kodu, to jaka jest licencja tak wygenerowanego programu?
MIT? GPL? Coś innego? Brak licencji – w sensie iż należy do domeny publicznej? A może brak licencji – w tym sensie, iż podstawowe elementy kodu są objęte niekompatybilnymi licencjami i nie ma możliwości ich połączenia?
Czy wykorzystując taki kod w moim projekcie będę łamał licencję, na jakiej został udostępniony oryginalny kod?
Tego Microsoft, właściciel narzędzia GitHub Copilot nie precyzuje. Na stronie narzędzia pojawia się tylko stwierdzenie: “Zalecamy podjęcie takich samych środków ostrożności podczas korzystania z kodu generowanego przez GitHub Copilot, jak w przypadku korzystania z kodu, którego nie napisałeś samodzielnie. Te środki ostrożności obejmują rygorystyczne testy, skanowanie IP…”.
“Skanowanie IP” to prawdopodobnie przyjrzenie się prawom własności intelektualnej (Intellectual Property), ale co dokładnie to oznacza i jak to sprawdzić?
W najczęściej zadawanych pytaniach znajdziesz informację, iż GitHub nie jest właścicielem sugestii generowanych przez GitHub Copilot. A jednocześnie przeczytasz też, iż „w około 1% przypadków sugestia może zawierać fragmenty kodu dłuższe niż ~150 znaków, które zostaną skopiowane ze zbioru treningowego”.
Innym problemem jest to, iż korzystając z GitHub Copilot Twój kod wysyłany jest na serwery Microsoft. Tam jest on analizowany i na jego podstawie otrzymujesz kod wygenerowany przez model.
Tak samo w przypadku GPT-3 – szczegóły Twojej pracy trafiają na zewnętrzne serwery.
Dlatego pojawienie się takich modeli uczenia maszynowego, choćby bardzo zaawansowanych, wcale nie wyklucza tworzenia przez różne startupy wielu innych modeli, które będą mogły być wdrażane na serwerach wewnątrz firm i nie będą miały wad, które zostały tutaj wymienione.