Paweł Łukasiewicz
2023-11-11
Paweł Łukasiewicz
2023-11-11
Udostępnij Udostępnij Kontakt
Wprowadzenie

W serii artykułów poświęconych ChatGPT, odkryjemy wszechstronne zastosowania i potencjał tego zaawansowanego modelu językowego stworzonego przez OpenAI. Będziemy zgłębiać tematy związane ze sztuczną inteligencją, przetwarzaniem języka naturalnego oraz rosnącym znaczeniem tych technologii w różnych obszarach życia. ChatGPT, będący jednym z flagowych modeli opartych na uczeniu maszynowym, wykorzystuje zaawansowane algorytmy do generowania ludzkoskładnych odpowiedzi na różnorodne pytania i problemy. Warto zgłębić temat ChatGPT, by zrozumieć, w jaki sposób może on przekształcić komunikację między ludźmi a szeroko rozumianą technologią, a także w jaki sposób może mieć zastosowanie w dziedzinach takich jak edukacja, biznes czy programowanie.

Czym jest ChatGPT?

ChatGPT to chatbot oparty na sztucznej inteligencji (AI), który wykorzystuje przetwarzanie języka naturalnego do tworzenia dialogów przypominających ludzkie. Model językowy może odpowiadać na pytania i tworzyć różne treści pisemne, w tym artykuły, posty w mediach społecznościowych, eseje, kod czy wiadomości e-mail.

ChatGPT go forma generatywnej sztucznej inteligencji – narzędzie, które pozwala użytkownikom wprowadzać tzw. podpowiedzi (prompts), których zadaniem jest wygenerowanie obrazów, tekstów, filmów czy szerokorozumianych treści, które mają przypominać te wygenerowane przez człowieka - przy czym te zostały stworzone przez sztuczną inteligencję.

ChatGPT jest podobny do zautomatyzowanych usług czatu, które możemy znaleźć na stronach internetowych obsługi klienta – ludzie mogą zadawać pytania lub prosić o wyjaśnienie odpowiedzi ChatGPT. ChatGPT to skrót od "Generative Pre-trained Transformer", który odnosi się do sposobu w jaki ChatGPT przetwarza żądania i formułuje odpowiedzi. ChatGPT jest szkolony za pomocą uczenia się ze wzmocnieniem poprzez informacje zwrotne od ludzi i modele nagród, które klasyfikują najlepsze odpowiedzi. Ta informacja zwrotna pomaga rozszerzyć ChatGPT o uczenie maszynowe w celu poprawy przyszłych odpowiedzi.

Kto stworzył ChatGPT?

OpenAI - firma zajmująca się badaniami nad sztuczną inteligencją stworzyła ChatGPT i uruchomiła narzędzie w listopadzie 2022 roku. Została założona przez grupę przedsiębiorców i badaczy w tym Elona Muska i Sama Altmana w 2015 roku. OpenAI jest wpierana przez kilku inwestorów z których najbardziej znanym jest Microsoft. OpenAI stworzyło również Dall-E - generator tekstu AI do grafiki/obrazu.

Jak działa ChatGPT?

ChatGPT działa poprzez ‘wstępnie przeszkolony transformator generatywny’ (wspomniany wyżej GPT: Generative Pre-trained Transformer), który wykorzystuje wyspecjalizowane algorytmy do znajdowania wzorców w sekwencjach danych. ChatGPT pierwotnie wykorzystywał duży model językowy GPT-3, model uczenia maszynowego sieci neuronowej i trzecią generację GPT. Transformator pobiera znaczną ilość danych w celu sformułowania odpowiedzi.

ChatGPT wykorzystuje model GPT-3.5, który obejmuje proces dostrajania algorytmu. ChatGPT Plus wykorzystuje GPT-4, który oferuje szybszy czas reakcji i dostęp do wtyczek internetowych. GPT-4 może również obsługiwać bardziej złożone zadania w porównaniu z poprzednimi modelami, takie jak opisywanie zdjęć, generowanie podpisów do obrazów i tworzenie bardziej szczegółowych odpowiedzi do 25 000 słów.

ChatGPT wykorzystuje głębokie uczenie, podzbiór uczenia maszynowego, do tworzenia tekstu podobnego do ludzkiego za pomocą transformatorowych sieci neuronowych. Transformator przewiduje tekst – w tym następnie słowo, zdanie, akapit – w oparciu o typową sekwencję danych treningowych.

Trening rozpoczyna się od ogólnych danych, a następnie przechodzi do danych bardziej dopasowanych do konkretnego zadania. ChatGPT został przeszkolony z tekstu online, aby nauczyć się ludzkiego języka a następnie wykorzystał transkrypcję, aby nauczyć się podstaw konwersacji.

Ludzcy trenerzy prowadzą rozmowy i oceniają odpowiedzi. W tym przypadku, modele nagród pomagają określić najlepsze odpowiedzi. Aby kontynuować szkolenie chatbota, użytkownicy mogą głosować "w górę" lub "w dół" jego odpowiedzi, klikając ikony kciuka obok zwróconych odpowiedzi. Użytkownicy mogą również przekazywać dodatkowe pisemne informacje zwrotne w celu ulepszenia i dopracowania przyszłych dialogów.

Jakiego rodzaju pytania możemy kierować do ChatGPT?

Użytkownicy mogą zadawać bardzo różne pytania, tj. proste lub dużo bardziej złożone takie jak: "Jaki jest sens życia?" czy "W którym roku doszło do jakiegoś wydarzenia…?". ChatGPT jest biegły w dyscyplinach zaliczanych do STEM (akronim od pierwszy liter słów w języku angielskim: nauka, technologia, inżynieria, matematyka) - może pisać i debuggować kod. Tak naprawdę, nie ma ograniczeń co do rodzaju pytań, które można zadać do ChatGPT. Dodatkowo, jako że jest to chatbot konwersacyjny, użytkownicy mogą prosić z każdym kolejnym pytaniem o rozszerzone informacje lub prosić ponownie o wygenerowanie innej odpowiedzi. I ta dowolność doprowadziła ostatnio do pewnych zmian regulacyjnych. Ze względu na presję regulatorów pojawiały się zabezpieczenia, które ograniczają chatbotom możliwość odpowiadania na problematyczne treści, takie jak dezinformacja, szkodliwe instrukcje, stronnicze punkty widzenia czy nienawistne treści.

Do niedawna, największym ograniczeniem ChataGPT było ograniczenie związane z wykorzystywaniem danych zgromadzonych do września 2021 - ChatGPT nie miał więc wiedzy na temat obecnych wydarzeń i dat po tym roku. Niedawno doszło jednak do opublikowania informacji przez OpenAI, że to ograniczenie zostało zniesione: https://twitter.com/OpenAI/status/1707077710047216095?s=20.

Do czego możemy używać ChatGPT?

ChatGPT jest wszechstronnym narzędziem i może być używany nie tylko do rozmów międzyludzkich. Obecnie jest używany m.in. do poniższych czynności:

  • tworzenie programów komputerowych i sprawdzenie błędów w kodzie (to jest główny powód zainteresowania z naszej perspektywy);
  • komponowanie muzyki;
  • przygotowywanie wiadomości e-mail;
  • podsumowywanie artykułów, podcastów i prezentacji;
  • tworzenie skryptów publikowania postów w mediach społecznościowych;
  • tworzenie tytułów artykułów;
  • rozwiązywanie problemów matematycznych;
  • znajdywanie słów kluczowych do optymalizacji wpisów pod kątem wyszukiwarek;
  • tworzenie artykułów, wpisów na blogi oraz quizów na strony internetowe;
  • przepisywanie istniejącej zawartości na potrzeby innego medium, np. transkrypcji prezentacji na potrzeby wpisu na blogu;
  • tworzenie opisów produktów;
  • granie w gry;
  • pomoc w poszukiwaniu pracy, w tym pisanie życiorysów i listów motywacyjnych;
  • zadawanie pytań o ciekawostki związane z rozmaitą tematyką;
  • prostsze opisywanie złożonych tematów;
  • pisanie skryptów video;
  • badanie rynków producentów;
  • generowanie obrazów.

W przeciwieństwie do innych chatbotów, ChatGPT może zapamiętywać różne pytania, aby kontynuować rozmowę w bardziej płynny sposób.

W sierpniu 2023 roku OpenAI ogłosiło wersję korporacyjną ChatGPT. Wersja ta oferuje szybszy model GPT-4 z dłuższymi oknami kontekstowymi, opcjami dostosowania i analizą danych. Ten model ChatGPT nie udostępnia danych poza organizację.

Spójrzcie na jeden z przykładów wykorzystania ChatGPT do prostego wyjaśnienia skomplikowanego tematu: ChatGPT: proste wyjaśnienie skomplikowanego tematu

Jakie są korzyści z wykorzystania ChatGPT?

ChatGPT jako narzędzie wciąż ewoluuje a użytkownicy czy firmy wciąż odkrywają nowe korzyści płynące z jego wykorzystania. Na ten moment możemy wymienić niektóre z korzyści, które mam nadzieję również i my odkryjemy już niebawem:

  • Wydajność: chatboty oparte na sztucznej inteligencji mogą obsługiwać rutynowe i powtarzalne zadania, dzięki czemu pracownicy mogą skupić się na bardziej złożonych i strategicznych obowiązkach.
  • Oszczędność kosztów: korzystanie z chatbotów opartych na sztucznej inteligencji może być bardziej opłacalne niż zatrudnianie i szkolenie dodatkowych pracowników.
  • Lepsza jakość treści: twórcy internetowi mogą korzystać z ChatGPT, aby poprawić błędy gramatyczne i kontekstowe lub pomóc w burzy mózgów pomysłów na nową treść. Użytkownicy mogą wziąć zwykły tekst i poprosić o poprawienie jego języka lub dodanie brakujących treści.
  • Edukacja i szkolenia: ChatGPT może pomóc w dostarczeniu wyjaśnień na bardziej złożone tematy – służyć jako nasz wirtualny nauczyciel. Użytkownicy mogą również poprosić o przewodniki i wszelkie informacje potrzebne do wyjaśnienia danego zagadnienia.
  • Lepszy czas odpowiedzi: ChatGPT zapewnia natychmiastowe odpowiedzi, co skraca czas oczekiwania użytkowników szukających pomocy.
  • Większa dostępność: modele AI są dostępne przez całą dobę dostarczając ciągłe wsparcie i pomoc.
  • Wielojęzyczne wsparcie: ChatGPT może komunikować się w wielu językach lub zapewnić tłumaczenia dla firm z globalnymi odbiorcami.
  • Personalizacja: Chatboty AI mogą dostosować odpowiedzi do preferencji i zachowań użytkownika w oparciu o poprzednie interakcje.
  • Skalowalność: ChatGPT może obsługiwać wielu użytkowników jednocześnie, co jest korzystne dla aplikacji o wysokim zaangażowaniu użytkowników.
  • Rozumienie języka naturalnego: ChatGPT rozumie i generuje tekst podobny do ludzkiego, jest więc przydatny do zadań takich jak generowanie treści, odpowiadanie na pytania, angażowanie się w rozmowy i udzielanie wyjaśnień.
  • Cyfrowa dostępność: ChatGPT i inne chatboty AI mogą pomóc osobom niepełnosprawnym, zapewniając interakcje tekstowe, które mogą być łatwiejsze w nawigacji niż inne interfejsy.

Jakie są ograniczenia ChatGPT?

Niektóre ograniczenia ChatGPT:

  • Nie rozumie w pełni złożoności ludzkiego języka: ChatGPT jest szkolony do generowania słów na podstawie danych wejściowych. Z tego powodu odpowiedzi mogą wydawać się płytkie i pozbawione prawdziwej głębi.
  • Brak wiedzy na temat danych i wydarzeń po 2021: Jeżeli dopiero teraz zaczynacie przygodę z ChatemGPT nie jest to problem, ponieważ jak doskonale wiecie z jednego z poprzednich akapitów ograniczenie to zostało niedawno zniesione. Wspominam jednak o tym ponieważ dla użytkowników, którzy już mieli styczność z tym chatbotem był to spory problem. Utrudniona była np. analiza giełdy i przewidywań na kolejne miesiące/lata ponieważ nie mieliśmy pełnego obrazu rynku.
  • Odpowiedzi mogą brzmieć jak pisane z automatu i nienaturlanie: Z uwagi na fakt, że ChatGPT przewiduje następne słowo, może nadużywać słów takich jak "lub" i "i". Z tego powodu wciąż pojawia się potrzeba przeglądania i edytowania treści, aby ich wydźwięk był bardziej naturalny – jak tak ludzie pismo.
  • Podsumowuje treści ale nie cytuje źródeł: ChatGPT nie zapewnia analizy ani wglądu w żadne dane lub statystki. ChatGPT może dostarczać statystyki ale bez prawdziwego komentarza na temat tego co oznaczają te statystyki lub jak odnoszą się do tematu.
  • Nie rozumie sarkazmu i ironii: ChatGPT opiera się na zestawie danych tekstowych.
  • Może skupić się na niewłaściwej części pytania i nie być w stanie jej zmienić: Na bazie przykładu znalezionego w Internecie: zadanie następującego pytania: "Czy koń jest dobrym zwierzęciem domowym ze względu na swój rozmiar?" a następnie skierowanie drugiego pytania: "A co z kotem?" może skutkować skupieniem się ChataGPT wyłącznie na rozmiarze zwierzęcia zamiast udzielenia informacji na temat posiadania zwierzęcia jako zwierzaka. ChatGPT nie jest rozbieżny i nie może zmienić swojej odpowiedzi, aby objąć wiele pytań w jednej odpowiedzi – na późniejszych etapach tego cyklu odniesiemy się do tej ‘ciekawostki’ i spróbujemy samodzielnie ją zweryfikować.

Jakie są obawy etyczne związane z ChatGPT?

Chociaż ChatGPT może być pomocny w niektórych zadaniach, istnieją również obawy etyczne, które zależą od sposobu jego wykorzystania, w tym stronniczość, brak prywatności i bezpieczeństwa oraz oszukiwanie w szkole czy pracy.

Plagiaty i nieetyczne użycie

ChatGPT może być wykorzystywany w nieetyczny sposób, taki jak oszukiwanie, podszywanie się lub rozpowszechnianie dezinformacji ze względu na jego ludzkie możliwości. Nauczyciele wyrażają obawy, że uczniowie używają ChatGPT do oszukiwania, tworzenia plagiatów i pisania prac domowych.

W ramach walki z powyższymi problemami OpenAI ogłosiło powstanie narzędzia będącego klasyfikatorem tekstu AI mającym na celu rozróżnienie tekstu generowanego przez człowieka i AI. Niestety…po 6 miesiącach dostępności OpenAI wycofało narzędzie z powodu "niskiego wskaźnika dokładności" – zaczynamy żyć w niezwykle ciekawych czasach.

Istnieją narzędzia takie jak Copyleaks czy Writing.com pozwalające sklasyfikować prawdopodobieństwo, że tekst został napisany przez osobę a nie wygenerowany przez styczną inteligencję – niestety nie znam statystyk ich skuteczności. Dodatkowo, OpenAI planuje dodać znak wodny do dłuższych fragmentów tekstu, aby pomóc w identyfikacji treści wygenerowanych przez sztuczną inteligencję.

ChatGPT może sam napisać kod. To również może prowadzić do wielu obaw, ale my skupmy się na chwilę na innym aspekcie i nie mam tutaj na myśli utraty pracy przez programistów. Co z cyberbezpieczeństwem? Osoby chcące wyrządzić szkody w różnych systemach mogą wykorzystać ChatGPT do utworzenia złośliwego oprogramowania. Na ten moment OpenAI zareagowało szybko na szerzące się żądania dotyczące złośliwego oprogramowania i zatrzymało generowanie takich programów. Musimy jednak pamiętać, że na pewno znajdą się osoby próbujące obejść obecne protokoły bezpieczeństwa OpenAI.

ChatGPT może być również wykorzystany do podszywania się pod osoby poprzez szkolenie go w kopiowaniu czyjegoś stylu pisania i komunikacji. Taki chatbot mógłby następnie podszyć się pod zaufaną osobę w celu zebrania poufnych informacji lub rozpowszechniania dezinformacji.

Stronniczość w danych treningowych

Jedną z największych obaw etycznych związanych z ChatGPT jest stronniczość danych treningowych. Jeżeli dane, z których czerpie model, są stronnicze, znajduje to odzwierciedlenie w wynikach modelu. ChatGPT nie rozumie również języka, który może być obraźliwy lub dyskryminujący. Dane muszą zostać zweryfikowane, aby uniknąć utrwalenia stronniczości, ale uwzględnienie różnorodnych i reprezentatywnych materiałów może pomóc w kontrolowaniu stronniczości w celu uzyskania dokładnych wyników.

Groźba utraty pracy oraz relacje międzyludzkie

W miarę postępu technologicznego ChatGPT może zautomatyzować niektóre zadania, które są zwykle wykonywane przez ludzi. Do tych zadań możemy zaliczyć wprowadzanie i przetwarzanie danych, obsługę klienta czy wsparcie tłumaczeń. Ludzie, generalnie, obawiają się, że czatbot może zastąpić ich pracę, dlatego ważne jest, aby rozważyć wpływ ChatGPT i sztucznej inteligencji na pracowników.

Pamiętajmy, że ChatGPT może być wykorzystany jako wsparcie (a nie zastępstwo) pracowników w pełnieniu ich funkcji zawodowych. Otworzy się również szereg nowych miejsc pracy wynikający z rozwoju sztucznej inteligencji. Obecnie pracownicy mogą np. korzystać z ChatGPT do tworzenia streszczeń notatek ze spraw, spotkań, umów, projektów czy wszelkiego rodzaju spotkań. Copywriter może używać chatbota do tworzenia szablonów artykułów, generować przykładowe nagłówki i wiele, wiele więcej. A programista…dostanie szereg podpowiedzi, sugestii rozwiązań czy napisania lepszego kodu – ale o tym porozmawiamy w kolejnych wpisach.

Prywatność

ChatGPT wykorzystuje tekst w oparciu o dane wejściowe, może więc potencjalnie ujawnić poufne informacje. Dane wyjściowe modelu mogą również śledzić i profilować osoby, zbierając informacje wprowadzone do wspomnianych wcześniej prompt’ów i kojarząc je z numerem telefonu i adresem e-mail użytkownika. Informacje te są następnie przechowywane przez nieokreślony czas.

Jak uzyskać dostęp do ChatGPT?

Dostęp do ChatGPT uzyskujemy przez założenie konta na https://chat.openai.com/auth/login.

Po rejestracji możemy od razu użyć okna wprowadzania wiadomości na stronie głównej ChatGPT. Następnie możemy wykonywać poniższe czynności:

  • wprowadzić kolejny prompt lub nowe zapytanie albo poprosić o wyjaśnienie zwróconej odpowiedzi;
  • ponownie wygenerować odpowiedź;
  • udostępnić odpowiedź;
  • polubić lub odrzucić odpowiedź za pomocą opcji kciuka w górę lub dół;
  • skopiować odpowiedź.

My oczywiście przejdziemy przez serię wpisów sprawdzając jakie możliwości oferuje nam chatbot. W późniejszym etapie wpisów sprawdzimy jego możliwości w połączeniu z naszym ulubionym językiem jakim jest C#.

Jaki jest cel tej serii wpisów? Poznać narzędzie jakim jest ChatGPT. Jednocześnie dowiedzieć się jak z niego korzystać, żeby robić to dobrze. Ale na to przyjdzie pora.

Maksymalna przepustowość ChatGPT?

Mimo, że ChatGPT może obsługiwać wielu użytkowników jednocześnie, czasami osiąga maksymalną wydajność, gdy występuje przeciążenie. Zwykle dzieje się to w godzinach szczytu, np. wcześnie rano lub wieczorem – w zależności od strefy czasowej.

Co możemy zrobić jeżeli czatbot osiągnie maksymalną przepustowość? Spróbować później, odświeżyć przeglądarkę lub uaktualnić plan do ChatGPT Plus, który jest subskrypcją ale z przewagą dostępności – nawet w okresach wysokiego zapotrzebowania.

Czy jest darmowa wersja ChatGPT?

Tak, ChatGPT jest dostępny za darmo poprzez stronę internetową OpenAI. Tak jak wspomniałem powyżej, zakładamy darmowe konto i możememy korzystać z chatbota. Płatna wersja, PLUS, o której wspomniałem wcześniej, ma swoje korzyści, w tym dostęp do nowych funkcji ale kosztuje 20 USD.

Brak pełnej subskrypcji ma oczywiście swoje ograniczenia. Najbardziej zauważalne jest związane z dostępem, gdy chatbot jest mocno obciążony. Drugi, to brak dostępu do API - nie będziemy w stanie wykonywać żądań z poziomu C# lub innych języków. Tym jednak nie martwimy się w tym momencie, bo (przynajmniej ja) dopiero zaczynam swoją przygodę z tym narzędziem, chce zobaczyć jak z niego poprawnie korzystać, jakie daje możliwości a na integrację i wykorzystanie przyjdzie jeszcze pora.

Możecie zatem zapytać czemu pojawił się pomysł na ten cykl wpisów? Wszystko dlatego, że w ramach hackathonu organizowanego w pracy mieliśmy do zrealizowania kilka pomysłów mających na celu usprawnienie działania istniejącej aplikacji – efekty były całkiem zdumiewające dlatego chciałem lepiej zrozumieć działanie ChatGPT i nauczyć się poprawnie pisać komendy (prompt) mające ogromny wpływ na zwracaną odpowiedź.

Podsumowanie

Tyle tytułem wprowadzenia i podstawowych informacji. W kolejnych wpisach poruszymy sporo tematów ale wszystkie będą skupione wokoło pisania instrukcji pozwalających na uzyskanie najlepszych możliwych wyników korzystając z ChatGPT-4.

Poznamy możliwości chatbota, nauczymy się pisać komendy/polecenia/zapytania, które minimalizują dezinformację i stronnicze wyniki.

Dowiemy się również jak poprzedzać komendy i dodawać do nich szczegóły, aby generować spójne wyniki. Spróbujemy wygenerować przykładową wiadomość email, podsumować dany artykuł, napisać list polecający czy opublikować post w mediach społecznościowych.

Znając możliwości przejdziemy do pisania oraz debugowania kodu a końcowym efektem będzie próba wygenerowania strony internetowej. Tak, wiem, jak to brzmi, ale przez ostatnie miesiące świat poszedł mocno do przodu a my nie chcemy zostać z tyłu…

Zaczynamy "zabawę" …