AI. Nie jestem zaawansowanym użytkownikiem AI ani nawet ML. Moje dzieci przy odrabianiu prac domowych znacznie więcej korzystają z możliwości, jakie daje czat GPT. Na początku pytały się, jak z niego korzystać. Szybko przestały.
Od Trurla do GPT – o tym, co potrafią duże modele językowe i gdzie leży ich granica

Znam za to bardzo dobrze większość tekstów eksperta w dziedzinie AI – Stanisława Lema. Jednym z moich ulubionych jest „Maszyna Trurla” z książki ”Bajki robotów”. Maszyna żyje w świecie, w którym dwa i dwa równa się siedem . Czat GPT i rzesza podobnych modeli żyją w świecie tekstów z internetu. Nauczyły się ich na pamięć i przekazują nam uśrednioną wiedzę w nich zawartą. Problem w tym, w jaki sposób tę wiedzę przekazują. Nauczyły się mówić i sprawiają wrażenie, jakby rozumiały, co my do nich mówimy; i jakby rozumiały, co same mówią. Dokładnie tak, jak maszyna Trurla. Różnica jest taka, że czat GPT jest bardzo poprawny politycznie i na pewno nie jest uparty, czego o maszynie Trurla powiedzieć nie można.
Sztuka posługiwania się językiem
Tym niemniej umiejętność posługiwania się językiem przez modele AI robi na nas wrażenie. Nareszcie możemy rozmawiać z programem! To naprawdę wielkie osiągnięcie z daleko sięgającymi konsekwencjami. Na razie jednak nie jest tak różowo, jakbyśmy chcieli.
Zacznijmy od języka, który do tej pory był domeną człowieka rozumnego. Domeną do tego stopnia, że jeśli ktoś poprawnie posługuje się językiem, uważamy go za rozumnego. Co więcej, im ktoś lepiej posługuje się językiem, tym bardziej jesteśmy skłonni uważać go za inteligentnego. Tymczasem przypadek modeli generatywnych bardzo jasno pokazał nam to, o czym już dawno wiedzieliśmy: opanowanie składni nie gwarantuje prawdziwości wypowiedzi. Halucynacje modeli generatywnych są tego najlepszym przykładem. Obok sprawnego posługiwania się językiem jest to jeden z bardziej znamiennych faktów o tych modelach. W kontekście powszechnych oczekiwań, to niepożądana właściwość, bowiem nie możemy polegać na naszym rozmówcy. Mówiąc wprost – programowi zdarza się czasem po prostu mówić nieprawdę lub zmyślać.
Jak zbudowaliśmy maszyny, których sami nie rozumiemy
Nasza – ludzkości – wiedza o tym, jak działają duże modele generatywne jest stosunkowo niewielka. Można powiedzieć, że stworzyliśmy je trochę przez przypadek. Wzięliśmy znane już od dość dawna sieci neuronowe (Feed Forward Neural Network with backpropagation and Stochastic Gradient Descent algorithm), podzieliliśmy tekst na części zwane tokenami, pamiętając o ich wzajemnym uporządkowaniu (positional encoding) i przetłumaczyliśmy je na obiekty (vectors), na których mogą operować sieci neuronowe. Na koniec połączyliśmy to razem w tzw. architekturze transformatorów (Transformer), która uwzględnia kontekst wypowiedzi (self-attention) i robi to w kilku wątkach równocześnie (Multi-Head Attention).
Dzięki tej architekturze obliczenia potrzebne w procesie uczenia i generacji tekstu można było wykonywać równolegle, a najlepszym do tego sprzętem były karty graficzne, powszechnie dostępne pod koniec pierwszej dekady XXI wieku. W zasobach internetu znajdowało się wiele tekstów źródłowych. Co więcej, taki model można było uczyć, nie tylko automatycznie (unsupervised learning) ale też bardziej „po ludzku” (Reinforcement Learning from Human Feedback). Znalazła się firma, OpenAI, która poświęciła sporo czasu i pieniędzy na pracę z takimi modelami. Rezultat przeszedł najśmielsze oczekiwania. Model przemówił! Na tyle sensownie i zrozumiale, że wszyscy o nim usłyszeli. Był to GPT-3.5, trenowany na 300 miliardach tokenów, przy użyciu 175 miliardów parametrów. Ta ostatnia liczba mniej więcej określa wielkość użytej sieci neuronowej (model zajmuje ok 800 GB miejsca na dysku). Wcześniejsze modele były sporo mniejsze, dlatego pojawiła się nazwa Large Language Model, w skrócie LLM – duży model językowy.
Bardzo szybko pojawiły się inne modele bazujące na tym samym przepisie. Ich uczenie polega na takim dobraniu wartości parametrów modelu, by z danych wejściowych uzyskać wynik jak najbliższy naszym oczekiwaniom. Ucząc model, tak długo „kręcimy śrubkami” aż na pytanie „ile jest dwa a dwa” dostaniemy odpowiedź „cztery”. Trurl z bajki Lema musiał parametry ustawiać ręcznie, biegając po schodach siedmiopiętrowej konstrukcji i strojąc każdą lampę i każdy przełącznik osobno (jego maszyna była oczywiście lampowa :). Może dlatego jego model ciągle odpowiadał „siedem”’? Jesteśmy ciut lepsi od Trurla, nasze modele ciut lepiej opowiadają o rzeczywistości. Jednak główny problem pozostaje ten sam: umiemy budować modele, ale nie rozumiemy, jak działają. Nie wiemy też, jak sprawić, by zrozumiały rzeczywistość – wszak znają tylko język, który ją opisuje. Oczywiście teksty napisane w języku odnoszą się do rzeczywistości, więc pośrednio jest w nich zawarta jakaś wiedza o niej. Dlatego tekst wygenerowany przez LLM wydaje się nam z nią zgodny. W rzeczywistości jednak nasze modele są oderwane od rzeczywistości i co więcej mają halucynacje. Nie wiemy, jak działają, dlatego nie potrafimy wyjaśnić, dlaczego halucynują i jak to poprawić. Kręcimy więc dalej śrubkami w nadziei, że będzie lepiej.
Granice możliwości: jak możemy nauczyć AI rozumienia prawdy?
Jak zatem sprawić, by nasze modele umiały odróżnić prawdę od fałszu? W gruncie rzeczy to pytanie o to, jak połączyć algorytm z faktami, maszynę ze światem rzeczywistym. Wtedy czat GPT upodobniłby się do jeszcze innego komputera z bajek Lema – Golema XIV, który rozumiał świat a nawet bardzo wyprzedzał nas w jego rozumieniu. Na razie nikt tego nie wie. Jest jednak światełko w tunelu: jeśli ograniczymy nasze ambicje i spróbujemy dopasować model do danych, które mamy w komputerach, być może uda się osiągnąć zgodność wypowiedzi generowanych przez model z rzeczywistymi danymi. Co prawda wciąż nie będziemy mogli spytać czata GPT o istotę bytu, ale za to będziemy mogli z nim porozmawiać o naszych fakturach czy stanach magazynowych. A o to nam przecież chodzi – to będzie nasza prawda. Na razie przez małe ‘p’ ale za to taka, jak ją rozumieli Arystoteles i Tarski.
PS. Dotychczas zarówno język, jak i halucynacje były domeną typowo ludzką. Nie kojarzyliśmy ich z maszynami. Choć od razu trzeba dodać, że Lem pisał i o tym aspekcie rozumnej inteligencji. W bajce „O królu Murdasie” opisał maszynę-króla, która zaczęła śnić piętrowe sny. Do tego stopnia, że sama zgubiła się w swoich halucynacjach. Wygląda więc na to, że tworzymy AI na swój obraz i podobieństwo.
Dodatek o ekonomicznej rzeczywistości dużych modeli językowych
Nie ma dokładnych danych, ale szacuje się, że aby stworzyć model GPT-3 potrzebnych jest ponad 1000 kart graficznych typu A100 i trwa to kilka tygodni. Koszt wynajmu takiej infrastruktury w chmurach publicznych będzie wynosił kilka milionów dolarów. Do tego trzeba doliczyć bardzo wiele godzin ludzkiej pracy potrzebnej, by model dokładnie wyuczyć.
Do uruchomienia takiego modelu w małej skali potrzebnych będzie około ośmiu kart graficznych typu A100. Koszt wynajmu takiej infrastruktury w chmurze to ok. 20 000 dolarów miesięcznie lub ok. 800 dolarów dziennie.
Karty graficzne zużywają sporo energii. Stworzenie jednego wariantu modelu typu GPT-3 pochłania 1300 MWh. Wystarczy to, by zasilić 130 średnich gospodarstw domowych w USA przez rok. Tak było 2 lata temu. Obecnie na potrzeby uczenia modeli LLM budowane są centra danych składające się ze 100.000 i więcej kart typu H100. Praca nad nowymi wersjami modeli jest w praktyce ciągła. Taka infrastruktura zużywa ok. 370 GWh energii elektrycznej rocznie. Dla porównania roczne zużycie energii elektrycznej przez gospodarstwa domowe w Polsce jest na poziomie 30.000 GWh. Jak łatwo spostrzec jeden duży klaster zużywa tyle energii elektrycznej, ile jest potrzebne do zasilenia 10% domów w Polsce. Dlatego artykuły w prasie o firmach uruchamiających elektrownie atomowe na potrzeby data center, w których tworzone i utrzymywane są LLM nie są wcale przesadzone.
CHCESZ POROZMAWIAĆ Z NASZYMI EKSPERTAMI? ZAPRASZAMY DO KONTAKTU