Recenzja książki „LLM w projektowaniu oprogramowania”

Obserwujemy ważną zmianę w oprogramowaniu, które nas otacza. Dotyczy to nie tylko techniki samego programowania, pisania programu, choć ten aspekt jest najbardziej nagłaśniany, zwłaszcza w kontekście „pracy dla programistów”. Wiadomo, programista istota leniwa, szuka ułatwień dla swojego codziennego znoju. Sztuczna inteligencja jako asystent pisania i testowania programu to nader pożyteczny wynalazek. Ale to tylko niewielka część zmian w informatyce, której źródłem jest AI. Prawdziwa rewolucja dotyczy sposobu przetwarzania informacji. Przyzwyczailiśmy się do tego, że program komputerowy działa jak zdeterminowana maszynka logiczna. Wprowadzasz jakieś dane, komputer przetworzy te dane według zaprogramowanych reguł i wypluje odpowiedź. Za każdym razem taką samą. Determinizm działania to immanentna cecha każdego programu. Naprawdę trudno sobie wyobrazić, że komputer będzie różnie odpowiadał na zadane pytanie lub różnie wykonywał postawione zadanie. Na razie zmienia się sposób projektowania/programowania aplikacji, które stają się mniej hermetyczne, bardziej elastyczne w interakcji i coraz częściej pełnią rolę pomocnika/asystenta niż bezpośredniego wykonawcy. Rewolucja informacyjna zapoczątkowana przez LLM-y, czyli duże modele językowe, powoduje, że sposób „myślenia” programu komputerowego zbliża się do sposobu myślenia człowieka; w jednym i drugim przypadku przetwarza się informację niestrukturalną, język potoczny, zawierający nieścisłości, braki i błędy zarówno na wejściu jak i generowane na wyjściu. Czy chcemy tego, czy nie, wokół nas rośnie prawdziwy ekosystem informatyczny (i informacyjny), z którym trzeba będzie jakoś żyć.
Można też powiedzieć, że zachodzi zmiana paradygmatu programowania. Dotychczasowy zestaw paradygmatów (programowanie imperatywne, obiektowe (OOP), funkcyjne, logiczne, deklaratywne, zdarzerzeniowe… i kilka innych) został rozszerzony o programowanie sterowane danymi, którego formuła wydaje się idealnie pasować do systemów eksperckich opartych o LLM i duże zbiory nieuporządkowanych lub częściowo uporządkowanych danych.
Książka „LLM w projektowaniu oprogramowania. Tworzenie inteligentnych aplikacji i agentów z wykorzystaniem dużych modeli językowych” Valentiny Alto traktuje o nowoczesnych zastosowaniach dużych modeli językowych (LLM) w nowych klasach „inteligentnych” urządzeń i aplikacji. Cudzysłów w słowie „inteligentny” oznacza, że oprogramowanie sterujące tymi urządzeniami posiada cechy właściwe sztucznej inteligencji, nie jest to w żaden sposób dezawuowanie ich wyjątkowości.
Zamiarem Autorki było napisanie przewodnika dla osób pragnących zdobyć wiedzę (albo jej przyczółki) na temat praktycznego wykorzystania sztucznej inteligencji w tworzenia nowoczesnego oprogramowania.
Pierwszy rozdział książki jest wprowadzeniem do LLM. To oczywiste, ponieważ większość książek o AI zaczyna od podstaw, tokenizacji, osadzania, propagacji wstecznej, prawdopodobieństwa, twierdzenia Bayesa, czyli jazdy obowiązkowej.
Rozdział drugi omawia udział dużych modeli językowych w tworzeniu oprogramowania. Dotychczasowe, klasyczne oprogramowanie było w pewnym sensie samowystarczalne, a programista (lub zespół) powinien posiąść pełnię wiedzy w dziedzinie, którą oprogramowują. Systemy, w których są osadzone LLM nie są tworzone od podstaw. Zakłada się a priori, że poważna część wiedzy potrzebnej do działania programu będzie wydobywana z osadzonego modelu językowego. Mówiąc prościej, programista programuje „portal” do skarbnicy wiedzy. LLM jest wsparciem merytorycznym dla systemu, zapleczem wiedzowym. Taką ideę wspierającej roli sztucznej inteligencji w systemie informatycznym autorka przedstawia na przykładzie znanego powszechnie systemu copilot oraz mniej znanego systemu LangChain, który jest otwartoźródłowym frameworkiem przeznaczonym dla systemów pisanych w Pythonie lub JS/TS (JavaScript/TypeScript).
Wybór frameworku jest sporym wyzwaniem dla programisty, zwłaszcza, że branża jest nowa i nie ma zdecydowanego lidera, który zapewniałby solidne wsparcie podczas całego czasu życia oprogramowania. Dużo większym problemem jest wybór modelu językowego. Liczące się LLM-y różnią się w zasadzie wszystkim, od architektury poczynając, po wielkość (liczbę miliardów parametrów) i dane, na których zostały wytrenowane. Wybór modelu będzie miał duże znaczenie dla przyszłego działania projektowanego systemu, jego jakość, wydajność i koszt. Trzeci rozdział porównuje znane modele językowe, zarówno te własnościowe (z zamkniętym, nieujawnionym kodem źródłowym) jak i otwartoźródłowe. Znany powszechnie model GPT-4 (premiera marzec 2023) udostępniony przez firmę OpenAI należy do tej pierwszej grupy, podobnie jak Gemini 1.5 wydany przez firmę Google. Na drugim, otwartoźródłowym biegunie znajduje się m.in. model Llama 2 wydany przez firmę Meta, właściciela Facebooka.
Rozdział 4 objaśnia znaczenie tzw. prompt engineeringu, czyli sztuki wydawania poleceń (lub zadawania pytań) sztucznej inteligencji. Niby oczywiste, a warto przeczytać. Bo na głupie pytanie głupia odpowiedź, jak mawiali starożytni.
Od rozdziału piątego zaczynają się programistyczne konkrety, czyli np. „Osadzanie dużych modeli językowych w aplikacjach”, „Tworzenie aplikacji konwersacyjnych”.
W rozdziale 9 Autorka porusza problem bolesny dla prawie wszystkich programistów: czy ich eldorado (finansowe) skończy się szybko, czy jeszcze trochę potrwa, czyli kiedy sztuczna inteligencja zastąpi programistów w „klepaniu kodu”?
Przedostatni, jedenasty rozdział porusza bardzo ważny problem. Otóż, przygotowując specjalistyczną aplikację, powiedzmy medyczno-diagnostyczną, na pewno zastanowimy się, czy na pewno LLM wyszkolony na źródłach ogólnych, poradzi sobie z odpowiedzialną odpowiedzią na specjalistyczne pytania, od której będzie zależało życie pacjenta albo zastosowana terapia? Czy nie warto jednak podszkolić model językowy w wąskiej specjalizacji, do której będzie używany i uczyć go permanentnie? Jak to zrobić? Bo w celowość tworzenia takich wyspecjalizowanych modeli chyba nie wątpimy. Takie działanie nazywamy dostrajaniem dużych modeli językowych. Oznacza to, że wiedza zdobyta przez model będzie traktowana jako stan podstawowy, baza do wytrenowania nowej, specjalistycznej sieci neuronowej.
Rozdział ostatni to bardzo potrzebne rozważania Autorki na temat odpowiedzialności sztucznej inteligencji, a raczej naszej odpowiedzialności ZA sztuczną inteligencję. Warto przeczytać i zastanowić się, to nie jest zwykłe moralizatorstwo.
Niniejszy tekst miał być recenzją, miał podbijać zalety książki i piętnować wady. Posłużył jednak za pretekst do skrótowego przedstawienia różnych aspektów dużych modeli językowych z punktu widzenia twórców aplikacji nowej ery. Ocenę pozostawiam Czytelnikom. Ja tę książkę przeczytałem, wiele rzeczy zrozumiałem i dlatego uważam, że jest pozycją użyteczną i wartą znalezienia się na mojej półce papierowych książek.
Valentina Alto „LLM w projektowaniu oprogramowania. Tworzenie inteligentnych aplikacji i agentów z wykorzystaniem dużych modeli językowych”. Wydawnictwo Helion 2025.
Notka o Autorce
Valentina Alto jest inżynierem oprogramowania w firmie Microsoft. Od 2022 zajmuje się wdrożeniami rozwiązań AU w branży farmaceutycznej a także frameworkami i platformami IoT (Internet of Things), Azure Machine Learning i Azure Cognitive Services. Tworzy też konkretne rozwiązania Power BI. Jest autorką książek i artykułów technicznych.
Autor

- Jestem informatykiem i analitykiem. Przez trzy lata analizowałem i prezentowałem dane epidemiczne na Twitterze jako @docent_ws. W gronie pasjonatów z Twitterowej Akademii Nauk (TAN) uzupełniamy wiedzę na temat Covid-19. Na BlueSky jako @wieslawseweryn.bsky.social. Piszę o informatyce i Kosmosie, recenzuję i polecam książki popularnonaukowe. Walczę z dezinformacją, którą uważam za największe zagrożenie ery social-mediów.
Ostatnie wpisy
EM poleca12 listopada 2025EM Poleca (#33) Patchen Barss „sir Roger Penrose. Geniusz i jego droga do rzeczywistości”
informatyka5 listopada 2025Sztuczna inteligencja w ochronie zdrowia – jak AI zmienia medycynę
EM poleca22 października 2025EM Poleca (#32) Jamie Metzl „Superkonwergencja. Jak rewolucje w genetyce, biotechnologii i AI mogą odmienić nasze życie”
pseudonauka6 października 2025To jest Ameryka, czyli pseudonauka w służbie państwowej




