Jak pisać prompty, czyli „strach był prawdziwy”
W poście, który miał brzmieć jak ja, model napisał: „Strach był prawdziwy”.
Każde słowo po polsku, a ja w życiu bym tak nie powiedział. Powiedziałbym: bałem się naprawdę. Model pisał po polsku, a myślał po angielsku: the fear was real.
W październiku napisałem mu wprost: „Chcę, abyś robił x-check języka pisanego, bo czasem tłumaczysz z angielskiego albo twoje metafory są niezrozumiałe. Ma być jak ja mówię”. Mój automatyczny filtr przepuścił wtedy dziesięć postów. Potem przeczytał je model w osobnej rozmowie, w której ich nie pisał, z moimi tekstami obok, i znalazł ponad pięćdziesiąt miejsc do poprawy.
Ponad pięć na post, i to w tekstach pisanych według moich instrukcji.
Jestem językoznawcą i filologiem, więc nie mogłem tego tak zostawić. Dlatego o pisaniu promptów opowiem Ci od strony języka. Pomoże mi w tym Paul Grice, który w 1975 roku opisał zasady rozmowy między ludźmi.
(Po ludzku: prompt to polecenie, które piszesz do modelu AI, a prompt engineering to jasne mówienie, o co Ci chodzi.)
Cztery zasady Grice'a, czyli jak napisać skuteczny prompt
Grice, filozof języka, opisał w tekście „Logic and Conversation” coś, co robimy w rozmowie. Nazwał to zasadą współpracy i rozpisał na cztery maksymy: ilość, jakość, relację i sposób. O maksymie ilości pisałem już na LinkedInie, bo pasuje do pracy z modelem jak ulał.
Ilość: mów tyle, ile trzeba
Jak dla mnie to maksyma życiowa, której sam nie zawsze się trzymam. Przy modelu można tu przesadzić w obie strony.
Za mało to „napisz maila do klienta”. Do kogo, po co, jakim tonem? Model nie wie, więc wymyśla, a wymyśla pięknie i przewidywalnie.
Za dużo to częsty odruch, który widzę u studentów w Szkole Praktyków AI: wrzucić asystentowi wszystko z firmowego dysku. Model dostaje, powiedzmy, trzydzieści dokumentów, do zadania pasują dwa, i zaczyna mieszać wątki. A o bezpieczeństwie to już szkoda gadać. Fajnie rozwiązała to jedna dziewczyna na warsztatach: ma swój zestaw plików do każdego projektu. I nic więcej.
Jakość: tylko to, co masz sprawdzone
Ta maksyma każe mówić prawdę i nie twierdzić niczego, na co nie ma się podstaw. Model potrafi napisać zmyśloną liczbę z tą samą pewnością, co tabliczkę mnożenia.
Dlatego mam to w instrukcji: każda liczba ma mieć źródło, a jeśli danych brakuje, w tekście zostaje nawias [liczba do uzupełnienia].
Relacja: na temat
Grice pisze krótko: be relevant. Czyli po polsku: nie od Sasa do Lasa. Jeśli w jednej rozmowie z ChatGPT masz budżet, plan urlopu i ofertę dla klienta, model może to pomieszać, bo widzi jeden wątek.
Sposób: jasno i po kolei
Bez niejasności, bez dwuznaczności, krótko i po kolei. Słowo „lepiej” mówi modelowi bardzo mało. „Napisz to lepiej”. Lepiej dla kogo? Krócej, cieplej, bardziej konkretnie?
Swoje posty czytam na głos i poprawiam. Z promptem można zrobić tak samo: jeśli brzmi jak coś, czego nie powiedziałbyś koledze, to pewnie coś w nim nie gra.
Jak pisać prompty: przykład przed i po
Oba przykłady są wymyślone, ale zadania zwykłe.
Przed: Napisz maila do klienta o opóźnieniu.
Po: Napisz krótkiego maila do klientki, która czeka na ofertę od tygodnia. Znamy się od dwóch lat, jesteśmy na Ty. Opóźnienie jest z naszej winy i oferta przyjdzie w czwartek. Klientka jest zapracowana, więc najwyżej pięć zdań, bez korpojęzyka i bez wymówek. Podaję mojego maila jako przykład tonu: [tu wklejam prawdziwego maila].
Przed: Podsumuj to spotkanie.
Po: Podsumuj spotkanie z klientem dla szefa, który na nim nie był. Najwyżej pięć punktów: co ustaliliśmy, kto co robi i do kiedy, czego jeszcze nie wiemy. Jeśli czegoś nie ma w transkrypcji, napisz, że tego nie wiesz. [tu wklejam transkrypcję]
Widzisz tam Grice'a? Tyle, ile trzeba, sama prawda, na temat i po kolei. To wszystko powiedziałbyś nowej osobie w zespole.
Porównanie pożyczam od Anthropic, czyli tych od Claude'a. W swojej dokumentacji każą myśleć o modelu jak o genialnym, ale nowym pracowniku, który nie zna Twoich zasad. Dają też fajny test: pokaż prompt koledze, który nie zna zadania. Jeśli się pogubi, Claude też się pogubi. OpenAI w swoim przewodniku porównuje modele GPT do juniora, któremu trzeba dać konkretne instrukcje, a modele rozumujące (te, które przed odpowiedzią dłużej się zastanawiają) do seniora, któremu wystarczy cel.
Przykłady dla modelu
Pokazywanie przykładów OpenAI nazywa few-shot learning. Po ludzku: dajesz modelowi kilka przykładów, co wchodzi i co ma z tego wyjść, a on łapie, o co chodzi.
Sprawdzam to na własnym stylu. Model ma do dyspozycji 88 wpisów z mojego bloga podcastuje.pl i przed pisaniem czyta dwa, trzy na podobny temat. Wzorcem są lata 2020–2023, a wpisy z 2024 i 2025 roku biorę ostrożnie, bo widać w nich ślady SEO i pisania z modelem. Czyli sam siebie podejrzewam o bycie modelem. Nieładnie, moi drodzy.
Na końcu zawsze jest jednak człowiek i to ja zatwierdzam. Wielokrotnie przerabiam tekst, żeby brzmiał po mojemu.
Prompty z lenistwa
Mam jeszcze jedną sztuczkę. Nauczyłem się pisać prompty z pomocą czata czy Claude'a, tylko wtedy, jak byłem strasznie leniwy i jakiś taki strasznie zmęczony. Miałem zrobić prezentację w Gammie, to kazałem czatowi napisać mi prompta do tej prezentacji i powiem, że wyszło całkiem fajnie. Pokazuję to też na warsztatach: prosisz model, żeby napisał Ci prompta, a potem tego prompta używasz. Można to zrobić choćby tak: „Chcę napisać ofertę dla klienta po pierwszej rozmowie. Napisz mi prompta, którym to zrobię, i dopytaj o to, czego nie wiesz”.
Gdzie trzymać stałą instrukcję
Swojej instrukcji, tej z zasadą o liczbach, nie wklejam za każdym razem. Trzymam ją w plikach, które Claude czyta na starcie pracy. Bez plików wystarczy projekt w Claude albo w ChatGPT: instrukcja działa tam w każdym czacie projektu. Jak ułożyć to dla całego zespołu, piszę w tekście o ChatGPT w firmie.
Czy prompty trzeba pisać po angielsku?
Ja nie muszę. Piszę po polsku, nawet to polecenie o x-checku z początku tekstu.
Kalki z angielskiego
Kilka kalek, które model już mi wstawił:
- „zrobiło resztę”, czyli did the rest. Po polsku: sprawiło, że…
- „nie jestem zaskoczony”, czyli I'm not surprised. Po polsku: mnie to nie dziwi.
- „ChatGPT jeszcze nie istniał”, czyli did not exist yet. Po polsku: ChatGPT-a jeszcze nie było.
Iiile to razy widzimy: „To nie X, to Y”. Brzmi to tak sztywnie, że zęby bolą. Mam listę zakazanych zwrotów i konstrukcji, którą model dostaje na start, a potem to samo co w październiku: model w osobnej rozmowie czyta tekst i przy każdym zdaniu pyta, czy powiedziałbym to przy kawie.
A jak w firmie nie macie takiej listy, wystarczy nowa rozmowa, wklejony tekst i polecenie: „Przeczytaj to jak ktoś, kto nie wie, jak to powstało. Wskaż zdania, których człowiek by tak nie powiedział”.
Jak poprawiam prompty
Cholernie denerwuje mnie, gdy ludzie mówią: ale to AI głupie, bo nie rozumie. Po jednej komendzie! Język obcy też nikomu nie wszedł po jednej lekcji, a uczyłem na uniwersytecie, więc coś o tym wiem.
Czytam wynik, mówię, co jest źle, dopisuję to do instrukcji i proszę jeszcze raz.
Gdyby każdy w Twoim zespole pisał prompty po swojemu i dostawał co innego, zrobiłbym z Wami warsztat na tym, co robicie na co dzień. Porozmawiajmy 30 minut, bezpłatnie.