Prompt Engineering
Prompt Engineering (Inżynieria poleceń) to stosunkowo nowa dziedzina polegająca na tworzeniu i optymalizacji prompta, czyli polecenia na podstawie którego systemy AI takie jak ChatGPT albo Google Bard wykonują zlecone im zadania. Krótko mówiąc, im lepszy prompt, tym lepszy efekt.
![](https://www.promptopedia.pl/~gitbook/image?url=https%3A%2F%2F868463013-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fo1vBD65QIAumovWFZybI%252Fuploads%252FkB1wWRxKHzb3OUV4KUK8%252FWODOODPORNOS%25CC%2581C%25CC%2581.png%3Falt%3Dmedia%26token%3Da99acfe2-3c09-47f3-91b8-b497104195bb&width=768&dpr=4&quality=100&sign=d7aeb07a&sv=1)
Co to jest prompt engineering? Jak to działa?
Prompt to polecenie, które podajemy modelowi językowemu, aby uzyskać określoną odpowiedź. Może to być pytanie, prośba o wygenerowanie tekstu na określony temat, albo nawet początkowy fragment historii, który model powinien dokończyć.
Prompt engineering - przykłady
Prosty prompt pozwala osiągnąć bardzo dużo, ale jakość wyników zależy od tego, w jaki sposób określimy nasze wymagania co do pożądanego rezultatu. Dobry prompt powinien zawierać:
pytanie - np. jaki klub wygrał Ligę Mistrzów w 2022 roku?
instrukcja - np. usuń z podanego tekstu wszystkie przecinki
dane wejściowe - np. opinie klientów do analizy
kontekst - np. stwórz plan diety, ale dla osoby z cukrzycą
przykład oczekiwanej odpowiedzi - np. nazwa produktu: cena, jabłko: 1,99
Oto prosty przykład, który pokazuje dlaczego te informacje są ważne.
Prompt
Output:
Jak widać na powyższym przykładzie, model językowy nie miał dokładnie określonego celu zadania, więc wygenerował ciąg znaków, które mają sens w kontekście "Chmury na niebie.
To bardzo prosty przykład, ale dobrze pokazuje jak ważne jest dostarczenie więcej kontekstów lub instrukcji dotyczących tego, co konkretnie chce się osiągnąć.
Spróbujmy być bardziej precyzyjni:
Prompt
Output
Wynik wygląda o wiele lepiej, ponieważ model generuje dokładnie to, co zostało wskazane w poleceniu jako istotne do zrealizowania zadania. Jednak łacińskie nazwy niewiele mi mówią.
Spróbuję ustrukturyzować te informacje w bardziej czytelny sposób.
Prompt
Output
![](https://www.promptopedia.pl/~gitbook/image?url=https%3A%2F%2F868463013-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Fo1vBD65QIAumovWFZybI%252Fuploads%252FJHiENksAV3f2PhnrAMwO%252FGPT-table-prompt.png%3Falt%3Dmedia%26token%3D0f42505b-f444-47fe-baca-7a6dc50a876e&width=768&dpr=4&quality=100&sign=5b910659&sv=1)
Celem tych wszystkich kroków było optymalizowanie instrukcji, aby uzyskać coraz lepsze rezultaty i to jest właśnie to, co nazywamy "prompt engineering".
Powyższe działanie jest bardzo prostym przykładem tego, co jest możliwe dzięki dużym modelom językowym (LLM). Są w stanie wykonywać wiele zaawansowanych zadań, od podsumowywania tekstu, przez rozumowanie matematyczne, aż po generowanie kodu.
Last updated