Chcesz mieć swojego cyfrowego sobowtóra, który pisze, myśli, a może i nawet żartuje tak, jak Ty? W tym artykule pokażę Ci jak krok po kroku „ustawiłem” ChatGPT tak, by naśladował określony styl.
Spis treści:
- Po co mi taki asystent? Co to zmienia?
- Nie trzeba do tego płatnej wersji (choć będzie z nią lepiej)
- Jak to działa? Funkcja Custom Instructions
- Co trzeba opisać, żeby ChatGPT naśladował wypowiedź?
- Jak przygotować taki prompt krok po kroku?
- 1. Zbieram treści, z których „wyciągnę” cechy
- 2. Analizuję je z GPT-4
- 3. Obrabiam efekty analiz
- 4. Tworzę gotowe polecenie
- 5. Testuję i poprawiam
- Jak radzi sobie czat z moim poleceniem?
- (Opcjonalnie) Przerabiam polecenie na zmapowane preferencje
- Nie lepiej to po prostu opisać?
- Jak można wykorzystać to poza czatem
- Podsumowanie w punktach
Po co mi taki asystent? Co to zmienia?
Naśladowanie sposobu wypowiadania się przez czat przydaje mi się wszędzie tam, gdzie chcę wygenerować treść. Możliwości są identyczne jak przy „zwykłym” ChatGPT, tylko otrzymuję dzięki temu lepszy, spersonalizowany efekt.
Taki „patent” przyda Ci się przy pracy z tekstami. Na przykład, przy tworzeniu opisów kategorii, czy innych tekstów SEO na stronę. Wygenerowane fragmenty będą od razu bliższe temu, jak tekst ma brzmieć docelowo, więc edytowanie ich będzie trwać krócej.
Mi ChatGPT „mówiący moim głosem”:
- pomaga mi pisać maile,
- podpowiada posty na social media,
- tworzy i porządkuje notatki,
- rozpisuje myśli do artykułów,
- przetwarza briefy,
- poprawia teksty,
- ulepsza logikę wypowiedzi,
- czy podpowiada różne uproszczenia i opisy w treściach.
Jeśli chcesz generować teksty pod pozycjonowanie, to pamiętaj, że ostatecznie to Ty odpowiadasz za ich jakość i prawdziwość informacji!
Nie trzeba do tego płatnej wersji (choć będzie z nią lepiej)
Sposób, który tutaj pokazuję opiera się na wykorzystaniu funkcji Custom Instructions, która jest dostępna również w darmowej wersji ChatGPT. Żeby go wypróbować nie musisz mieć więc wersji płatnej.
Od razu uprzedzam jednak, że efekt może okazać się o wiele lepszy przy wykorzystaniu płatnego GPT-4.
Jak to działa? Funkcja Custom Instructions
Funkcja Custom Instructions w ChatGPT to takie „wewnętrzne polecenie” dla naszego czatu, które jest wykorzystywane przy każdej wiadomości.
W praktyce można myśleć o nim jak o dodatkowej instrukcji co do oczekiwanej odpowiedzi udzielonej na początku polecenia.
Dla przykładu weźmy sobie taki prompt:
Zwróć odpowiedź w formie listy wypunktowanej, każdy punkt ma mieć główne hasło oraz dokładnie trzy zdania wyjaśnienia po pauzie. Streść podany tekst: [tekst].
Podkreślony tekst mógłby być właśnie takim Custom Instructions.
Wykorzystując go w tych ustawieniach przy każdej konwersacji z czatem otrzymywałbym odpowiedź w formie listy z hasłami i trzema zdaniami wyjaśnienia do każdego hasła. Bez konieczności dopisywania instrukcji na początku poleceń.
Custom Instructions dzieli się na dwie części. Pierwsza jest miejscem na dostarczenie do czatu podstawowych informacji o nas, a w drugiej możemy określić, jak czat ma odpowiadać.
Tutaj skupię się na tej drugiej. Krok po kroku przygotujemy sobie polecenie, które sprawi, że ChatGPT będzie naśladował wybrany styl.
Co trzeba opisać, żeby ChatGPT naśladował wypowiedź?
Do w miarę trafnego naśladowania wypowiedzi ChatGPT potrzebuje 4 podstawowych parametrów:
- Cech języka – czyli tego, jak „brzmi” tekst, z jakich słów się składa i jak można je określić (np. style funkcjonalne języka: język potoczny, profesjonalny, urzędowy itd., ale też elementy bardziej szczegółowe).
- Cech tonu wypowiedzi – czyli tego jakie podejście ma mówiący do odbiorcy (np. czy jest sarkastyczny, zabawny, czy stosuje pytania retoryczne itd.),
- Określenia stylu – styl łączy w sobie cechy języka i ton wypowiedzi, ale dotyczy też innych, bardziej precyzyjnych elementów, doboru słownictwa, tempa wypowiedzi, sposobu budowania zdań czy prowadzenia narracji.
- Określenia struktury – głównie sposobu formułowania akapitów, nagłówków, organizacji wypowiedzi i jej logiki
W podstawowej metodzie będę pracował na tych 4 elementach – to na nich zbuduję moje polecenie.
Jak przygotować taki prompt krok po kroku?
Cała zabawa będzie przebiegać w prostym procesie składającym się z 5 kroków:
- Zbiorę wzorcowe teksty (przykłady, które chat ma naśladować).
- Przeanalizuję je z pomocą za pomocą GPT-4.
- Dostosuje zebrane instrukcje.
- Stworzę gotowe polecenie według schematu.
- Przetestuję je, a w razie potrzeby wrócę ponownie do punktu 3.
Na sam koniec pokażę Ci też kolejny, dodatkowy krok, który pozwoli łatwo dostrajać odpowiedzi w trakcie pracy z takim spersonalizowanym czatem.
No to do dzieła.
1. Zbieram treści, z których „wyciągnę” cechy
Żeby ustalić cechy tekstu, potrzebuję jakichś próbek do przeanalizowania. Takich, które dobrze oddają styl, który chce osiągnąć. Kilka wpisów blogowych, wzorowych opisów kategorii, czy parę postów z social media powinno wystarczyć.
Na potrzeby tego tekstu za przykład wezmę sobie kilka postów z naszych profili w mediach społecznościowych. Posty są dość krótkie, więc wybrałem 10 sztuk, głównie zapowiedzi artykułów i webinarów.
Warto wiedzieć
Uwaga dla copywriterów: taki „styl” trzeba będzie opracować dla każdego klienta / grupy docelowej z osobna.
2. Analizuję je z GPT-4
Kolejno każdy wybrany fragment/tekst analizuje pod kątem wymienionych 4 elementów, ale nie ręcznie oczywiście, tylko z GPT-4:
Przeanalizuj język, ton, styl i strukturę treści poniżej, wylistuj spostrzeżenia co do tych 4 elementów w punktach.
Treść: [twój fragment]
Efekt powinien wyglądać mniej więcej tak:
Odpowiedź kopiuję sobie do pliku i całość powtarzam z kolejnymi fragmentami.
Spostrzeżenia czatu będą się ciągle powtarzać, więc od drugiego analizowanego fragmentu zapisuję już tylko te, które są nowe lub dodają coś do opisów wskazanych już wcześniej cech.
Tutaj wedle uznania, możesz także zapisywać sobie wszystko „jak leci” i obrobić całość na koniec. Ja po prostu wolę czytać i zbierać cechy na bieżąco.
Warto wiedzieć
Jeśli masz ChatGPT Plus, a Twoje teksty są np. na blogu, to w promptach do analizy możesz po prostu wklejać prowadzące do nich linki.
3. Obrabiam efekty analiz
Po przeanalizowaniu w taki sposób wszystkich wybranych fragmentów i spisaniu cech w 4 punktach (język, ton, styl, struktura) czas na ponowne przemyślenie całości, tym razem już samodzielnie.
Chodzi o to, żeby pozbyć się powtórzeń i elementów nieistotne oraz, ewentualnie, uzupełnić cechy.
W moim przypadku, jak widać wyżej, w gotowej liście cech pojawiły się pojedyncze duplikaty i elementy specyficzne dla analizowanych fragmentów (np. wskazanie imienia, które padło w poście).
Niektóre fragmenty opisów są też po prostu niepotrzebne, bo wnoszą nie żadnej istotnej informacji.
W ten sam sposób podchodzę po kolei kolejno do tonu, stylu i struktury.
Jeśli obawiasz się, że nie poradzisz sobie z taką korektą, to uspokajam: nie trzeba robić tego w 100% ręcznie. Można wspomóc się czatem, np. każąc mu wstępnie usunąć duplikaty i wyłapać sprzeczności.
Wyczyść listę z powielonych cech, jeśli występują na niej cechy sprzeczne, to zadaj pytania, które pozwolą mi zdecydować:
Warto wiedzieć
Jeśli masz ChatGPT Plus, a Twoje teksty są np. na blogu, to w promptach do analizy możesz po prostu wklejać prowadzące do nich linki.
4. Tworzę gotowe polecenie
Gdy wszystkie 4 elementy będą już poprawione i uspójnione, to pozostaje mi tylko podstawić je pod szablon promptu.
Dopasuj treść do tego formatu:
Język wypowiedzi:
Ton wypowiedzi:
Styl wypowiedzi:
Struktura tekstu:
No i ostatnia rzecz: Polecenie w Custom Instructions nie może być dłuższe niż 1500 znaków, więc następnie sprawdzam jak długi jest mój prompt. Jeśli przekracza 1500 znaków, to go skracam.
W moim przypadku, który opracowuje pisząc ten tekst nie było to akurat potrzebne, ale tutaj ponownie, może pomóc czat:
Skróć całość do 1500 znaków ze spacjami, zachowaj wszystkie informacje.
Trzeba tylko zwrócić uwagę, czy zachowany został sens oryginalnego polecenia.
5. Testuję i poprawiam
Mam gotowe polecenie, więc wklejam je w Custom Instructions i zapisuję.
Teraz zostaje już tylko testować i dostosowywać :)
Jak radzi sobie czat z moim poleceniem?
Poniżej wklejam dosłownie pierwszą próbę wykorzystania czatu z opracowanym właśnie poleceniem:
Trochę za długo i czat za bardzo stara się budować historię, ale ogólnie jest całkiem nieźle! Można by to nawet wziąć tak jak jest, wyrzucić zbędne fragmenty, odrobinę poprawić i w 2-3 minuty mam gotowego posta.
Zresztą, nie jest to tylko moje zdanie:
Pozostaje więc tylko to doszlifować (nawet samym poleceniem wygenerowania posta) i cóż… mamy to :)
TIP: jeśli nie chcesz korzystać z Custom instructions przy wszystkich czatach (i musieć je włączać i wyłączać), a masz ChatGPT Plus, to z wykorzystaniem takiego polecenia możesz stworzyć sobie własnego GPTsa – co opisał niedawno na naszym blogu Brajan.
(Opcjonalnie) Przerabiam polecenie na zmapowane preferencje
Z doświadczenia wiem, że o ile efekt „całkiem niezły” zrobić jest dość łatwo, o tyle zrobić ten naprawdę dobry, to już sztuka. Szczególnie jeśli trzeba edytować Custom Instructions, które przy zmianie paru słów mogą zacząć nagle działać totalnie inaczej.
Stąd do dalszej, bardziej zaawansowanej edycji promptów wykorzystuję tzw. mapę preferencji. W praktyce to dokładnie ten sam prompt co wyżej, tylko rozbity na szczegółowe elementy, które można łatwo dostosowywać.
Stwórz mapę preferencji z treści, którą podam Ci w kolejnym poleceniu. Mapa ta to zbiór par klucz => wartość. Klucze to zmienne, a wartości to cechy tych zmiennych. Poniżej przykłady takich par:
Ton => sarkastyczny, zuchwały i pełen miłości
Dobór słów => formalny, złożony
Struktura zdań => mieszanka krótkich i długich, głównie krótkich
Potwierdź zrozumienie zadania i na tym zakończ odpowiedź. Po kolejnym poleceniu, w którym podam Ci treść, przeanalizuj ją i stwórz z niej mapę preferencji, korzystając z tej samej logiki i formatowania, co powyżej.
Pary klucz => wartość powinny być oddzielone za pomocą "=>". Oprócz tonu, wyboru słów i stylu wyjaśnień, chcę, żebyś uwzględnił 10 innych elementów stylistycznych, które najlepiej oddadzą styl pisania.
I tutaj znowu, na początek przetwarzam pełną listę cech w czacie (z powyższym promptem), a potem ręcznie edytuje/dostosowuje i testuję, poprawiam, testuję, poprawiam […]. I tak aż do skutku :)
Z takiego promptu łatwo mogę usunąć, to co przeszkadzało mi w pierwszym wygenerowanym poście, czyli narracyjność ze stylu i wszystko poza „z pytaniem wprowadzającym, przejrzysta i zwięzła” ze struktury.
Do tego dorzucam jeszcze do wcześniejszego promptu zdanie co do długości i akapitów. I efekt wygląda tak:
Z ciekawości pozwoliłem sobie zedytować tego posta, co zajęło mi mniej niż minutę:
No i proszę, post gotowy:
Jeśli chcesz lepiej poznać technikę personal preference map, to odsyłam do źródła, czyli do e-booka Maxwella Timothy’ego „Unlocking the potential of ChatGPT. Advanced Prompting Techniques To Get More Out of ChatGPT”.
Niestety podstrona e-booka na makeuseof.com przestała już działać, ale sam plik jest dalej dostępny na oryginalnym hostingu (wystarczy wygooglować tytuł).
Nie lepiej to po prostu opisać?
No właśnie, nie łatwiej byłoby napisać sobie takiego posta ręcznie? Albo napisać prosty prompt w stylu „napisz posta tak i tak, to zrób, tego nie rób itd.”?
To zależy! Co do pierwszego pytania: tak, czasem jakieś proste rzeczy łatwiej i szybciej jest pisać ręcznie, ale taka automatyzacja przyda się gdy np. takich „prostych i szybkich” postów potrzebujemy napisać kilkadziesiąt w tygodniu.
No i co najważniejsze: metoda, którą tutaj przedstawiłem sprawdzi się też przy dłuższych formach: artykułach blogowych, opisach kategorii czy produktów. Przy nich możliwość wygenerowania takiej „całkiem niezłej” bazy i tylko jej edytowania może zaoszczędzić mnóstwo czasu już i przy pojedynczych tekstach.
Co do drugiego pytania, czyli tego, czy nie lepiej napisać prosty prompt, ujmę to tak: w niektórych przypadkach pewnie, o wiele łatwiej i szybciej będzie napisać prostą instrukcję.
Jeśli chce uzyskać wypowiedź w stylu Mistrza Yody to wystarczy mi 3 słowa: „pisz jak Yoda”. Jeśli chce jednak uzyskać wypowiedź w stylu Adama Przybyłowicza, to będzie już trudniej.
Z kilku powodów: po pierwsze nie jestem na tyle znany, by ChatGPT wiedział, kim jestem, a po drugie dlatego, że mój styl nie jest też na tyle specyficzny, by dało się go trafnie oddać w jednym czy dwóch zdaniach.
Stąd opracowałem sobie taki system: który pozwala oddać niuanse, a jednocześnie jest możliwy do dostrajania.
Jak można wykorzystać to poza czatem
Taki wewnętrzny prompt możesz śmiało wykorzystać również poza zwykłym czatem, czy GPTs. Zapewne efekt będzie całkiem podobny i w innych modelach językowych, a jako, że pracujemy tu promptem, to całą metodę możesz też przenieść i na aplikację.
Wystarczy przesyłać prompt do API, albo dodać w odpowiednie miejsce w jakimś rozwiązaniu no-code, np. we Flowise, które już kiedyś pokazałem, przy tym jak tworzyłem chatbota z własną wiedzą).
Łącząc te poradniki możesz nawet stworzyć sobie takiego asystenta, który nie dość, że pisze po Twojemu, to jeszcze ma Twoje dane „w głowie”.
Możliwości nie brakuje :)
Podsumowanie w punktach
- ChatGPT, który pisze „po Twojemu” to oszczędność czasu na edycji generowanych treści.
- Personalizacja bazuje na wykorzystaniu Custom Instructions, więc wystarczy darmowa wersja.
- Metoda polega na stworzeniu promptu opisującego: język, ton, styl i strukturę wypowiedzi w 5 etapach.
- W pierwszym zbieram przykłady docelowego stylu.
- W drugim analizuję je za pomocą GPT-4 i zbieram cechy do mojego polecenia.
- W trzecim obrabiam i uzupełniam gotową listę cech.
- W czwartym podstawiam cechy pod szablon gotowego promptu.
- A w piątym wklejam go w Custom Instructions, testuję i poprawiam.
- Jak pokazałem na przykładzie, metoda ta daje zwykle niezłe efekty już przy pierwszej próbie.
- Jeśli potrzebujesz precyzyjnie dostosować to, jak czat generuje teksty, to polecam Ci do tego metodę mapowania preferencji.
- Dzięki niej będziesz w stanie prosto edytować pojedyncze elementy swojego stylu bez ryzyka, że całość nagle zacznie generować coś zupełnie innego.
- Gotowy prompt określający styl możesz wykorzystać nie tylko w zwykłym czacie, ale też w GPTs, a nawet we własnych aplikacjach i automatyzacjach.