Wzrost znaczenia sztucznej inteligencji (AI) niezaprzeczalnie przekształcił nasz świat, stając się niezastąpionym narzędziem w różnych dziedzinach, w tym w tworzeniu oprogramowania. Chociaż AI oferuje liczne korzyści i stała się integralną częścią nowoczesnych praktyk programistycznych, kluczowe jest rozważenie potencjalnych konsekwencji jej nadużywania, szczególnie dla programistów.
Ten artykuł zagłębia się w moje filozoficzne refleksje na temat rozwoju i AI, badając głęboki wpływ, jaki rosnąca obecność AI może mieć na krajobraz programistyczny.
Urok AI
Czy powinniśmy postrzegać AI jako złowrogą siłę zagrażającą naszemu źródłu utrzymania? Nie sądzę.
Od pojawienia się ChatGPT 3.0 uważnie śledzę artykuły związane z AI od ponad trzech lat. To trwałe zainteresowanie wynika z szybkiej ewolucji tej dziedziny, z nowymi wydarzeniami i wiadomościami pojawiającymi się codziennie.
Możliwe, że AI zdominuje nagrody Nobla w przyszłości, a świat jest już urzeczony możliwościami ChatGPT.
AI postępuje wykładniczo, wydaje się być na krawędzi osiągnięcia sztucznej inteligencji ogólnej (AGI). Podczas gdy duże modele językowe (LLM) są obecnie liderem postępu AI, wzrost generatywnej AI następuje zgodnie z wzorcem obserwowanym we wcześniejszych przełomach w uczeniu maszynowym (ML) i uczeniu głębokim (DL), które wykazały ogromny potencjał w przetwarzaniu obrazów i wideo.
Przed tym powszechne przyjęcie Internetu zapoczątkowało erę informacji.
Przed tym rozpowszechnienie maszyn zapoczątkowało rewolucję przemysłową.
I na długo przed tym wprowadzenie narzędzi doprowadziło do rewolucji agrarnej.
Konieczne jest krytyczne zbadanie, czy te przemiany były płynne i powszechnie korzystne.
(Uwaga: Dalsze odniesienia do AI będą odnosić się konkretnie do generatywnej AI opartej na LLM).
Echa Rewolucji Przemysłowej
Jakie dziedzictwo pozostawiła nam rewolucja przemysłowa?
Przyspieszone wytwarzanie innowacyjnych towarów przemysłowych, poprawa warunków pracy i ogromne bogactwo.
To tylko niektóre z wielu korzyści, z których korzystamy dzisiaj dzięki rewolucji przemysłowej. Ale czy ludzie żyjący w tamtej epoce partycypowali w tych korzyściach?
Ciemna Strona Postępu
Czy warunki pracy poprawiły się natychmiast wraz z wprowadzeniem maszyn?
W wielu przypadkach zadania, które kiedyś wymagały znacznej siły fizycznej, zostały uproszczone do podstawowych operacji maszynowych, co doprowadziło do zastąpienia dorosłych pracowników dziećmi. Fabryki zaczęły działać przez całą dobę, aby zmaksymalizować wydajność, a wynikające z tego bogactwo było nieproporcjonalnie skoncentrowane w rękach właścicieli fabryk (burżuazji). Czy robotnicy biernie akceptowali tę sytuację? Nie. Dało to początek ruchowi luddystów.
Pomimo tych wyzwań, czy wierzymy, że wprowadzenie maszyn ostatecznie zmieniło życie ludzi na lepsze?
Argumentowałbym, że odpowiedź brzmi “tak”. Zmiany były w przeważającej mierze pozytywne.
Zaczekaj, przedstawiłeś negatywny obraz rewolucji przemysłowej, więc dlaczego nagle mówisz, że była pozytywna?
Chociaż nasze życie niezaprzeczalnie się poprawiło, wiele problemów związanych z rewolucją przemysłową wynikało z braku przewidywania i łagodzenia zakłóceń społecznych spowodowanych gwałtownym wprowadzeniem maszyn. Gdyby istniała sieć bezpieczeństwa socjalnego, mniej osób cierpiałoby, a negatywne konsekwencje zostałyby zminimalizowane.
Okay, ale co to wszystko ma wspólnego z AI?
AI: Druga Rewolucja Przemysłowa
Były prezydent USA, Donald Trump, ogłosił plany zainwestowania 700 bilionów wonów w firmy zajmujące się sztuczną inteligencją, takie jak SoftBank i OpenAI.
LLM wymagają znacznych ilości energii. Firmy, które generują tę energię, stale rosną, a Nvidia, która opracowuje chipy AI do obliczeń, osiągnęła najwyższą kapitalizację rynkową na świecie.
Gdzie zainwestują te firmy? Naturalnie, zainwestują tam, gdzie mogą zarobić pieniądze.
A gdzie obecnie inwestuje świat? W AI.
Rentowność AI
Ale skąd będzie pochodzić rentowność AI?
AI nie produkuje produktów. AI nie prowadzi fabryk.
Jednak AI może potencjalnie zmniejszyć koszty pracy dla firm, automatyzując zadania, które są obecnie wykonywane przez ludzi.
Z ekonomicznego punktu widzenia, jaki jest koszt jednego pracownika? Zakładając średni okres kariery wynoszący 30 lat (od 30 do 60 roku życia) i średnią roczną pensję w wysokości 45 milionów wonów, firma zapłaci jednemu pracownikowi 1,35 miliarda wonów w ciągu jego kariery.
Innymi słowy, firma “kupuje” jednego pracownika za 1,35 miliarda wonów. Firma z ponad 300 pracownikami wydałaby 400 miliardów wonów na pracę przez 30 lat.
Czy nadal wierzysz, że AI nie jest rentowna? Czy nadal nie widzisz, dlaczego świat inwestuje w AI?
Redukcje zatrudnienia napędzane przez AI wygenerują znaczne zyski dla firm. To jest alfa i omega inwestycji w AI.
Ograniczenia AI
AI nie gwarantuje 100% sukcesu ani 100% porażki.
Kiedyś zademonstrowałem model uczenia głębokiego do wykrywania sennej jazdy. Chociaż model ostatecznie zaklasyfikował pewne sytuacje jako “senną jazdę”, my, jako programiści, zdefiniowaliśmy to jako “wysokie prawdopodobieństwo sennej jazdy”.
Powtórzę: AI nie oferuje gwarancji absolutnego sukcesu lub porażki.
Halucynacje to podobna koncepcja. Ponieważ modele dokonują wnioskowania, mogą generować nieprawidłowe odpowiedzi. Jest to zarówno potencjalna droga rozwoju AI, jak i wada.
Jeśli model nieprawidłowo zidentyfikuje mnie jako sennego, kiedy taki nie jestem, kto jest za to odpowiedzialny?
Odpowiedzialność spoczywa na nas, zespole, który zdefiniował kryteria modelu.
AI nie bierze odpowiedzialności. My jesteśmy tymi, którzy podejmują decyzje na podstawie odpowiedzi udzielanych przez AI.
No i co z tego? Co mamy teraz zrobić? Czy to oznacza, że AI zabierze nam pracę?
Podejście do AI
Tak, zgadza się. AI zabierze nam pracę.
Świat zaciekle konkuruje, aby wykorzystać AI do zabierania nam pracy.
Uważam, że jest to nieuniknione i że “Druga Rewolucja Przemysłowa” jest na horyzoncie.
Co powinniśmy zrobić, aby zapewnić płynne przejście?
Musimy interesować się AI, używać jej i zachowywać zarówno pozytywną, jak i krytyczną perspektywę.
Wiele osób może stracić złudzenia co do życia po poważnym rozważeniu tych informacji. Wiem, że ja tak zrobiłem.
Dlaczego miałbym zawracać sobie głowę rozwijaniem się i studiowaniem programowania, skoro i tak zostanę zastąpiony przez AI?
AI może tworzyć kod za mnie, więc dlaczego miałbym to robić?
W tym momencie musimy wziąć pod uwagę humanizm.
Przekraczanie Humanizmu
Aby przejść od społeczeństwa teokratycznego, w którym religia rządziła narodem, do ery, w której “królowie” mogli wykorzystywać religię, coś musiało przekroczyć “boga”. Królowie wykorzystywali religię, ale burżuazja, która posiadała środki produkcji, nie miała porównywalnego narzędzia. Zaczęli promować ideę, że samo człowieczeństwo jest ważne, co dało początek “humanizmowi”. Humanizm z kolei doprowadził do powstania kapitalizmu, komunizmu, faszyzmu i innych ideologii.
Innymi słowy, humanizm jest wysiłkiem, aby uwolnić się od boga społeczeństwa teokratycznego.
Niektórzy, którzy próbowali uciec z tego religijnego społeczeństwa, zostali napiętnowani jako heretycy i czarownice i byli uważani za strasznych przestępców. Jak patrzymy na nich z naszej obecnej perspektywy? Czy nie widzimy, że mieli rację?
Idea, że “AI jest lepsza od ludzi, (lub, bardziej wąsko,) lepsza ode mnie” jest aktem przekraczania humanizmu.
Być może jest to naturalny sposób myślenia. Wierzę, że obecnie znajdujemy się w okresie przejściowym, w którym rozwój AI powoduje, że stopniowo uwalniamy się od humanizmu. Jest to naturalne, ale mam nadzieję, że możemy zminimalizować wynikającą z tego panikę.
Co Powinniśmy Robić?
Jak wspomniano powyżej, powinniśmy po prostu używać AI naturalnie, cieszyć się nią, zachowywać krytyczną perspektywę i, przede wszystkim, robić to, co chcemy robić.
W tym procesie mogą wystąpić negatywne aspekty. Poniższe sekcje w końcu wyjaśnią “dlaczego chcę przestać używać AI w rozwoju”.
AI w Rozwoju
AI niezaprzeczalnie zwiększa produktywność.
Języki, których używamy, to języki programowania. Tak jak używamy polskiego do pisania tego bloga, używamy języków programowania do tworzenia programów.
Generatywna AI oparta na LLM specjalizuje się w pisaniu. Dlatego naturalne będzie, że będzie skuteczna w pisaniu języków programowania. Czy powinniśmy więc używać AI w programowaniu? Absolutnie!
Jednak jeśli jesteś programistą, który się “uczy”, powinieneś rozważyć, jak jej używać.
Z następujących powodów zdecydowałem się nie używać AI, przynajmniej podczas procesu uczenia się.
AI Kradnie Moje Notatki O Błędach
Kiedy zazwyczaj używamy AI? Często używałem jej podczas debugowania.
Dlaczegoto nie działa? → Kod błędu, skopiuj kod → Wklej do ChatGPT
W czym problem? Czy programiści, którzy są zmęczeni błędami i debugowaniem, zawsze dokładnie zbadają, zrozumieją i użyją kodu dostarczonego przez ChatGPT? W wielu przypadkach po prostu skopiują i wkleją kod bez myślenia, a jeśli to nie zadziała, ponownie użyją AI.
Zapytanie użytkownika: To nie działa, pojawia się ten błąd.
ChatGPT: Ups, mój błąd, poprawię kod.
Czy nigdy więcej nie popełnię tego błędu? Jest wysoce prawdopodobne, że popełnię ten sam błąd ponownie i ponownie poproszę o pomoc AI. Możliwość zinternalizowania wiedzy i uczenia się na błędach jest znacznie zmniejszona.
Jeśli znam 99% procesu obliczeniowego, ale nie mogę osiągnąć końcowego 1%, czy zakodowałem dobrze? Po prostu deleguję swój mózg do AI, ponieważ jestem zmęczony. Powierzam AI najważniejszą część, tę, której nie znam i nie mogę zrobić.
Okradanie Przyjaznego Kodowi, Nieświadomego Środowiska
Na świecie jest wielu programistów. Jest wysoce prawdopodobne, że programista po drugiej stronie świata doświadczył tego samego błędu co ja. Ale czy ten programista doświadczył błędu w dokładnie takiej samej sytuacji? Czy kod, który napisał, jest taki sam jak kod, który ja napisałem? Będzie inny. Ten sam błąd może wystąpić w zupełnie różnych sytuacjach.
AI blokuje dostęp do informacji o otaczającym kontekście. Debuguje tylko kod, który wysyłam, i dostarcza informacji o tym kodzie, ale nie pokazuje procesu wymaganego do napisania kodu.
“Oczywiście, możesz użyć inżynierii podpowiedzi, aby poprosić o szczegółowe wyjaśnienie, prawda?”
Połóż rękę na sercu i pomyśl o tym, jak często byłeś zbyt zmęczony i po prostu kopiowałeś i wklejałeś kod.
Aby wyszukać i zbadać błąd, potrzebujesz wcześniejszej wiedzy. Czy jasno wiem wszystko o tej wcześniejszej wiedzy? Ten blog wyjaśnia różne sytuacje, a ten blog wyjaśnia różne sytuacje. Czy rozumiem wszystkie te sytuacje? Podczas wyszukiwania w Google musisz być w stanie przeczytać i zrozumieć “Ach ~ to różni się od mojej sytuacji”, aby znaleźć inne informacje.
Nawet ten prosty akt wyszukiwania może uczynić programistów bardziej przyjaznymi kodowi.
Czy ChatGPT nie jest taki sam? Jeśli będziesz go używać podczas kodowania, czy to nie jest to samo?
Znaczenie Nieświadomego Środowiska
Najlepszym przykładem nieświadomego środowiska jest środowisko domowe.
Oto dwoje dzieci. Dorastają w różnych rodzinach. Dziecko widzi przelatującego ptaka i pyta rodziców:
“Mamo (Tato), co to za ptak?”
Odpowiedzi rodziców są różne:
- Sroka.
- Byłem ciekawy, jaki to ptak, więc to sprawdziłem. To może być sroka lub wrona, ale wygląda jak sroka.
Pierwsza rodzina udziela bezpośredniej odpowiedzi i przedstawia praktyczne rozwiązanie.
Druga rodzina udziela pośredniej odpowiedzi i sugeruje kreatywne podejście do poszukiwania odpowiedzi.
Jak dorosną te dzieci, jeśli będą wychowywane w tych różnych środowiskach?
Dziecko z pierwszej rodziny będzie skuteczne w znajdowaniu poprawnej odpowiedzi, ale może nie być skuteczne w radzeniu sobie z problemami, w których odpowiedź nie jest łatwo dostępna. → ChatGPT
Dziecko z drugiej rodziny może potrzebować więcej czasu na znalezienie prostej odpowiedzi, ale będzie czuło się bardziej komfortowo, myśląc o problemach, w których odpowiedź nie jest łatwo dostępna. → Szukanie i Uczenie się (Googlowanie)
Nieświadome środowisko tworzy się w ten sposób i jest wykorzystywane we wszystkich aspektach życia codziennego.
Czym Twoim zdaniem jest rozwój? Uważam, że tym drugim, ale pozostawiam wybór każdemu indywidualnie.
Powyżej znajduje się obraz modelu góry lodowej Freuda. Nieświadomie wpływają na nas ludzie wokół nas i wszystko, z czym się stykamy. Nawet jeśli nie zwracamy uwagi na kogoś przechodzącego obok, mówiącego: “Jedzenie A jest ostatnio pyszne”, zaszczepia to płytką świadomość, że “Jedzenie A jest pyszne”. Kiedy później zobaczymy jedzenie A, możemy zjeść je smaczniej niż w rzeczywistości, albo możemy być bardziej rozczarowani, jeśli nie spełni naszych oczekiwań. Tworzy to znaczną różnicę w porównaniu do niesłyszenia słów przechodnia.
Nawet ta mała informacja, którą napotkałem podczas pilnego wyszukiwania informacji na temat rozwoju - informacja, której nie widziałem świadomie - ostatecznie stanie się atutem. Nieświadomość ma znacznie większy wpływ niż myślimy.
Podsumowując: Moja Filozofia Rozwoju
Mój wniosek jest taki, że “należy unikać LLM tak bardzo, jak to możliwe, podczas nauki, ale można ich używać do produktywnych działań”.
Musimy dostosować się do ery po AI, nauczyć się korzystać z AI, doświadczyć jej wpływu na własnej skórze i zachować pozytywną, ale krytyczną perspektywę na AI. Musimy uznać, że AI ostatecznie zabierze nam pracę i zawsze rozważać, jakie inne skutki może mieć poza zabieraniem nam pracy. Zastanówmy się, czy sposób, w jaki używamy AI, jest pomocny dla naszego życia i naszego myślenia, i unikajmy delegowania naszych mózgów do AI.
Po wielu zamieszaniach w końcu ustaliłem moją filozofię rozwoju:
Nasyć każdą linię kodu moimi myślami. Nie twórzmy tylko prostych liter lub zdań, ale raczej nasyćmy je moją filozofią i myśleniem.
To jest różnica między AI a mną.
Powodzenia wszystkim!
Dodatek: Leczenie Słabej Siły Woli, Blokowanie Stron LLM
Słaba siła woli to choroba. Nielogiczne jest używanie siły woli do leczenia słabej siły woli, która jest spowodowana brakiem siły woli. Słuszne jest wprowadzenie innych działań, aby rzucić palenie, picie lub inne podobne nawyki.
Podobnie pomyślałem, że dobrze wpłynie na moje zdrowie psychiczne zablokowanie stron LLM. Poniżej przedstawiam moją metodę blokowania na Macu:
- Wprowadź następujący kod w terminalu: