środa, maja 31, 2023

Moc promptów

Zrobiłem sobie ostatnio kurs z robienia promptów do ChatGPT (ogólnie do LLMów) i to jest ciekawe, proste u podstaw, ale widać, że dobrze dobrany prompt pozwala na dużo :-)

Dziś użyłem tych sztuczek z kursu do spromptowania ChatGPT ;-)

Wszystko zaczęło się od tego, że Google w GMAILu włączyło mi "Help me write", które jak rozumiem bierze model podobny do Barda z Google i używa go do pisania maili na podstawie tego co wprowadzi user i chyba też treści wcześniejszej korespondencji...

Ja mam sprawę do załatwienia z siecią hoteli. Próbowałem jakiś czas temu, gdy mój bank genialne robił coś ze swoimi systemami, że przez cały weekend nic praktycznie nie działo, kupić za punkty + kasa hotel w Wenecji*. Ale się tak porobiło, że mi zabrali 3 razy po 420 USD, ale dodali ponad 210k punktów ;-)
No i się próbowałem skontaktować z siecią w sprawie tego, że chcę moje pieniądze z powrotem ;-), co też nie było proste, w końcu mail do nich dostałem na FB od ich fanpage'a ;-)
No i zrobili mi zwrot, ale problem jest, że moje 3x420 USD w momencie księgowania transakcji na karci miało jeden kurs**, a jak mi zwrócili miało drugi, mniejszy i jestem w plecy jakieś 400 PLN.

Więc w mailu, który dostałem od tej sieci z info o refundach poprosiłem Barda*** o napisanie maila, w opisie mu się podzieliłem opisem różnic w kursach i podkreśliłem, że wina jest po stronie sieci bo zrobili w końcu autoryzację transakcji (potrójnej) nawet bez rezerwacji podpiętej.

No i Bardowi wyszło tak sobie...

To uznałem, że dam szansę ChatGPT :-)

I mój prompt to coś takiego (tu sam prompt, bez treści maili wcześniejszych i mojej idei treści):


I'm writing e-mail in answer to other e-mail, I will share with you with my original e-mail
delimited in triple backticks, next answer to it, delimited inside triple square brackets,
and next I will share with you with idea for content of my answer which will be delimited by
triple pipes. I want you to produce response e-mail based on my idea
```{first_email}```
[[[{response__to_email}]]]
|||{my_idea_for_email}|||


I powiem wprost, że odpowiedź tak poproszonego ChatGPT z modele GPT-4 jest niezła :-)

Programistycznie poprosiłem o to samo gpt-3.5-turbo używając Pythona i odpowiedź też jest niezła :-)

W pracy jest ciekawa sprawa z adresami cosiów i tak myślałem czy można by było spróbować do takich dziwniejszych użyć ChatGPT... może**** sprawdzę.

Ale taki próbuję użyć prompt:
Your task is to read address from text delimited by triple backticks, if this is proper
address produce JSON object with following fields:
"street", "city", "country", "postal code", "house number", "apartment number", "person",
"company", if it is impossible produce empty JSON object.
```{text}```

Takie dałem mu adresy i takie dostałem wyniki:

AdresJSONCo to
Przemysław Rumik
Calle Buccari, 10, 30132 Sant'Elena, VE, Italy
{
 "street": "Calle Buccari",
 "city": "Sant'Elena",
 "country": "Italy",
 "postal code": "30132",
 "house number": "10",
 "apartment number": "",
 "person": "Przemysław Rumik",
 "company": ""
}
Mój hotel w Wenecji
Przemysław Rumik
Mestwina 45
OSW Kaper
84-141 Jurata
Poland
{
 "street": "Mestwina 45",
 "city": "Jurata",
 "country": "Poland",
 "postal code": "84-141",
 "house number": "",
 "apartment number": "",
 "person": "Przemysław Rumik",
 "company": "OSW Kaper"
}
Ośrodek wczasowy w Juracie
100 GRAND LN APT 405
FOSTER CITY, CA 94404-2265
United States
{
 "street": "100 GRAND LN",
 "city": "FOSTER CITY",
 "country": "United States",
 "postal code": "94404-2265",
 "house number": "",
 "apartment number": "APT 405",
 "person": "",
 "company": ""
}
tu mieszkałem w Dolinie Krzemowej

No i tak sobie mu to wychodzi... 
Wenecję zrobił najlepiej, w Juracie nie zajarzył że Mestwina to nazwa ulicy, w przypadku Foster City nie wiem ;-) bo 100 Grand to nazwa budynku, ale też może nazwa ulicy? 
A i tak tu miał ułatwione bo większość adresów skopiowałem z Amazona z moich adresów ;-)
Chociaż fakt, mój domowy adres zrobił dobrze.

* - ja po prostu lubię Wenecje :-)
** - plus pewnie spready, bo karta jest w PLN, walutą wymiany jest Euro, więc była transakcja z USD do Euro, a później z Euro do PLN, więc pewnie 2 spready.
*** - dla prostoty przyjmijmy, że to jest Bard, a nie inny model od Google.
**** - to jest funkcja czasu (nie mam ;-)) i tego, że ja sam sobie płacę za dostęp do API OpenAI.



Podobne postybeta
Search it later ;-)
Workation ;-)
Zinwigiluj się sam ;-)
Automatyczne tłumaczenie - Automatic translation
Kopia zapasowa ważna ;-)

Brak komentarzy:

Prześlij komentarz