Jak sztuczna inteligencja zmieniła to, jak pracujemy? (film, 55 minut)
Mateusz Chrobok w swoim najnowszym podcaście, współprowadzącym z Adamem Overmanem-Gospodarczykiem i Jakubem Anno-Murgalskim, dotyka tematu rewolucji, jaką sztuczna inteligencja, szczególnie duże modele językowe (LLM), wprowadziła w nasze życie. W rozmowie poruszają różne przypadki użycia AI, co pozwala słuchaczom dostrzec, jak te zaawansowane technologie mogą być wykorzystane w codziennych zadaniach. Każdy z prowadzących dzieli się swoim doświadczeniem oraz przykładami, jak AI wpłynęło na ich pracę oraz osobiste życie. Adam na przykład opowiada o tego, jak we współpracy z chatem AI potrafi optymalizować swoje procesy twórcze, co ułatwia mu codzienne zadania, takie jak tworzenie treści czy programowanie.
Kuba z kolei podkreśla, iż AI może znacząco zwiększyć efektywność, zarówno w kontekście pracy, jak i życia osobistego. Używa LLM do przetwarzania informacji, filtracji treści oraz automatyzacji prostych działań, co przyśpiesza jego codzienną rutynę i pozwala skupić się na bardziej złożonych zagadnieniach. Dla niego AI to narzędzie, które nie tylko przyspiesza procesy, ale także pomaga w lepszym zarządzaniu czasem.
W podcaście pojawia się również krytyka ograniczeń technologii. Rozmówcy zauważają, że choć AI potrafi w niesamowity sposób wspierać nas w wielu aspektach, to wciąż wymaga od nas ludzkiej weryfikacji i kontrolowania procesów. Używanie AI nie oznacza bowiem pełnej automatyzacji. Przykłady przedstawione przez Kuby i Adama ilustrują, że maszyny nie zastąpią człowieka, ale z kolei mogą znacznie usprawnić wykonywanie zadań, które są powtarzalne i czasochłonne.
Na koniec, Mateusz omawia statystyki wideo, które na czas pisania tego artykułu miało już 13655 wyświetleń i 390 polubień. To pokazuje, jak duże zainteresowanie wzbudzają tematy związane ze sztuczną inteligencją oraz codziennym wykorzystaniem technologii w życiu codziennym. Rozmowa w podcaście jawi się jako ważny zbiór wiedzy, z którego każdy może zyskać, nie tylko zrozumiawszy, jak AI wpływa na naszą rzeczywistość, ale także jak można je wykorzystać w swojej codziennej pracy.
Toggle timeline summary
-
Dyskusja na temat tego, jak sztuczna inteligencja zmienia nasze życie.
-
Wprowadzenie gospodarzy podcastu, Adama Overmana-Gospodarczyka i Jakuba Anno-Murgalskiego.
-
Przegląd, jak modele językowe (LLM) i inne zastosowania AI wpływają na codzienne życie.
-
Prezentacja przypadków użycia, z którymi słuchacze mogą się identyfikować lub oceniać zastosowania AI.
-
Badanie powodów korzystania z LLM w codziennym życiu.
-
Dyskusja na temat równowagi między automatyzacją a delegowaniem w biznesie.
-
Wyzwania związane z automatyzacją zadań w porównaniu do delegowania ich innym.
-
Wprowadzenie do prostych przykładów automatyzacji i ich integracji w codziennych zadaniach.
-
Wykorzystanie kanałów RSS i LLM do kuracji wiadomości i treści.
-
Praca z LLM w celu podsumowywania treści.
-
Nawigacja przez kreatywne tytuły i clickbait.
-
Analiza warstw informacji dla lepszego zrozumienia treści.
-
Osobiste podejście do zarządzania i organizacji informacji za pomocą AI.
-
Stosowanie AI w procesach tworzenia i edycji treści wideo.
-
Dyskusja na temat znaczenia nadzoru ludzkiego w treści generowanej przez AI.
-
Wyzwania związane z używaniem AI w zadaniach kreatywnych, takich jak generowanie grafik.
-
Aktywne zastosowanie LLM w programowaniu i zadaniach związanych z kodowaniem.
-
Wykorzystanie narzędzi takich jak Grammarly do korekcji tekstów z AI.
-
Ostateczne refleksje na temat ewoluującej roli AI w tworzeniu treści.
-
Debata na temat aspektu personalizacji interakcji z AI.
-
Rozważania o wyzwaniach technicznych związanych z integracją AI z istniejącymi przepływami pracy.
-
Uwagi na temat znaczenia dostępu do przyjaznych dla użytkownika interfejsów API.
-
Oceny wydajności AI i znaczenie inżynierii podpowiedzi.
-
Dyskusja na temat etyki związanej z treściami generowanymi przez AI.
-
Zachęta dla publiczności do udziału w dyskusji dotyczącej doświadczeń z AI.
-
Zaproszenie do udziału w przyszłych wydarzeniach związanych z nauką o AI.
-
Podsumowanie dotyczące integracji AI w codziennych zadaniach.
Transcription
Co zmieniła sztuczna inteligencja w naszym życiu? Zapraszam was do kolejnego podcastu. Razem ze mną Adam Overman-Gospodarczyk, cześć. Oraz Jakub Anno-Murgalski, cześć. Dzisiaj opowiemy wam o tym, jak konkretnie LLM-y i też inne zastosowania sztucznej inteligencji wpłynęły na nasze życie. Będą use case'y, będą zastosowania po to, żeby każdy z was mógł w pewien sposób odnaleźć siebie albo powiedzieć, hej, ja też chcę albo nie, to jest zupełnie bez sensu. Zostawiamy wam pełną dowolność oceny tego. Także panowie, odpalmy to. Po co wam w ogóle LLM-y w życiu? Poplanuję po use case'ie, każdy po jednym i lecimy dalej. W moim przypadku przez to wyprowadzę biznes. Niektóre rzeczy trzeba delegować innym ludziom, a niektóre rzeczy trzeba automatyzować. I tutaj taka granica była między tym, co się da zautomatyzować, a co niestety trzeba gdzieś na zewnątrz komuś dawać, tłumaczyć, w jaki sposób to wykonać. I delegowanie innym osobom nie jest złe, tylko problem polega na tym, jaki jest czas reakcji. Czyli jeżeli na przykład wpada mi jakiś mail o północy, no to wiadomo, pracownik nie zareaguje, ale jeżeli wpadnie mi i automatyzacja jest w stanie go podjąć i podjąć jakąś decyzję, co z nim zrobić, no jest to dla mnie zdecydowanie bardziej korzystne. I tutaj właśnie wchodzi sobie LLM, który decyduje na przykład, czy to jest mail, który na przykład należy mi wysłać jako opowiadomienie, czy to jest na przykład coś, co może odpisać z automatu. To są takie proste automatyzacje, które na przykład działają w tle. Skrzynka odbiorcza, to jest twój numer jeden. Z takich rzeczy, które najczęściej używam, to jest na przykład przeglądanie źródeł informacji, czyli mam na przykład kanały RSS i chcę wybrać z tego materiały, które są pasujące do moich zainteresowań. Czyli przygotowuję newsletter Anonews i są pewne tematy, które mnie interesują, są pewne źródła, które ja chciałbym wyłapać i oczywiście mogę otworzyć sobie jakiś tam feed list czy jakikolwiek inny czytnik RSS, wybrać sobie to, co jest interesujące, ale taką moim zdaniem najprostszą automatyzacją, którą można zrobić, jest właśnie podpięcie tam LLM-a. LLM, a nie na przykład wyrażenie regularne. Chodzi o to, żeby wyciągnąć, o czym jest artykuł, a nie jakich słów kluczowych używa. Bo można napotkać się na bardzo kreatywne tytuły, które opisują w jakiejś takiej, nazwijmy to... Czy niedziela jest handlowa? Zobaczymy na tej zasadzie. To jest taki typowy clickbait, ale ja chcę się dowiedzieć, o czym to jest. I teraz można na kilku warstwach to analizować. Warstwa pierwsza to jest po prostu tytuł, co autor miał na myśli, a warstwa trzecia to jest przeczytać cały artykuł, ale nie żebym ja to czytał, tylko by właśnie to LLM czytał, wyciągnąć z tego taki TLDR i wtedy dopiero zdecydować, czy to naprawdę jest na temat, który mnie interesuje, a który nie. I to się sprawdza naprawdę fajnie. Ja się podepnę do tego tematu, czyli nie dam Adamowi szansy się wypowiedzieć, bo ja też jestem z tych ludzi, którzy nie dam rady wszystkiego przetworzyć, podpinam się pod fidli i korzystam z OpenAI do tego, żeby zadecydować. Czy to jest coś małego, co nadaje się na shorta, czy z tego można by zrobić odcinek, bo jest głębokim tematem, do którego mamy jakieś powiązania, czy to jest coś, co na przykład nadaje się na news do radia. I to jest bardzo dobre, bo jakbym miał ręcznie sam scrollować i przetwarzać wszystko, to jest mnóstwo czasu. To nie znaczy, że sam nie scrolluję, ale niektóre rzeczy można sobie fajnie dzięki temu zautomatyzować. Ja bym tu dodał jeszcze taką rzecz, że to, że coś jest wspierane przez Rzuczną Inteligencję, to nie znaczy, że jest robione przez Rzuczną Inteligencję. Bo opisałem swój proces od początku do końca, tam rozrysowałem na Twitterze, na Macedonie i komentarze, jakie się pojawiły m.in., to jest takie no i dlatego powstaje tak wiele słabej jakości treści. No nie, to nie służy do tworzenia treści, to nie służy do tego, żeby przygotować artykuł, to nie służy do przygotowania newslettera, tylko to służy do odsiania, do filtracji, nic więcej. To dalej trafia na tego samego człowieka, czyli gdyby mi to jakiś pracownik wyfiltrował, to i tak trafi do mnie, tak i mi to automat wyfiltruje, i tak trafi do mnie, jeżeli jest to coś nieregularne, to gdzie trafi, to też trafi do mnie. Więc jeżeli powstaje sobie jakości tekst, no to wiadomo, kto jest winien. Tak to wygląda. Spoko. Adamie? Tak, no to w moim przypadku ja bym powiedział, że dzieli się to zastosowanie czy obecność AI w moim życiu na takie dwie części. Pierwsza jest bezpośrednia, czyli sytuacja, w której prowadzę bezpośrednią rozmowę z czatem. No i to jest ciekawe, bo właśnie jak patrzę sobie na mój komputer przez 95% czasu, to zawsze na nim jest otwarte okno czatu. I w tym przypadku aplikacji, którą wręcz sam sobie stworzyłem właśnie po to, żeby ten czat mieć zawsze pod ręką i żeby móc szybko przekazywać i odbierać z niego dane. I to w zasadzie pomaga mi w każdej sytuacji, w której tworzę jakąś treść. Niezależnie od tego, czy to jest pisanie, czy to jest wymyślanie, czy to jest właśnie zastanawianie się nad czymś, rozwiązywanie problemu, kodowanie, programowanie. W zasadzie jedno i to samo. Ale w każdym razie chodzi o to, że AI towarzyszy mi cały czas. I to jest ta jedna wielka zmiana, która gdzieś tam nastąpiła w momencie, gdy pojawił się czat GPT. Tylko tutaj mówimy o takim mocno spersonalizowanym doświadczeniu, czyli połączeniu z modelem, z AI, które w tym przypadku posiada informacje na mój temat, na temat mojego doświadczenia, na temat bieżącego kontekstu, czyli czym się w danej chwili zajmuję, jakie zadanie robię, na czym mi w danej sytuacji zależy. Na przykład jak pytam o programowanie, to domyślnie model wie, że chodzi o programowanie w tych konkretnych językach, w których na co dzień pracuję, z uwzględnieniem na przykład mojego aktualnego doświadczenia, czyli pomijajemy jakichś podstaw w przypadku technologii, które znam. Także bezpośrednie zastosowanie. Programowanie, ja bym powiedział, że kształtowanie treści. A co masz na myśli? Odwiń ten wątek. Czym jest dla ciebie kształtowanie treści? No, powszechnie wiadomo, że dużo piszę i w zasadzie dzielę się swoją wiedzą w różne sposoby, ale też wykorzystuję pisanie do tego, żeby myśleć. Czyli żeby układać sobie w głowie różne tematy, czy to biznesowe, czy nawet prywatne, czyli jakieś tematy związane z rozwojem osobistym, z nauką, z poznawaniem, eksplorowaniem nowych tematów, niekoniecznie związanych z pracą, ale też z moimi interesowaniami, wykorzystuję AI po to, żeby poznawać tematy, które są dla mnie trudne. Czyli na przykład poznaję nowy język programowania, to znacznie łatwiej jest mi z nim pracować na samym początku, w momencie, gdy towarzyszy mi LLM, który jest w stanie na przykład wyjaśnić mi podstawy, które czasem są pomijane w dokumentacji, albo po prostu nie mam ich pod ręką. I wówczas AI sprawia, że nie tylko jestem w stanie fajnie się uczyć, ale przede wszystkim, że właśnie całe to doświadczenie jest takie świeże i też w sposób spoko, bo kurczę, rozmawiamy z komputerem. To jest takie doświadczenie, które kiedyś było tylko w filmach sci-fi, a teraz jest w zasadzie codziennością. No i tak, czyli całe tworzenie treści, mam na myśli to, że cokolwiek piszę, o czymkolwiek myślę, korzystając z komputera, to gdzieś tam kręci się AI, ale też podobnie jak Kuba, nie po to, żeby generować, ale po to, żeby wspierać mój proces związany z rozumowaniem, czy po prostu procesy kreatywne. I to jest świetne. No i to wszystko największą różnicą w porównaniu do na przykład korzystania z chat GPT, jest ten element personalizacji i podłączenia do moich źródeł wiedzy, do moich narzędzi, no i to wszystko sprawia, że mam wrażenie, jakbym rozmawiał z komputerem, który na swój sposób mnie rozumie. Ma dużo twojego kontekstu. Dobra, to w takim razie mój use case. My, tworząc treści na YouTube'a, robimy to na Notion. I ja mam takie scenariusze w Make'u, które synchronizują to, co pojawia się na YouTube'ie do Notion i zbierają tam układki, ilości lajków, ilości dislajków, które w apie jeszcze są. Takie różne metadane, które są dla nas potem przydatne, żeby analizować, co w jaki sposób idzie. I to w pewien sposób jest taka synchronizacja naszej wiedzy, bo cały nasz proces wytwarzania istnieje w Notion. Potem na koniec tego procesu poprzez Make'a, przez kole do API YouTube Analytics, zbieramy sobie te informacje i one są po prostu w jednym miejscu. To jest fajne, idzie to codziennie. Dzięki temu między innymi wiemy, że o kurcze, miał pójść jakiś short, coś się wywaliło, w procesie coś poszło nie tak, bo automat nam mówi o tym, że teraz nic nie poszło do danego dnia, mimo, że miało pójść, więc nasz proces coraz bardziej się usprawnia. Czyli takie pilnowanie procesów przez AI. Super use case, ponieważ rzeczywiście tam w grę wchodzi branie pod uwagę różnych informacji z różnych źródeł, no i takie trochę też zastanawianie się nad tym, czy wasze standardy są trzymane i ewentualnie dlaczego coś powinno być w nich zmienione, czyli jakaś tam informacja zwrotna. Super istotne i właśnie też w jednym z moich projektów pracuję, a w zasadzie już w dwóch projektach pracuję nad podobnymi rozwiązaniami. Głównie chodzi o procesy wewnętrzne, czyli te, których normalnie nie widać, a które ktoś musi dbać. No i w tym momencie mówimy o odciążeniu konkretnych osób, ale też doprecyzowaniu tego, co tak jakby mówi się potocznie, że naoliwia mechanizm, żeby działał lepiej, no to powiedzmy, że to rozwiązanie działa świetnie. Jeśli chodzi jeszcze o tworzenie treści, to tutaj na kilku takich warstwach to wykorzystuję. Ja tworzę takie kursy w godzinę programowania, skondensowane i do czego to wykorzystuję na przykład? Pierwsza rzecz to jest tworzenie agendy. Ja wiem, co ja chcę pokazać. No bo znam się na tej technologii, wiem dokładnie, co mogę ludzi zainteresować, wpisuję więc cały spis treści i zadaję jedno proste pytanie, o czym zapomniałem. Czy jest coś takiego, co dla początkujących byłoby ważne, a czego nie wymieniłem i nagle dowiaduje się kolejny podpunkt, kolejny, kolejny i teraz ważna rzecz, ja tego nie robię na ślepo, na zasadzie, no tak, czad GPD powiedział, więc tak, idziemy, tylko ja się zastanawiam, czy to naprawdę po pierwsze jest potrzebne, po drugie, czy ja jestem w stanie to zmieścić w tym jednostce czasu, którą sobie wybrałem i wtedy zdarzyło mi się kilkukrotnie, na przykład przebudowuję swoją agendę tak, aby tą sensową informację uwzględnić. Kolejna rzecz, którą robię, jeżeli mam na przykład taką długą sesję... Skracanie tekstu i poszukiwanie czegoś, co byłoby poza tym, co wpisałeś. Można tak powiedzieć, tak, żeby tematy, które na przykład zapomniałem albo tematy, które warto byłoby rozwinąć bardziej, bo są za mało rozwinięte, a kolejna rzecz, jeżeli mam za sobą właśnie długą sesję nagrań, załóżmy, nie wiem, 8 godzin ostatnio nagrywałem filmy, ja nie mam zielonego pojęcia, o czym ja mówiłem. Nie wiem, naprawdę nie wiem. I teraz, co trzeba zrobić? Ja mam seks z poprzednim zdaniem. Okej, ale to jest właśnie kontekst, moi drodzy. To jest wielkość kontekstu. Chodzi bardziej o to, że ja teraz mogę przygotować notatki do tego, co powiedziałem. Co robię? Biorę po prostu wyrenderowany film do Whispera, mam całość spisane jako tekst i mówię po prostu, jesteś studentem, notujesz moje tam najlepsze wypowiedzi, najciekawsze, coś, co ci się może przydać i tak jakby to była notatka studencka, wypisuję krok po kroku, co prowadzący powiedział. Whisper to jest speech-to-text, który jest otwarto źródłowy, można sobie pobrać, on przetwarza dźwięk na tekst. Tutaj też ważna informacja, że Whispera można też lokalnie uruchomić. Jak komuś tam waży 30 groszy na przykład za minutę, to można jak najbardziej sobie to odpalić lokalnie i też to zamienia całkiem fajnie na mowy, na tekst. W porcie mnie, masz lokalnie odpalone? Nie, akurat nie, ale co mnie zachwyciło w Whisperze, bo używałem podobnych rozwiązań, nie bazujących na AI, tylko takich, nazwijmy to, dostępnych publicznie, przez to jak ja mówię, czasami mówię niewyraźnie, najczęściej były tam problemy z transkrypcją, przekręcone słowa, inne takie rzeczy, Whisper nie ma absolutnie żadnego problemu ze zrozumieniem. Więc dla mnie to jest już magiczne rozwiązanie. I teraz właśnie z tego biorę sobie na przykład pierwsza warstwa, to jest przygotuj mi notatki, co powiedziałem, kolejna warstwa na przykład zrób mi znaczniki, tak jak na YouTube, to znaczy timestamp oraz o czym mówiłem w tym konkretnym miejscu. Timestampy są kompatybilne na przykład z Vimeo, więc mogę to nawrócić bezpośrednio na wideo, na player video i wtedy mam, no, robotę, którą wcześniej wykonywałem, na przykład trwała godzinę, dwie godziny, w ciągu, nie wiem, pięciu minut zrobioną, więc to jest gigantyczny skok wydajności dla mnie. I nie ma tu możliwości, że jakieś halucynacje mi coś zepsują, totalnie rozwalą, dlatego ja pracuję na takim kontencie, który sam stworzyłem. Ja czytając to, wiem, że przecież ja o tym nie mówiłem, albo ja o tym mówiłem, na tej zasadzie mogę to zweryfikować, więc jest to i bezpieczne, i niesamowicie wydajne. Co to halucynacje? Halucynacje to jest, można powiedzieć, wydaje się modelowi, że to, o czym mówi, realnie występowało w danych. Czym to się w ogóle różni od takiego typowego kłamania? Jeżeli kłamiemy, to ktoś powie, na przykład prezydentem Polski jest tam Jan Chowalski, ale w momencie… Krzysztof Stanowski. Krzysztof Stanowski na przykład, ale chodzi o to, że w momencie halucynacji jest bardziej pogłębiona wiedza, czyli możemy dopytywać na przykład, dobra, ale kiedy został wybrany? A model może odpowiedzieć. A gdzie o tym napisano? Model dalej odpowiada i coraz głębiej, głębiej, głębiej wchodzimy. Trudno jest, jeżeli nie mamy wiedzy na dany temat, rozróżnić kłamstwo od halucynacji. Tutaj bym też zaznaczył jedną taką rzecz, bo jakieś dwa filmy temu ktoś nam zwrócił uwagę. Nie używajcie słowa halucynacja, bo nie macie zielonego pojęcia, co to znaczy w psychologii. Nie używamy słowieństwa psychologicznego, tylko używamy słowieństwa technologicznego. I akurat takie stwierdzenie, jak halucynacja… W dziedzinie LLM-ów. W dziedzinie LLM-ów jest po prostu profesjonalne na zewnątrz tego zjawiska. Nawet tu uzupełnię, bo ostatnio, w sensie, to wszystko się tak rozwijamy, poznajemy naturę dużych modeli językowych. Przepraszam. I teraz mówi się coraz częściej o tym, że tak naprawdę halucynacją jest wszystko to, co robi model. Czyli w zasadzie każdy rodzaj generowanej treści jest pewnego rodzaju halucynacją, ponieważ model nie ma jakiejś takiej refleksji nad tym, albo jej nie wykazuje nad tym, co jest prawdą, a co nie jest prawdą, tylko dąży do tego, żeby uzupełnić dotychczasowy tekst. To jest jego sposób na generowanie. I teraz jest to dość ciekawa perspektywa, bo tutaj do gry wchodzi tworzenie instrukcji dla modelu, czyli promptów, które sterują tym rodzajem halucynacji, czy też snem modelu w pożądanym kierunku. No i taka perspektywa jest niesamowicie wartościowa, bo wtedy w ogóle nie wychodzimy z założenia, że model domyślami mówi prawdę, a czasem halucynuje, czyli domyśla, że kłamie. Dokładnie. Tylko, że cały czas myślimy, mamy w głowie, że mamy do czynienia z rozwiązaniem, które tak naprawdę będzie podążało za pewnymi schematami, czy narzuconym kierunkiem, który jesteśmy w stanie naszymi poleceniami kształtować i nim sterować, ale nie kontrolować. Plus, nie mamy po drugiej stronie rozwiązania, które w pełni rozumie to, co właśnie my jako ludzie rozumiemy jako prawdę. I to pozwala, budując takie rozwiązanie jak wspomniane, nie wiem, podsumowanie tekstu, pomaganie w myśleniu, czy organizacji plików, procesów i tak dalej, pomaga budować właściwe oczekiwania wobec tego, co uzyskamy w zamian. Czyli tutaj wspominamy o tym, że okej, to nie stawiamy człowieka, czy nie stawiamy AI jako nadzorującego proces, jako realizującego cały proces, tylko wspierający pewne aktywności w ramach zadań, które wykonujemy na co dzień. No i rzeczywiście, w moim przypadku, poza tą bezpośrednią pracą, są także aktywności, które model wykonuje w tle, które finalnie, tak jak u Kuby, trafiają do mnie. Albo trafiają w określone miejsce, w którym jest to przestrzeń na popełnienie błędu. Czyli ktoś potem to zweryfikuje. Czyli na przykład jeżeli generuję jakąś treść typu tłumaczenie, bo to jest przykład, z którego korzystam bardzo często. W przypadku dużych plików, dużych publikacji przekazuję treść do modelu, który mi ją tłumaczy na język angielski, bądź dokonuję review, czyli po prostu sprawdza pod wieloma kątami to, co napisałem, czy ma sens, czy jest czytelne, czy nie jest zbyt zaawansowany biorąc pod uwagę grupę docelową, którą sobie założyłem i tak dalej. No i teraz taki tekst po przetłumaczeniu czy po przeglądzie nie jest publikowany. Tylko podlega kolejnemu etapowi weryfikacji, gdzie na pewnym etapie jest człowiek. No i rzeczywiście to jest super istotne do tego, żeby takie rozwiązania, które sobie, takie zastosowania żeby miały sens, żeby nie przypominały właśnie wdepnięcia na grabie, które nas uderzają w głowę, tylko żebyśmy rzeczywiście byli w stanie tę wartość wyciągnąć. No i faktycznie patrząc na rozwiązania, które wykorzystują LLM po to, żeby np. działać w automatyzacji czy w jakichś skryptach, one zdejmują z nas część obowiązków. Czasem większą, czasem mniejszą. Natomiast finalnie dążą do tego, że zwiększa się w tych obszarach sama precyzja, czas wykonania oraz jakość, którą uzyskujemy na końcu. No i teraz otaczając się takimi automatyzacjami, czasem mniejszymi, czasem większymi, zwiększamy swoje ogólne możliwości ze względu na to, że część obowiązków, którymi normalnie byśmy się zajmowali w tym momencie już nie są naszą odpowiedzialnością. W głowie mam trzy z możliwych przykładów dodawania nowych wpisów do listy zadań, w przypadku której u mnie to teraz działa tak, że po prostu nagrywam wiadomość głosową i LLM decyduje sobie, jak te zadania przypisać, jak je uporządkować, jak skategoryzować, czy ewentualnie dodać do nich jakiś opis i dodatkowy kontekst, który pomoże mi w nich, w ich rozwiązaniu. No i z punktu widzenia osoby niekorzystającej z AI może być to trudne do osiągnięcia, ale w praktyce jest to rodzaj instrukcji, przez który sam przechodzę w myślach w momencie, gdy przypisuję jakieś zadanie, tylko w tym przypadku model generuje obiekt JSON, w którym zawarte są informacje opisujące poszczególne wpisy. Więc programistycznie jest to proste. Każda aplikacja do zadań udostępnia API oferujące dodawanie czy zarządzanie wpisami. No i w tym przypadku po prostu zarządza tym model. No i teraz ważna informacja jest taka, że czy wykorzystałbym model do tego, żeby zarządzać na przykład zadaniami firmowymi? No raczej nie, ponieważ tam jest powiedzmy 90% skuteczność, no ale te 10% byłoby dość trudne. Ale czy na przykład wyposażyłbym indywidualnie każdą osobę w rozwiązanie, które w ten sposób dodaje, zarządza indywidualnymi zadaniami? Tak, ponieważ każda z tych osób byłaby w stanie wyłapać te ewentualne błędy, które siłą rzeczy się pojawią, bo znowu wracamy tutaj do tej koncepcji snu. Czasem coś się dzieje nie tak i rzeczywiście zadanie zostaje zrealizowane niepoprawnie. Natomiast w momencie, gdy jest tam gdzieś postawiony człowiek, nie ma z tym żadnego problemu. Wspomniałeś o takim kawałku, który jest poprawieniem tekstu. To może nie będzie LLM, chociaż wydaje mi się, że w tle LLM będzie, natomiast ja jestem wielkim fanem Grammarly. Grammarly możecie mieć jako aplikację, która jest na waszym komputerze, albo jako wtyczkę do przeglądarki, która służy do tego, żeby nie tylko poprawiać literówki, ale oni są na tyle zaawansowani, że potrafią poprawić szyk zdania. Albo w zależności od tego, kto wybierzecie, że jest waszym odbiorcą, są w stanie zmienić język z takiego bardziej prostego na ekspercki. Czasami są w stanie wybrać intencje przekazywania informacji, czy ty chcesz coś opisać, czy ty chcesz kogoś przekonać. Więc ja na co dzień korzystam z Grammarly i nie jestem przekonany, że jakiegoś użytkownika mają. Ja właśnie do tego wykorzystuję GPT-4, które jest otwarte cały czas, czyli nawet czasem wysyłając wiadomość do ciebie, zdarza mi się po prostu przepuścić ją przez LLM, który albo coś zmieni, albo coś poprawi, albo coś doprecyzuje. I tutaj nie chodzi o to, żeby zmienić treść, czy wygenerować treść, którą dostaniesz, tylko żeby wpłynąć na treść, którą ja napisałem. I to, ta zasada ma zastosowanie cały czas. Nie wiem, czy zdarzyło, przynajmniej nie kojarzę teraz w głowie sytuacji, żebym wygenerował jakąś treść przez model, która potem trafiła do innej osoby. Ale na bieżąco dzieje się tak, że moja treść, czyli coś, co on sam napisze, zostaje przetworzone przez model w jakiś sposób, zanim trafi do innej osoby. No i teraz granica pomiędzy jednym a drugim jest dość cienka, no bo w pewnym momencie można powiedzieć, że jeżeli ja zasugerowałem jakiś tytuł artykułu, a model zasugerował inny i finalnie go wybrałem, no to czy mówimy tutaj o generowaniu czy przetwarzaniu. No i ta granica, rozdzielanie pomiędzy jednym a drugim jest według mnie dość istotne, ponieważ w obszarze na przykład nauki, poznawania jakiegoś tematu, jeżeli AI wygeneruje nam jakąś treść, której nie do końca zrozumiemy, nie do końca przeczytamy, no to czy to jest ta sama wartość, niż w sytuacji, gdy AI zasugeruje nam, czy wyjaśni nam jakieś pojęcie, które dzięki temu lepiej zrozumiemy. Więc zmierzam tutaj do tego, że nie chodzi wyłącznie o zastosowanie, ale także sposób i podejście do tego, czego oczekujemy od AI i jak je stosujemy w codziennym życiu, czy nas wspiera, czy raczej odmurza i sprawia, że część rzeczy realizowana jest bez naszego udziału i tym samym nie do końca nas to dozwija, oczywiście w zależności od zadania, ale wydaje mi się, że to jest istotny wątek. Ja tu zwrócę jeszcze takie dwie rzeczy, jeśli chodzi o korektę tekstów. Używam tego właśnie do swojego newslettera, ale powiem dlaczego. Nie tylko dlatego, że tam jest na przykład coś niechlujnie napisane, ale chodzi o to, w jakich warunkach ja spisuję swoje pomysły. Czasami je dyktuję na przykład, nie ma tam żadnych wycinków, kropek, niczego, po prostu jest dyktowane w jakichś dziwnych warunkach, które zapisałem. Czasami jest tak, że jestem u lekarza na przykład w kolejce i piszę sobie tam jakieś notatki i potem chcę, aby to poszło w newsletterze do ludzi. No więc mam automat, który mi ściąga to wszystko, leci po kolei i dodaje brakujące wycinki, długolitery i inne takie rzeczy. Ma tam jedną ważną instrukcję. Nie zmienia jej żadnych słów. Ma to być dokładnie tak, jak powiedziałem. Ale na przykład no, zmienia na przykład szyk. Ja często używam szyku prestawnego, takiego, wiecie, mistrz Yoda. To nie zawsze brzmi dobrze, albo inaczej, nigdy to nie brzmi dobrze. I on to wyłapuje i zamienia. To jest jedyna taka rzecz, z którą pozwalam, żeby to zrobiło. A pozostałe to jest po prostu gramatyka, ortografia, czasami literówki poprawia i to się sprawdza naprawdę fajnie. A jak z generowaniem grafik? Bo tutaj, jak myślę o zastosowaniu AI, to w zasadzie w mid-journey spędzałem dużo czasu, biorąc pod uwagę wszystkie dostępne narzędzia. Już pamiętam fakt, że w większości przypadków chodzi o literowanie i dążenie do pożądanego rezultatu. Natomiast, no, bez wątpienia mid-journey czy generowanie grafik odgrywa istotną rolę w zasadzie w całej mojej pracy, bo używam go zarówno do rzeczy, które publikuję, ale też takie, które tworzę dla siebie. Czyli na przykład nie wiem, jak teraz tworzę sobie automatyzację, to przykładowo zamiast kategorii używam awatarów, czyli po prostu person, które sobie wymyślam i które teraz mają swoje wizerunki. A wcześniej wybierałem je ze stoków, więc powiedzmy były bardzo generyczne i miałem nad tym dość mało kontroli, a w tym przypadku jestem w stanie ukształtować swoje takie bieżące środowisko, co po prostu ułatwia czy w zasadzie uprzyjemnia w tym przypadku pracę, ponieważ trochę zamieniają w grę, trochę zamieniają w zabawę, no i jednocześnie też jak już tworzę takie bardziej oficjalne treści, które gdzieś są później udostępniane, to one po prostu wyglądają lepiej, ponieważ no nie wrzucam już wtedy zdjęcia ze stoka na przykład w okładkę mojego wpisu, tylko generuję jakiś obrazek, który w mojej wyobraźni nawiązuje do tego, co w danej chwili napisałem. Więc a, no a z drugiej strony w internecie widzę przykłady, w sensie nie wiem, być może moje okładki też są tak odbierane, natomiast widzę przykłady zastosowania AI, tak można powiedzieć na pałę, czyli w zasadzie wpiszę coś, wygeneruję, tak, zero shot, nie, czyli wpiszę coś, wygeneruję, otrzymam pierwszy z brzegu wynik, dobra, jest super, nie, i finalnie zalewa nas treść, która jest albo właśnie wygenerowana, albo w sensie jest wygenerowana, ale tak bez jakiejkolwiek refleksji, uzupełnienia i kontekstu, no i znowu, tutaj mówimy o cienkich granicach, więc pytanie, jak to u Was jest, bo w moim przypadku dopasowałem mój taki styl komunikacji, stosując właśnie Meet Journey, no i w mojej opinii wygląda to dobrze, no ale nie wiem, jak... U mnie to działa, pod względem biznesowym najczęściej używam tego do reklam na Facebooku, to znaczy, jeżeli chcę jakiś produkt sprzedać, załóżmy jest to e-book, kurs, cokolwiek z takich rzeczy, potrzebuję do tego jakąś okładkę, potrzebuję coś, co ściągnie wzrok oglądającej osoby, ale jednocześnie, żeby to wyglądało profesjonalnie. Nie jestem na tyle dobry, jeżeli chodzi o użycie Meet Journey, żeby od razu dostać to, co chcę, ale trochę w programach graficznych jestem w stanie tam coś dorobić, trochę zmiksować kilka wyników razem i wtedy to wychodzi tak, że dla mnie jest okej. Na pewno nie doszedłbym do tego bez właśnie tej generatywnej AI, czyli właśnie Meet Journey i czasami jakimś daliem się wspieram rzadko, bo rzadko, ale to jest taka baza. U mnie w ogóle przeprowadziliśmy z Michałem, czyli z naszym grafikiem, który tworzy w zasadzie wszystkie materiały takie wizualne w naszych projektach. Przeszliśmy przez proces projektowania promptu do Meet Journey, czy w zasadzie promptu nadającego styl spójny z naszą marką, no i rzeczywiście to ma dużo sensu, bo te grafiki nawiązują do siebie. One nie są tak z czapy wrzucone, wygenerowane, tylko rzeczywiście tam dochodzi do pewnej powtarzalności, ale też z zachowaniem pewnej unikatowości, czyli powiedzmy nie są to grafiki jedna do drugiej bardzo podobne, ale z drugiej strony w tym samym stylu. No i rezultat jest taki, że ten odbiór czy kształtowanie całego wizerunku zdecydowanie też w mojej opinii tutaj zyskuje, natomiast jednocześnie czas, który poświęca Michał na opracowanie grafik, zupełnie raz, że się zmniejszył, a dwa, że jego uwaga jest teraz przekierowana w zupełnie inne miejsca niż wcześniej. Więc jest tutaj sporo korzyści, no a mówimy tutaj o generowaniu grafik. Jeśli mowa o generowaniu czegoś, to używam czasami do generowania opisów do artykułów, też właśnie LLM-a, ale bardzo mi zależy na tym, żeby po pierwsze ten opis, który został wygenerowany, został wygenerowany nie na podstawie deskrypcji, nie na podstawie tytułu, tylko na podstawie treści artykułu, to jest bardzo ważne, a następnie żeby był wygenerowany moim językiem, tzn. tak jak ja bym to opisał z pominięciem słów, których ja nie lubię, a czasami ze zrobieniem błędów gramatycznych, które ja robię. Mam po prostu swoje takie ulubione powiedzenia, mam pewne szyk zdań, który dla mnie jest fajny, miły, mi się to podoba. Tak, dokładnie, tak. I teraz chodzi o to po prostu, że chciałbym to zachować. I testowałem tutaj, to mogę się doświadczeniem takim podzielić, jak by można było to osiągnąć. Pierwsza myśl, jaka wpadła mi, to byłoby zrobienie fine-tuningu. Fine-tuning, czyli po prostu douczamy model, tylko ważne, że douczanie modelu nie w rozumieniu, że napychamy go nową wiedzą, tylko to jest według dokumentacji wzmocnienie halucynacji w konkretną stronę. Tak nawet podaje OpenAI. I polegało to na tym, że miałem wszystkie przygotowane przeze mnie z przeszłości opisy i powiedziałem, naucz się tego stylu. No i co się okazuje? No, na razie do fine-tuningu dostępna jest tylko wersja modelu GPT-3.5 Turbo. Na czwórkę jeszcze się nie dostałem, więc póki co nie za dobrze to wyglądało. To znaczy, powiem tak, model GPT-3.5 Turbo świetnie imituje cudzy sposób mówienia, ale kiepsko rozumie. To znaczy, rzucam do środka artykuł, on nie do końca zrozumiał, o czym jest, ale mówi to, jakbym Rugalski powiedział. I do czego zabawnego to też wykorzystałem, jakby ktoś z Was chciał się pobawić, na przykład, nie nudziłby się, a chciałby się poużyć w fine-tuningu, symulowanie wypowiedzi polityków. Taki, jakby to powiedzieć, wrażliwy temat, ale przykład inny. Weź dowolną znaną osobę, wpisz kilka tekstów, które często ona powtarza, dosłownie dziesięć linii, jak wystarczy, i nagle zadajesz pytania, na przykład, powiedz mi, czym jest jakaś definicja encyklopedyczna i zaczyna to mówić znany aktor. Ale nic oboliczne jest to, że chcieliśmy zrobić grę na ten temat. Korzystam z chwili uwagi. Powstrzymaliśmy się. Cały czas jest dostępna gra psychiatry.aidevs.pl, więc jeżeli macie ochotę, żeby to było blisko, politycy psychiatry, więc jeżeli macie ochotę pograć, to zapraszamy Was. Poszliśmy w delikatnie inną stronę. Zrobiliśmy to samo, zmieniliśmy nazwę. Wracając do tego tematu opisywania artykułów, bo artykuły, ja muszę je poczytać, żebym wiedział, o czym to jest. Ale czasami brak mi słów, na przykład, jak ubrać w bardzo krótkim takim wpisie, o czym to tam w środku jest. I tak jak powiedziałem, jestem w stanie osiągnąć, na przykład, żeby GPT-3.5 Turbo napisało to moim stylem, ale nie zrozumie, co jest w środku. Można więc połączyć na przykład dwa modele, czyli GPT-4 czyta, przygotowuje opis, a na przykład GPT-3.5 Turbo przerabia to na formę taką, która jest moim językiem. I wtedy to tak wygląda. Ja powiem Ci, że mówimy o tym generowaniu, poprawianiu, ale też w przypadku zwykłego oprogramowania, ja po prostu na bieżąco korzystam zarówno do takich albo powtarzalnych zadań, które muszę w kodzie zapisać, na przykład, nie wiem, mam tablicę jakichś kluczy, które muszą występować w jakichś wariantach. No to po prostu zamiast napisać to GPT-4 mi je generuje. Natomiast ten największy taki zysk, jaki mam, dotyczy dyskutowania na temat napisanego przeze mnie kodu. W różnym kierunku. Czasem wykrycia błędu, czasem lepszego zapisu, w każdym razie modyfikacji. No i teraz to jest taki programming z AI, który wypada świetnie pod warunkiem, że nie oddaje zbyt dużej części tego w ręce modelu. Dlaczego? Bo po prostu moje możliwości jakieś związane z rozumieniem tego, co napisałem, są dość ograniczone. Mam ograniczony kontekst, okno kontekstu. I teraz w momencie, gdy AI mi towarzyszy, to te zyski są dość duże. Bo zauważam w ten sposób, że model zauważa pewne rzeczy, których ja nie zauważam i co ciekawe, działa to w dwie strony. W ogóle też jest świetny przykład takiej interakcji z komputerem, gdy rozmawiam na temat funkcjonalności, nad którą pracujemy i ja zauważam błędy w rozumowaniu modelu, albo dzieje się to w drugą stronę. I to przypomina po prostu pracę z drugą osobą. Ja bym powiedział z takim dość doświadczonym programistą czy programistką, z którą siedzielibyśmy po prostu ramię w ramię i dyskutowali na temat danego zadania. I to jest świetne zastosowanie, o ile przebijemy się przez taką barierę tego, że jednak właśnie te halucynowanie tego kodu czasem wygląda, w sensie czasem po prostu nie ma sensu. Odbijamy się od ściany i czasem albo rozpoczynamy nową rozmowę, albo wprost porzucamy dane zadanie i zajmujemy się nim sami. Takie sytuacje mają miejsce, ale w momencie, gdy na dziesięć razy coś takiego wystąpi tylko raz albo dwa razy, to jest dla mnie dalej korzyść. Więc znowu tutaj mówimy o bezpośredniej interakcji z modelem, ale chciałem nawiązać jeszcze do kolejnej rzeczy, czyli w zasadzie czegoś, o czym napisałem kilka wpisów większych, czyli zmianie w ogóle interfejsu czy rozbudowaniu interfejsu narzędzi i aplikacji, z których korzystamy. Czyli teraz między większością narzędzi, z których korzystam, łącznie ze Spotify, łącznie z wyszukiwarką, z YouTubem, w zasadzie z każdym narzędziem, które gdzieś tam pojawia się w moim workflow, pomiędzy mną a nim stoi model. I czasem jest on wykorzystywany po to, żeby móc powiedzieć coś do mojej listy zadań, czy kalendarza, czy porozmawiać z filmem na YouTube, co jest w ogóle świetną wartością, biorąc pod uwagę fakt, że większość filmów ma wygenerowaną lub przygotowaną przez twórcę transkrypcję. I to sprawia, że interakcja czy poznawanie jakiegoś tematu właśnie w momencie, gdy pośrodku, czy gdzieś tam obok stoi LLM jest po prostu znacznie bardziej skuteczne. No bo rzeczywiście, wyobraźcie sobie przykład z brzegu, publikacje naukowe, które przez ostatni rok namiętnie czytam, no nierzadko, w sensie w porównaniu do tych, które powstały kiedyś, obecnie charakteryzują się dość takim prostym językiem. No nie ma tam skomplikowanych wzorów itd., natomiast zdarzają się sytuacje, gdy jest opisany jakiś proces, którego nie rozumiem. No i teraz zadanie na temat jakiegoś zagadnienia, pytania, na które uzyskam spersonalizowaną odpowiedź, czyli nie definicję na Wikipedii, której jeszcze bardziej nie jestem w stanie zrozumieć, tylko doprecyzowany np. do mojego poziomu znajomości jakiegoś tematu, dopasowany poziom wypowiedzi, on mi po prostu pomaga zrozumieć ten wybrany temat. No i to jest, jakbym miał wskazać, taką największą korzyść, jaką daje mi LLM to jest personalizacja doświadczeń ze wszystkim, co mnie otacza, z aplikacjami, z wiedzą i w zasadzie z takimi codziennymi zadaniami, czyli dopasowanie do mnie. Ja tutaj jeszcze dopowiem do tego, co Adam powiedział, bo Adam powiedział, że między nim a narzędziem jest LLM. U mnie zmieniła się taka jedna rzecz, że wybierając narzędzie, sprawdzam, czy jestem w stanie się z nim zintegrować. To znaczy, jeżeli mam jakieś narzędzie, a ktoś mówi, znam lepsze, fajniejsze, ma API, czy nie ma. Jak nie ma, to nie jest lepsze, fajniejsze. I jedyna rzecz, która na przykład mnie przekonuje do nowych rozwiązań, to jest na przykład to, czy jestem w stanie się lepiej z tym zintegrować, czy ma lepsze API dostępne dla programisty. I raczej z takich SaaSowych rozwiązań, bo o takich mówię, nie dotykam już czegoś takiego, co nie jest dostępne z punktu widzenia programistycznego. Więc to bardzo ukierunkowało mój na przykład wybór narzędzi. To jest w ogóle świetna koncepcja, przedwe w tym sensie, bo mówimy tutaj o sytuacji, w której narzędzia, aplikacje, z których korzystamy, stają się narzędziami, którymi posługuje się AI, czy w tym przypadku duży model językowy. I to jest pewne takie uproszczenie, czy pewna perspektywa, którą możemy przyjąć, gdy myślimy o na przykład chat GPT, to wychodzimy poza kontekst przeglądarki całkowicie i przechodzimy w obszar, w którym AI jest w stanie samodzielnie podejmować jakieś działania. Czyli w tym przypadku nie chodzi o generowanie odpowiedzi, tylko podejmowanie akcji poprzez API. Stąd to API staje się super istotne, zarówno z punktu widzenia użytkownika, ale także twórcy. Czyli na przykład jak teraz tworzę sobie, bo w ogóle w AI Devs, w naszym szkoleniu istnieje koncepcja prywatnego API, ale nie prywatnego, na zasadzie zamkniętego API produktu, który tworzymy, tylko prywatnego API, czyli naszego API, z którego sami korzystamy. Czyli API, które jest podłączone do naszych narzędzi i do naszych źródeł wiedzy, budujemy swoją bazę wiedzy, no właśnie po to, żeby AI było w stanie w sposób samodzielny posługiwać się tymi informacjami, tymi narzędziami, po to, żeby pomagać nam w pracy. No i to jest koncepcja, która przechodzi w zasadzie powoli do mainstreamu, no bo mamy GPTsy, które tak naprawdę dobią dokładnie to. Mamy w ogóle asystentów, które w tym przypadku udostępniane jest również przez OpenAI, które również dąży do tego, żeby właśnie tworzyć asystentów, którzy korzystają z naszej źródeł wiedzy i z naszych narzędzi. Więc to jest pewna perspektywa niesamowicie potężna, szczególnie w rękach osoby, która potrafi programować, bo osoba nietechniczna no faktycznie ma do dyspozycji GPTsy, które jest w stanie sobie w pewnym sensie dostosować. Natomiast w momencie, gdy łączy się programowanie właśnie z tymi możliwościami, o których tutaj mówimy, no to zaczyna się zupełnie nowa gra. Dla mnie to w ogóle jest taki mega temat do rozkminy, to znaczy słuchajcie, czy kiedyś UI przestanie mieć takie znaczenie, bo skoro wszystko teraz jest API first, ja mam na przykład trochę takiego legacy code i zacząłbym trochę chyba narzekanie od tego, to znaczy kodu, który dla mnie proces, gdzie wrzucałem filmy albo shorty, które na początku miały się pojawić w podcastach, był procesem ręcznym. Więc ściągnij, przetwórz na audio, wrzuć, opisz i tak dalej. W tej chwili to jest proces automatyczny, ale no niestety do Apple'a nie da się porozmawiać bezpośrednio, Google Podcast zaraz umiera, tam też nie da się po API porozmawiać z tego, co wiem, więc jest Selenium, jest Python, który robi to jakby z palca, co nie jest super przyjemnym doświadczeniem. Zacząłbym trochę narzekanie, bo słuchajcie, wszystko tak fajnie wygląda jak jest API, jak można porozmawiać. Powiedzcie, czego brakuje Waszym zdaniem w tym wszystkim, albo co nie działa? W zasadzie API nie działa. Zaczynając od siebie, to ja na przykład jestem mega wkurzony, jak OpenAI leży. Tutaj w zasadzie mam na myśli właśnie tą zamkniętą architekturę aplikacji, które skupiają się na interfejsach graficznych, co jest poniekąd nieuzasadnione, bo domyślnie z interfejsu graficznego korzystają użytkownicy. Natomiast rzeczywiście API, jeżeli jest, to albo posiada różne ograniczenia, na przykład, chociażby ten wspomniany proces uploadu filmów na YouTube. Finalnie w mojej automatyzacji odwróciłem proces, czyli zamiast automatyzować proces wgrywania filmu na samym początku, to automatyzuję go na końcu, czyli ja samodzielnie wgrywam plik na YouTuba, natomiast informacja o tym, że on się tam pojawił, trafia do moich automatyzacji i wszystkie informacje na temat filmu są przekazywane, z nich są tworzone posty, wpisy i tak dalej. Więc rzeczywiście są tutaj potężne ograniczenia i jak na przykład mamy to urządzenie Rabbit, które dąży do tego, żeby zintegrować LLM z urządzeniem takim jak smartfon, do którego jesteśmy w stanie coś powiedzieć i rzeczywiście ta dola interfejsu w tym momencie przenosi się na audio, na pojedyncze jakieś tam elementy wizualne. Pomarańczowa skrzyneczka taka mała. To pomimo ogromnego entuzjazmu i trzymania kciuków za tego typu inicjatywy, po prostu w tym momencie ja już wiem, jak to wygląda w praktyce, wiem jak wchodzi się w interakcję ze stronami, wiem jak działa się z aplikacjami, nawet oraz tutaj jeszcze jest fakt, że jest różnorodność aplikacji, czyli każdy z nas pewnie korzysta z innej aplikacji do zadań, każdy z nich posiada inne API i inne ograniczenia. Więc złożoność tego, brak takiej spójności, jeżeli chodzi o projektowanie API jest tutaj największym wyzwaniem, jeżeli chodzi o tworzenie interakcji związanych czy angażujących LLM. Ja bym jeszcze podarzekał troszeczkę na excepcjony, to znaczy na sytuacje, kiedy coś się wywali i ja o tym nie wiem, bo przynajmniej dla mnie nie jest to takie zbyt proste do oprogramowania, w sensie w prompcie, no bo można powiedzieć modelowi, słuchaj jak nie wiesz, to powiedz nie wiem, ale czasami na wejściu pojawią się różne brudy, ja tak mam na przykład z czytnikami RSS-ów, że nie zawsze wszystkie pola są w tych miejscach, nie wszystko jest idealnie ustandaryzowane, czasami coś się wywali, no i wtedy trzeba to obsłużyć, także jeszcze trochę bym na to ponarzekał. Przydałby się w przyszłości jakiś taki mechanizm, inni powiedzą, że wyjątki to zło, okej, ale jakiś taki mechanizm, żeby wiedzieć, hej, nie jestem pewny odpowiedzi, którą ci daję, czyli coś, co by było w metadanych, poza samym odchudem. No i apropos w ogóle danych, to same formaty danych są wielkim wyzwaniem, ponieważ na pewnym etapie dążymy do tego, żeby LLM dowiadywał się, pracował na naszych źródłach wiedzy. No i wszystko spoko, jak na przykład w moim przypadku 90% treści mam stworzone w formacie markdown, czyli w formacie otwartym, w którym praktycznie wszystko mogę swobodnie sobie odczytać, natomiast wystarczy zastosowanie formatu PDF, prezentacji, albo nawet zdjęcia, czy nawet dociksa, tak, tak. Nagle pojawiają się wyzwania, nie? I wówczas przygotowanie nawet prostego systemu, który pracuje na naszych informacjach, na naszych dokumentach staje się ogromnym wyzwaniem. Plus dodatkowo zauważyłem jeszcze drugą rzecz, bo mamy systemy RAG, czyli systemy właśnie specjalizujące się, jest to fragment, który umożliwia połączenie LLM-a ze zewnętrznymi danymi i rozmowę z nimi. Mamy na ten temat film Retrieve, Augment, Generate, będzie odesłanie pod filmem. Tak, i to jest bardzo takie powszechne, czy popularne zastosowanie LLM-ów, z którym wiąże się szereg problemów związanych na przykład z tym, że jak wyobraźmy sobie prosty artykuł opisujący jakieś konkretne zagadnienia i przykładowo jedno z tych zagadnień opisane jest na przykład na początku i na końcu tego artykułu, tylko na początku znajduje się tam nagłówek mówiący o tym, co mówimy, a na końcu artykułu znajduje się, no i tak jak wspominałem na samym początku, to tutaj ta sytuacja się zmienia, czyli mamy nawiązanie. Chodzi o to, że jest niebezpośrednie nawiązanie uzupełniające tą początkowe założenia, definicję i tak dalej, ale nie zostało na przykład powiązane słowami kluczowymi czy jakimś znaczeniem. Z punktu widzenia pracy z takimi danymi to jest ogromne wyzwanie, ponieważ tracimy informacje, czyli LLM wyposażony w takie dane nie odnajdzie tego drugiego fragmentu i nam nie dopowie tego, co oryginalnie znajdowało się w treści. No i do czego to prowadzi? Z perspektywy, ja jestem również części twórcą internetowym, czy twórcą różnego rodzaju treści i widzę, jak już na tym etapie, na etapie tworzenia treści, zmienia się perspektywa, jak myślę o tym, jak piszę artykuły, newslettery, jak nagrywam filmy, to jak zmienia się nawet mój sposób wypowiedzi do tego, żeby treść, która później trafi, wyprodukowana przeze mnie, trafi do LLM-a, żeby on był w stanie się nią posługiwać. Więc mówimy tutaj o zmianie już na tym poziomie lub ewentualnie o rozwiązaniu, które pozwoli wyłapywać takie niuanse dostępnej w internecie. Szanowni Państwo, w ten sposób Adam wytłumaczył, czym jest LLM-seo. Tak, tak i chodzi o to, że chodzi o to, że są tutaj rzeczy, o których się nie mówi, których nie widać na pierwszy rzut oka, a które są obecne. Więc jak już właśnie narzekamy, no to rzeczywiście jest obszar problemów, które są nowe, bo się pojawiły LLM-y i te problemy się pojawiły i które nie są nadrysowane i możemy sobie z nimi radzić na różne sposoby, częściowo je adresować, no a najlepiej tak naprawdę tworzyć sobie rozwiązania, które wykorzystujemy właśnie w zamkniętym środowisku w tym momencie albo po prostu od podstaw tworzymy coś, co jest oddawane w ręce użytkowników, którzy na przykład budują sobie swoje bazy wiedzy według określonych przez nas zasad. Więc tak, są nowe problemy do rozwiązania i ja powiedziałbym, że są to ekscytujące problemy, biorąc pod uwagę na przykład wyzwania, które spotykałem dotychczas w aplikacjach, które tworzyłem, które zwykle były powtarzalne, tak tutaj mamy taką nową przestrzeń do eksploracji, nowe wyzwania, co z punktu widzenia programistycznego mnie bardzo cieszy. Jeszcze ponarzekam na dwie rzeczy. Szybkość działania i cena. Zaskoczenie, nie? Kto mógł powiedzieć o cenie? Tak naprawdę na prywatny użytek jest to naprawdę w moim przypadku nieduży wydatek. Ja to też porównuję z punktu widzenia takiego biznesu. To znaczy, albo będę musiał to zrobić sam i wtedy trzeba to przeliczyć na moją stawkę godzinową, albo muszę to wydelegować komuś, to będzie czyjaś stawka godzinowa i w takim porównaniu jest to po prostu śmieszna cena. Ekstremalnie śmieszna cena. Ale znowu, tworzę wiele projektów, które są niezarobkowe. I chciałbym, żeby... Nie są stworzone do tego, aby zarabiać na siebie. One są stworzone dla ludzi na przykład. Tak jakichś z internetu nazwijmy randomów. I ci ludzie w różny, dziwny sposób mogą tego kowystać. Niekoniecznie w sposób, który ja przewidziałem. No i czasami się może zdawać na przykład, muszę mieć to w pamięci, że może mi ktoś nabić na przykład rachunek na setki dolarów, albo może trochę więcej, w zależności ile to mam ustawiony limit. I obsługowanie nawet czegoś takiego jak nasze gry, czyli czy mamy grę rak, czy mamy grę psychiatryk, to też w początkowych fazach kosztowało nawet dziennie kilkadziesiąt dolarów utrzymanie tego. Więc przy obsłudze większego ruchu, to może być kosztowne. A jak ktoś wpadnie na pomysł, tak jak było w przypadku pierwszej naszej gry, że zrobi nam Dedosa na przykład, no to spróbuje przynajmniej. No to wtedy nam wygenerowało tam parę dziesiąt groszy dosłownie, ale mogło się to skończyć źle. Więc ta cena, no cały czas musi być taką gwiazdką. Ile osób z tego będzie korzystać? Jak wiele danych będziemy przetrwawać? Tu cały czas jeszcze to nie jest do takiego szerokiego uwycia, że swój portfel nie jest bezdenny. A jeśli chodzi o szybkość działania, to znowu to jest względne. Bo dam przykład. Używam tego algorytmu do poprawy moich tekstów. No i w pierwszej wersji ten algorytm był źle napisany i korekta wszystkich tekstów, tam załóżmy 40 małych tekstów, zajmowała pięć minut. Pomyślałem, no algorytm, który wykonuje się pięć minut, tragicznie wolno. A ile niby to zajęło? Dałbym to radę zrobić w pięć minut? Nie. Ale to też jednocześnie nauczyło mnie czegoś, bo warto tutaj podejść do tego inaczej. Ja począłem do tego jak klasyczny programista, to znaczy krokowo. Biorę sobie jeden element, wrzucam do prawiatki. Taka pętelka, no nieprosta pętelka. I tak sobie lecę załóż 40 razy. A dlaczego nie wziąć wszystkich tekstów do jednego wielkiego JSON-a, powiedzieć przetwórz mi to i nagle zyskuję 40-krotne przyspieszenie, zmniejszenie kosztów, wszystko ekstra działa. No właśnie, bo wszystko razem jednego limitu tokenów, nie? Właśnie, ale teraz chodzi o to, że żeby na to wpaść, trzeba wiedzieć jak to działa, żeby zbudować odpowiednie dane właśnie dla LLM-a. Trzeba wiedzieć w ogóle, że on sobie z tym poradzi. Że on nie zamieni mi ID-ków, nie pomyli na przykład… Nie poprzecieka. Tak, dokładnie tak. I ta szybkość działania, bym powiedział, nawet po tych wszystkich optymalizacjach, nadal nie jest taka, do jakiej przyzwyczaili się programiści. Programiści często swój kod mierzą w milisekundach. Coś trwało ileś tam milisekund, zapomnij o tym przy LLM-ie klasycznym, ale to i tak będzie szybko. Dlaczego? Nie wszystko potrzebujemy mieć tu i teraz. Nie wszystkie algorytmy, które się automatyzuje z użyciem LLM-ów, to są algorytmy, które po drugiej stronie mają człowieka. Bardzo często to jest na przykład coś, co może działać w tle, coś, co może w kronie raz na jakiś czas się odpalać. I wtedy szybkość działania jest rzeczą wtórną, bo można to totalnie pominąć. No a jednocześnie to jest istotny problem, który na różne sposoby jest adresowany i rzeczywiście powstają projekty typu podamy link w opisie, bo wyleciała mi nazwa, natomiast są platformy, które specjalizują się właśnie w tym, żeby oferować hosting LLM-ów, które będą działać wydajnie po prostu do naszych zastosowań. No i powiedzmy, nie wiem, jak model uruchomiony, lokalny uruchomiony, typu jakaś Lama uruchomiony na moim komputerze generuje powiedzmy 40 tokenów na sekundę, tak tam osiągamy 500 tokenów na sekundę. Więc różnica jest znaczna, to jest praktycznie instantowo, natychmiastowo generowany tekst, więc rzeczywiście ten problem istnieje i próbujemy go zaadresować. Kolejna rzecz to jest, próbujemy jako społeczność, tak? Kolejna rzecz to jest stosowanie różnych technik do tego, żeby sterować zachowaniem modelu w logice aplikacji. Czyli tutaj mamy projekt od nie wiem, czy on pochodzi bezpośrednio od Pinecon, ale chyba od osób zaangażowanych w rozwój tego narzędzia, czyli Semantic Router, który dąży do tego, żeby decydować, podejmować decyzje, które normalnie leżały na modelu, podejmować je w inny sposób, z wykorzystaniem embeddingów. Wcześniej, przed jeszcze wejściem do modelu, bo model jest tym wolnym elementem. Tak, tak, czyli po prostu wykorzystujemy jakieś inne techniki do tego, żeby zastąpić model. Tutaj w Twoim przypadku, Kuba, opisałeś inne podejście do rozwiązania tego danego problemu, żeby zwiększyć wydajność, a w tej sytuacji mówimy o wręcz zdjęciu odpowiedzialności całkowicie z modelu i zastosowanie innych technik do tego, żeby ten ciężar na modelu leżał tylko w tym najmniejszym stopniu. To jest kolejna technika optymalizacji, którą możemy zastosować w aplikacjach, no i to też wpływa się i na wydajność, i na koszty. Więc rzeczywiście jest to obszar eksploracji, jest obecnie dalej problemem, ale też, no, znowu biorąc pod uwagę ostatnie miesiące, czy tam 10 miesięcy wcześniej, jest to problem, który zanika i z którym pewnie tylko do pewnego momentu będziemy się mierzyć, a potem, powiedzmy, nie będzie on już tak istotny. Co nie zmienia faktu, że jak wspomniałem, jest dużo innych wyzwań, na które trzeba odpowiedzieć. Część z nich musi zostać zarejestrowana w pierwszej kolejności, no bo jeżeli zyskamy wydajność działania modelu w kontekście samej szybkości, to rzeczywiście będziemy mogli lepiej manipulować, np. wykonywać więcej zapytań do modelów, do tego, żeby np. upewnić się, że nasza odpowiedź jest poprawna. I to jest znowu kolejny element, czyli czasem będzie nam mało na tym, żeby to samo zapytanie wykonać kilkukrotnie, a następnie porównać rezultaty i wybrać to, które pada najczęściej. Jest to w ogóle jedna z technik stosowania, kształtowania, budowania promptów, którą też można zastosować. No i znowu, tutaj mówimy o pewnej wiedzy, którą trzeba posiadać. Nierzadko jest to wiedza trochę teoretyczna, trochę praktyczna, trochę wynikająca z przykładów, z doświadczenia, którą możemy w różny sposób kombinować, łączyć ze sobą i w ten sposób budować rozwiązania, które nam służą, które dla nas działają, oszczędzają czas, pieniądze i dowożą jakość. Jak mówiłeś o routerze, to mi się tak skojarzyło, w sumie ja nie jestem jeszcze tak daleko, żeby podłączać sobie LLM-y do swojej poczty, ale korzystam z Superhumana i bardzo polecam, dla mnie to jest super apka. Oni robią teraz takie podsumowanie jednym zdaniem na samej górze maila i wyobrażam sobie taki router, bo dla mnie jak ludzie piszą maile, to czegoś potrzebują, chcą się umówić, jest bardzo dużo różnych potrzeb, czasami to jest ściana tekstu i żeby spriorytetyzować to, zrobić taki triaż, z tym robię to, z tym robię to, to podsumowanie jest po prostu genialne, bo wiem, czy teraz jest to ważne, muszę się tym zająć, czy to może chwilę zaczekać, czy to mogę zdelegować i tak dalej, i tak dalej, więc wyobrażam sobie, że ten proces też u mnie się poprawi, natomiast na chwilę obecną to, co dostarcza Superhuman do routingu, znowu do tego procesu realizowania decyzji, jest petardą. Podrzekaliśmy trochę panowie na błędy, na czas odpowiedzi, na to, że czasem open AI leży i trzeba sobie radzić inaczej, na koszty i jest to idealne, ale tak czy inaczej przyspiesza nasze życie. Słuchajcie, mam nadzieję, że use case'y tak czy inaczej Wam się podobały, że część z nich weźmiecie do siebie, a może podzielicie się w komentarzach też tym, co Wy robicie, w jaki sposób korzystacie z AI. Ja myślę, że możemy też zaprosić na nasze media społecznościowe, bo tam też dzielimy się konkretnymi przykładami, nierzadko z instrukcją wykonania, więc takich przykładów jest podczas studia więcej. A jeżeli macie ochotę na pigułkę z wiedzą o tym, jak korzystać z AI, no to 18 marca 2024 roku startuje AI Devs 2 Reloaded, podczas którego będziemy serwować Wam te i jeszcze więcej informacji. Do zobaczenia. Do zobaczenia. To jeszcze na koniec żenujący żart prowadzącego, ponieważ Adam wspominał o pewnej aplikacji, to... jak ja mogę... to zjadł wszystkie kurki skórnika. Alice. Dzięki, cześć.