Prompt Engineering
Last updated
Last updated
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.
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ć.
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
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.