Ile tak naprawdę da się wycisnąć z lokalnych LLM, kiedy chcesz trzymać wszystko prywatnie: bez chmury, bez potężnych GPU i bez „magicznego” kontekstu, który wszystko pamięta? Zamiast teoretyzować, zrobiłem serię testów na zwykłym laptopie i potraktowałem kwantyzację, liczba parametrów i dostęp do RAG-u jako główne „gałki” do manipulacji wyjściem. Wyszło mi z tego nie tylko opowiadanie, ale też zestaw zaskakująco konkretnych obserwacji o tym, kiedy Q6/Q8 potrafi przeskoczyć większy model, dlaczego RAG lubi gubić szczegóły i czemu „dobry prompt” to czasem dopiero początek problemów.
Wybór sprzętu, narzędzi i źródeł do testowania LLM-ów
Czasem nie można lub nie chce się korzystać z chmury. Czasem lepiej odpalić model na lokalnym sprzęcie – z różnych przyczyn. Ile wtedy można „wyciągnąć” z takiego modelu? Oczywiście, odpowiedzi będą różne w zależności od zastosowania, a wyniki trudno ocenić inaczej niż subiektywnie, ale warto podejmować takie próby choćby po to, żeby lepiej zrozumieć jak działa ta „nowa-nienowa” technologia jaką jest AI.
Ten test od początku miał być możliwie „domowy”: przyjąłem realne ograniczenia (praca lokalnie, bez wysyłania danych na zewnątrz, bez chmurowych modeli) i sprawdziłem, czy da się na nich oprzeć cały proces twórczy, a nie tylko pojedyncze generacje tekstu. Za punkt odniesienia przyjąłem „przeciętny” sprzęt, czyli mój używany laptop (Ryzen 5 5500U i 32 GB RAM), żeby wynik był powtarzalny dla kogoś, kto nie ma stacji z drogą kartą graficzną. Modele dobierałem z publicznie dostępnych na HuggingFace (z uwagą na licencje oraz mnogość modeli), a całość ogarniałem w narzędziu, które pozwala pracować lokalnie i testować podejście z dokumentami/RAG. Ponieważ lokalne modele słabo radziły sobie z polskim, sensowniejsze odpowiedzi zbierałem po angielsku, a na końcu tłumaczyłem całość ręcznie.
Ponadto chciałem, aby jak największa część procesu była „po stronie” modeli, dlatego starałem się oddelegować jak największą część procesów do modeli – bez żadnego własnego pisarskiego przygotowania a jedynie wspierając się zdrowym rozsądkiem i metodycznym podejściem.
Założeniem “domowego” komputera był mój używany laptop warty ok. 1000 zł, więc naprawdę chciałem, żeby było to proces “dostępny dla każdego przeciętnego” użytkownika. Kluczowe parametry komputera to AMD Ryzen 5 5500U oraz 32GB RAM (te 32 GB są konieczne, aby móc załadować modele do 30B parametrów – może nie w najlepszej kwantyzacji, ale wystarczającej do skutecznej pracy). Czasem generacja odpowiedzi była bardzo powolna, ale to niestety jest cena którą trzeba zaakcepotwać przy takich ograniczeniach.
Ten test jest z definicji „nietechniczny”, bo nie mierzy tego, co da się łatwo policzyć i obiektywnie zweryfikować (np. poprawności faktów, rozwiązywania zadań matematycznych czy kodowania), tylko to, co w pisaniu prozy jest najważniejsze i jednocześnie najbardziej subiektywne: styl, naturalność języka, „gęstość” scen, spójność przyczynowo‑skutkową w dłuższym tekście, wiarygodność dialogów oraz to, czy postacie mają jakąkolwiek głębię i relacje, które faktycznie „grają” między sobą. Ponadto liczba „matematycznych” testów w internecie jest duża, a takich prozowych jest mało, uznałem więc, że to ciekawe i trochę inne podejście. W praktyce oznacza to, że zamiast benchmarków liczyła się dla mnie jakość materiału, który da się przerobić na opowiadanie (plan wydarzeń, zachowanie postaci, konsekwencje decyzji bohaterów), więc to bardziej test twórczy i warsztatowy niż twardy eksperyment inżynierski.
Cały poniżej przedstawiony artykuł jest „półtechniczny” – w takim sensie, że jeśli chcesz korzystać z AI tylko w podstawowym zakresie, to nie będzie dla Ciebie. Jeśli zawodowo lub naukowo zajmujesz się AI – to również nie jest artykuł dla Ciebie. Ale jeśli szukasz sposobów na poprawienie swojej pracy z AI na przykład przez dobór modeli, używanie RAG-ów czy prompt engineering – możesz tu znaleźć kilka ciekawych wskazówek.
Proces twórczy i oczekiwane problemy
Od początku zakładałem, że najwięcej czasu nie pójdzie na „pisanie”, tylko na tarcie między moimi oczekiwaniami a tym, jak faktycznie zachowują się lokalne modele w dłuższej pracy twórczej.
Do tej pory nie wydałem żadnego opowiadania ani książki, proces twórczy był więc dla mnie nowy; ponadto cały czas trzymałem się ograniczenia, że to modele powinny być autorem jak największej ilości danych. Stąd wiedziałem że będę musiał zrobić przynajmniej dwie pełne „pętle twórcze”, ponieważ na pierwszej będę uczył się problemów z którymi miałem się spotkać.
Aby jednak można było przejść dalej, trzeba już teraz opisać, czym jest liczba parametrów w modelu oraz czym jest ich kwantyzacja. W największym skrócie: „parametry” to miliony albo miliardy liczbowych wag, z których składa się wytrenowany model — im jest ich więcej (np. 7B vs 30B), tym większa jest jego pojemność na wzorce językowe, zależności i niuanse, ale też tym więcej pamięci potrzebuje, żeby w ogóle się uruchomić lokalnie i sensownie pracować na dłuższym tekście. W moim teście to nie było akademickie rozważanie, tylko twarde ograniczenie sprzętowe: na „domowym” laptopie w praktyce każda decyzja o rozmiarze modelu natychmiast odbija się na tym, czy model się zmieści w RAM. I tu wchodzi kwantyzacja: to technika „uśredniania” tych samych parametrów w mniej precyzyjnym zapisie (np. Q4/Q6/Q8), dzięki czemu model zajmuje mniej pamięci i zwykle działa szybciej, ale płaci się za to potencjalną utratą jakości — czasem subtelną (styl, słownictwo, rytm), a czasem brutalną (spójność, logika przyczynowo‑skutkowa, trzymanie się detali). Właśnie dlatego w artykule tak mocno przewija się motyw „większy model kontra lepszy kwant”: intuicja podpowiada, że więcej parametrów zawsze wygra, a w praktyce (szczególnie przy pisaniu prozy) często liczy się, czy model ma dość „precyzji” w wagach, żeby utrzymać ton, relacje między postaciami i konsekwencje wydarzeń bez rozjeżdżania się po kilku akapitach. I to jest kontekst, w którym czytaj dalsze fragmenty: nie jako poradnik „który model jest najlepszy”, tylko jako opis kompromisów, które pojawiają się natychmiast, gdy chcesz pisać lokalnie, na zwykłym sprzęcie, i jednocześnie oczekujesz czegoś więcej niż poprawnej, ale płaskiej historyjki.
Pierwsza pętla twórcza – czy koncept jest możliwy do realizacji?
Pierwszym problemem był wybór modeli. Przy pierwszej “pętli” bardzo pomógł w tym LLM Leaderboard – https://huggingface.co/spaces/open-llm-leaderboard/open_llm_leaderboard – co spowodowało dwa „sub-problemy”:
– LLM leaderboard był jedynym sensownym punktem odniesienia, jednak obecnie jest już zarchiwizowany. Miała powstać wersja druga jednak do tej pory nie powstała. O problemach leaderboardów oraz dlaczego nie są wiarygodne można przeczytać tutaj https://huggingface.co/spaces/open-llm-leaderboard/blog – i owszem są inne leaderboardy (na przykład https://llm-stats.com/) ale cierpią na te same problemy co Open LLM Leaderboard.
– Do tego doszedł dodatkowy “mini-problem”: żaden lokalny LLM (na moment pisania tego artykułu Bielik nie istniał, ale też jako pojedynczy model nie dałby wystarczających podstaw do całości badania) nie posługuje się ani trochę poprawną polszczyzną. Jednak ponieważ dobrze operuję językiem angielskim i w tym języku otrzymywałem najlepsze jakościowo odpowiedzi, postanowiłem po prostu na końcu procesu twórczego całość ręcznie przetłumaczyć.
W tym dokumencie wykorzystuję opisy, prompty i odpowiedzi zarówno po polsku i angielsku w zależności od potrzeby.
Drugim problemem był wybór lokalnego narzędzia. Do testów używałem GPT4All, który był po prostu odpowiedni do tego zastosowania. Przede wszystkim okazał się bardzo prosty w obsłudze i ma wbudowaną funkcję obsługi dokumentów – tzw. RAG. Tu możesz poczytać o wyborze desktopowego klienta LLM, aby lepiej zrozumieć dlaczego wybrałem GPT4All.

Trzecim problemem było to, że nie wiedziałem jakich składowych będę potrzebował – stąd w pierwszej pętli zapytałem kilka LLM-ów odnośnie tego jakich składowych potrzeba do dobrego opowiadania i dopiero na tym mogłem bazować.
Czwartym problemem okazało się odpowiednie odpytywanie LLM-ów tak, aby uzyskać oczekiwaną odpowiedź. Dość wspomnieć, że po wykonaniu na pewno ponad 100 zapytań zacząłem rozumieć w jaki sposób formułować zapytania – jest to oczywiście tzw. Prompt engineering. Nie ma sensu umieszczać w tym dokumencie wszystkich promptów, ale niektóre kluczowe tutaj przytoczę.
Piątym problemem okazało się, że język wybranych LLM-ów był dość ubogi, a wydarzenia – zbyt proste. Oczywiście, mogłem po prostu ręcznie poprawić opowiadanie, ale wiedziałem że lepszą jakość uzyskam, jeśli zacznę proces od nowa.
Wyniki po zakończeniu tej pętli były po prostu słabe. Ale uzbrojony w lepszą wiedzę odnośnie mechanik oraz mając pomysł w jaki sposób przy tych ograniczeniach pracować, podszedłem do tematu po raz drugi, od samego początku.
Pierwsza pętla – opis techniczny przebiegu testów
Pierwsza lista modeli
| Model | Kontekst | Rozmiar i Kwant | Licencja | Użycie |
| Llama3 | 8k | – | Llama3 | odrzucona ze względu na punkt 1b licencji oraz na krótki kontekst |
| Phi3 | 128k | 4B Q8 | MIT | Ogólne zapytania odnośnie procesu twórczego |
| Qwen2.5 | 128k | 14B Q6 | Apache-2.0 | Ogólne zapytania odnośnie procesu twórczego |
| Qwen2.5 | 128k | 7B Q4 | Apache-2.0 | Schemat świata i karty osób |
Modele w GPT4All do pierwszego etapu głównie wybierałem po prostu modele popularne
Konieczne elementy składowe
Zapytanie do Phi3 oraz Qwen2.5:
I want to create a story. List what elements should I prepare to make a good story with properly described relations between characters and precisely placed in the world?

Odpowiedzi połączyłem w następującą listę:
- Tematyka pracy – opis ogólnego osadzenia świata
- Opis świata przedstawionego
- Kart charakterystyk postaci
- Styl literacki oraz odbiorca
Chciałem, aby to modele AI opisały, co jest potrzebne, a następnie żeby opisały każdy z tych elementów. Była to część planu, która w mojej ocenie pozwalała na stworzenie spójnego kontekstu dla świata przedstawionego. Uznałem, że dopiero mając spójny, wspólny kontekst warto iść dalej i zacząć opisywać faktyczne wydarzenia.
Mając to wszystko na uwadze, można było przejść do planowania przebiegu wydarzeń.
Wybór tematyki i głównego wątku
Rozważałem nietypowe połączenia tematyczne z nawiązaniem do AI i miałem 3 główne pomysły:
- W małym średniowiecznym miasteczku występuje plaga kradzieży. Szeryf próbuje wykorzystać “System Sprawiedliwość” – tajemniczy obiekt analizujący schematy – do wykrycia sprawców. Pomóc ma mu w tym asystent, który jednak nie ufa Systemowi.
- W średniowieczu, gdzie zdolny kowal zdołał wytworzyć zbroje pełnopłytowe wspomagane AI, wybucha wojna. Asystent kowala pomaga mu kryć się i unikać polujących na niego łowców technologii, ale czy zostanie mu wierny do końca?
- W świecie, gdzie człowiek może wyśnić sobie osobne życie, pracę znajdują Moderatorzy Snów. Surfują po półprzytomnych falach mózgowych uśpionych ludzi nadzorując, czy nie dzieje się nic złego. Jednak nawigacja jest bardzo trudna, więc wspomagana bardzo rozbudowaną AI. Co jednak jeśli AI zechce karmić się falami mózgowymi do których ma dostęp lub celowo zakłócić nawigację Moderatora?
Sumarycznie wybrałem pierwszy temat, choć trzeci też bardzo mnie kusi do przyszłych eksperymentów, ponieważ przedstawia potencjał do abstrakcji, który można nieco podbić odrobiną kontrolowanych halucynacji modeli. Za wyborem pierwszego tematu przeważyło to, że można tam włączyć aż 3 style (średniowiecze, kowboje i AI) i to mi się po prostu spodobało.
Opis świata przedstawionego
Drugi z elementów, który był konieczny do dalszej pracy. Model Phi3 odpowiadał za wygenerowanie kontekstu świata przedstawionego, ja natomiast rozwinąłem te opisy. Poniżej umieszczam przetłumaczoną wersję.
Historia świata
W uroczej średniowiecznej miejscowości Eldridge, położonej między pagórkowatymi wzgórzami a gęstymi lasami, życie zawsze było proste. Ludzie są pracowici i zadowoleni ze swojego stylu życia, ale ostatnie tajemnicze kradzieże zaczynają rzucać cień na ten spokojny byt.
Pierwsza kradzież miała miejsce dwa lata temu, kiedy konia bogatego kupca skradziono z rynku miejskiego podczas południowego targu. Od tamtej pory podobne incydenty nawiedzały Eldridge: worki złota znikające w biały dzień, srebrne naczynia znikające bez śladu, a nawet bydło zabierane w nocy, podczas gdy ich właściciele spali spokojnie. Mieszkańcy miasteczka stają się niespokojni, zastanawiając się, czy jest to tylko przelotna faza, czy coś bardziej złowrogiego.
Kontekst kulturowy
Eldridge jest znane ze swojego silnego poczucia wspólnoty i tradycji. Ludzie tutaj cenią szczerość przede wszystkim; nie jest rzadkością, że obcy pomagają sobie w pracach domowych, a dzieci od najmłodszych lat uczą się, jak ważna jest sprawiedliwość. Miasto ma bogatą historię rzemiosła, szczególnie w stolarstwie i kowalstwie.
Elementy mistyczne i technologiczne
Chociaż magia nie jest tutaj tak powszechna, istnieją pewne starożytne artefakty, które posiadają mistyczną moc. Jeden z takich artefaktów, znany jako „Kamień Serca”, można znaleźć głęboko w lesie i mówi się, że udziela mądrości, gdy jego właściciel wypowie go na głos. Miasto ma również kilku biegłych kowali, którzy opracowali unikalne techniki tworzenia broni i zbroi.
Niedawne wydarzenia wpływające na historię
– Pierwsza kradzież: dwa lata temu, podczas południowego targu, skradziono konia bogatego kupca. Złożył skargę do króla, a ponieważ był szanowanym szlachcicem, król postanowił wysłać w okolice swojego specjalistę.
– Incydent z Kamieniem Serca: rok temu starsza kobieta odkryła Kamień Serca w lesie. Rozmawiała z nim głos, aby zdobyć mądrość, ale ostatecznie zgubiła się w lesie na trzy dni, zanim odnalazł ją jej syn. Wioska zna położenie Kamienia i korzysta z jego mądrości.
Geografia i klimat
Eldridge to małe miasteczko otoczone bujnymi zielonymi wzgórzami, które rozciągają się tak daleko, jak oko sięga. Klimat tutaj jest umiarkowany, z ciepłymi latami i chłodnymi zimami. Wiosną dzikie kwiaty pokrywają pola w żywych odcieniach żółci, fioletu i różu.
- Rynek miejski: Tętniące życiem centrum, gdzie rolnicy sprzedają swoje produkty, piekarze prezentują świeże pieczywo, a kowale pracują nad metalem.
- Las Galdor: Na wschodzie leży rozległy obszar starożytnych drzew, które szepcą tajemnice tym, którzy słuchają. Las jest domem dla wielu stworzeń, zarówno znanych, jak i dziwnych.
Miasta i osiedla
Samo Eldridge ma około 200 mieszkańców, ale w pobliżu znajdują się kilka mniejszych wiosek:
- Wioska na wzgórzu: Zbiór drewnianych domków na wzgórzu z panoramicznym widokiem.
- Miasteczko nad rzeką: Zbudowane wzdłuż brzegów krętej rzeki, gdzie mieszkają rybacy i łodziarze.
Kluczowi mieszkańcy
Są tu rolnicy, którzy harują pod słońcem, kowale, których ręce poruszają się jak tancerze na gorących węglach, i kupcy z wozami pełnymi towarów z dalekich krajów.
- Szeryf Jameson: Wysoki mężczyzna o mocnej linii szczęki i głęboko osadzonych oczach, które wydają się widzieć przez ciebie.
- Eleanor, córka piekarza: Drobna i bystra, ma zaraźliwy uśmiech i potrafi sprawić, że każde danie smakuje lepiej, niż powinno.
- Stary Thorne: Doświadczony weteran wielu zim, o zniszczonej twarzy i pełen opowieści.
Infrastruktura magiczna lub technologiczna
Miasto jest połączone drewnianymi mostami, które przekraczają rzekę. Kowale opracowali techniki tworzenia broni i zbroi, a piekarze używają starożytnych pieców do tworzenia chlebów tak świeżych, jak są pyszne. W Eldridge technologia nie jest zaawansowana, ale jest praktyczna.
Unikalne cechy
- Kamień Serca: Mistyczny artefakt, który rzekomo udziela mądrości, gdy się go pyta na głos.
- Rynek Eldridge: Można tu znaleźć wszystko, od świeżych jaj po ręcznie robioną biżuterię.
- Karczma Starego Thorne’a: Znana z solidnych posiłków i jeszcze bardziej solidnych opowieści.
Karty charakterystyk postaci
Miałem już kluczowe postacie, doprecyzowałem je “ręcznie”, a model Qwen podpowiedział mi kilka kolejnych. Zdecydowałem, że na początek wystarczy mi jeden paragraf dla każdej postaci. Sumarycznie uzyskałem to, co poniżej.
- Szeryf Jameson: Skupiony i zdeterminowany mężczyzna o wyrafinowanym poczuciu sprawiedliwości. Szeryf Jameson jest solidnie zbudowany i ma mocno zarysowaną linię szczęki. Jego głównym celem jest rozwiązanie zagadki rabunków w Eldridge, jednocześnie dbając o bezpieczeństwo swojej społeczności.
- Gideon: Logiczny i analityczny, Gideon używa dedukcji do rozwiązywania zagadek. Często stuka palcami, gdy myśli głęboko i ma tendencję do mamrotania do siebie, gdy pracuje nad problemami.
- Eleanor: Bystra i o dobrym sercu, Eleanor jest córką piekarza, która uwielbia swoje ciastka i lubi eksperymentować z nowymi przepisami. Ma zwyczaj nucić cicho podczas pracy i ceni sobie przede wszystkim relacje społeczne.
- Stary Thorne: Wytrzymały i mądry, Stary Thorne opowiada historie o historii Eldridge i wyrabia narzędzia w swojej kuźni. Drapie się w brodę, gdy zastanawia się nad czymś ważnym i woli nosić stary skórzany fartuch niż jakiekolwiek inne ubranie.
- Fuggus Thorne: Fuggus to szybki myśliciel z doskonałymi umiejętnościami obserwacyjnymi, ale ma problemy z mówieniem z powodu niemoty, która wynika z traumatycznego incydentu sprzed 20 lat z udziałem Gideona. Często używa gestów rąk lub obrazków, gdy musi się komunikować i chce udowodnić, że jest dorosłym w Eldridge.
- Gynerva: Charyzmatyczna i opowiadająca historie, Gynerva nosi dziwaczne błyszczące przedmioty, które sprzedaje, przemierzając targi ze swoimi głębokimi kasztanowymi włosami i zielonymi oczami, które błyszczą jak jesienne liście. Kiedy rozmawia, ekscytująco kręci włosami i wierzy, że świat jest pełen cudów czekających na tych, którzy wiedzą, gdzie szukać.
- Erica: Erica ma ciepły uśmiech, urocze maniery i silne umiejętności przywódcze, ale często wydaje się płytką lub egoistyczną z powodu swojej skłonności do chciwości. Jej rywalizacja z szeryfem Jamesonem napędza wiele jej działań, gdy szuka większego szacunku zarówno od mieszkańców wsi, jak i króla.
Styl literacki oraz odbiorca
Chciałem zacząć od czegoś prostego z czym LLM-y sobie poradzą, więc po prostu zdefiniowałem ręcznie styl literacki jako:
Styl opowiadania kierowany do oczytanej młodzieży, używaj bogatego młodzieżowego języka. Bazuj odpowiedź na stylach science fiction oraz fantasy z okazjonalnym wykorzystaniem archaicznego słownictwa. Pisz jako narrator trzecioosobowy.
Przebieg wydarzeń
Mając wszystkie powyższe elementy, mogłem je podać do modelu i zapytać o stworzenie opowiadania. Podstawowy prompt, który testowałem na Phi oraz Qwen, brzmiał:
You are a helper of professional writer. You are given in attachments elements of the world: topic description, world description, character cards and writing style. Your task is to generate list of events for a short story.

I tu zaczęły pojawiać się problemy.
- Po pierwsze: wprawne oko zauważy, że elementy z poprzednich podpunktów nie do końca ze sobą współgrają oraz czasem się wykluczają – na przykład motyw rzeki, albo szczegóły dotyczące odnalezienia i działania Kamienia Serca. Jednak na etapie tworzenia nie przeszkadzało mi to, ani tego nie zauważałem, więc kontynuowałem z tym co miałem.
- Przedstawiony prompt powodował łatwe wpadanie modeli w halucynacje – nie wiem dlaczego, do tej pory. Podejrzewam że był to temat umieszczania danych bezpośrednio w kontekście, ale….
- Gdy elementy świata zacząłem umieszczać w RAG-u, modele wykorzystywały je w bardzo ograniczony sposób, wręcz pomijając większość elementów.
Wynik był taki, że wyjściowe propozycje były niespójne i czasem nielogiczne. Postacie zachowywały się co prawda całkiem nieźle, ale konsekwencje przyczynowo-skutkowe nie były spójne dla wydarzeń. Przykładowo w jednej z odpowiedzi Kamień Serca miał być raz znaleziony w lesie, a następnie występował w ogrodzie.
Co prawda wygenerowane opowiadania brzmiały ciekawie i możnaby je poprawić ręcznie doprowadzając do powstania całkiem znośnej prozy, ale nie o taki efekt mi chodziło. Druga pętla była więc nieunikniona.
Podsumowanie cz. I
Pierwsza pętla pokazała, że samo zebranie elementów świata, postaci i głównego konfliktu nie wystarczy, aby model stworzył spójne opowiadanie. Choć pojawiały się ciekawe pomysły i całkiem dobrze prowadzone postacie, całość zaczęła rozjeżdżać się na poziomie logiki wydarzeń, konsekwencji przyczynowo-skutkowych oraz wykorzystania informacji z RAG-u. W praktyce oznaczało to halucynacje, sprzeczności i sceny, które brzmiały atrakcyjnie, ale nie trzymały się ustalonych założeń.
Dlatego konieczna okazała się druga pętla. W kolejnym wpisie pokażę, co trzeba było zmienić, aby odzyskać kontrolę nad spójnością historii i zmusić model do bardziej konsekwentnej pracy z materiałem źródłowym. Zapraszam do przeczytania części drugiej testów: https://sailingbyte.com/pl/blog/kwantyzacja-a-liczba-parametrow-llm-w-praktyce-testowanie-lokalnych-modeli-do-pisania-prozy-q8-czy-30b-cz-ii/



