🎯 Definicja
Prompting Applications to kategoria technik i wzorców wykorzystujących zaawansowane podejście do tworzenia promptów dla dużych modeli językowych (LLM), takich jak GPT-4, Claude czy Mistral, w celu wykonywania praktycznych, złożonych lub interaktywnych zadań. Zamiast pojedynczych zapytań, aplikacje promptowe wykorzystują kompozycję poleceń, stany kontekstowe, instrukcję + dane, a czasami dodatkową logikę w kodzie do osiągnięcia pożądanego zachowania.
🔑 Kluczowe koncepty
- Prompt jako program (prompt-as-code) – prompty jako deklaratywne instrukcje zawierające instrukcje logiczne i przebiegi: pętle, rozgałęzienia, kontrola przepływu.
- Agenci i narzędzia – łączenie modeli językowych z narzędziami zewnętrznymi (kalkulator, przeglądarka, kod interpreter).
- Kompozycja promptów – budowa aplikacji złożonej z wielu kroków: łańcuchy promptów, planowanie, zarządzanie stanem odpowiedzi.
- Retrieval-Augmented Generation (RAG) – generacja odpowiedzi na podstawie dokumentów zewnętrznych pozyskanych za pomocą wyszukiwania semantycznego.
- System instrukcji funkcjonalnych – modele rozpoznają intencję funkcji (np. struktura JSON, YAML, Markdown itd.) dla łatwiejszego parsowania wyników.
📚 Przykładowe typy aplikacji opartych na promptach
1. Chatbot z osobowością
Twórz agenta, który odgrywa rolę np. przewodnika muzealnego, psychologa AI, konsultanta sprzedaży czy postaci literackiej. Prompty zawierają style, instrukcje i tonalność wypowiedzi.
2. Planowanie i rozwiązywanie zadań
Łańcuchy „chain-of-prompting” do rozwiązywania krok po kroku:
- plan zadań
- wyszukiwanie dokumentów
- zbieranie informacji
- integracja i wyciąganie wniosków
👉 W połączeniu z agentami i frameworkami jak LangChain, LlamaIndex.
3. Przetwarzanie półstrukturalnych danych
Konwersja danych tekstowych do struktur:
- tekst → JSON
- dokument → podsumowanie
- e-mail → analiza encji (NER)
- PDF → wyodrębnione fakty
4. Automatyczne pisanie kodu i asystenci techniczni
Prompty używane do generowania kodu (zero-shot lub few-shot):
- napisz funkcję Python
- wytłumacz fragment kodu
- znajdź błąd w kodzie
- napisz testy jednostkowe
5. Narzędzia wewnętrzne z GUI (prompt-powered interfaces)
Prompt jest zaszyty w narzędziu z interfejsem GUI, np.
- panel do generowania umów na podstawie danych użytkownika
- konfigurator promptów API ChatGPT z parametrami w formularzu
- narzędzia Auto-GPT lub BabyAGI
💡 Przykład zastosowania
Aplikacja HR korzysta z promptu do generowania spersonalizowanych treści e-mail z propozycją rekrutacyjną. Na podstawie danych (imię, doświadczenie, kluczowe umiejętności, stanowisko) tworzy się prompt typu:
Napisz przyjazny e-mail z ofertą pracy dla {{imię}}, z doświadczeniem w {{stack}}. Opisz korzyści z pracy jako {{rola}} w naszej firmie. Unikaj korporacyjnego tonu.
Po wygenerowaniu treści, użytkownik ma możliwość zastosowania „przełączników stylistycznych” (bardziej profesjonalny, bardziej kreatywny), które modyfikują prompt.
📌 Źródła
- https://openai.com/blog/function-calling-and-other-api-updates
- https://promptingguide.ai/
- https://a16z.com/2023/05/22/prompt-engineering-emergent-use-cases/
- https://github.com/f/awesome-chatgpt-prompts
- https://docs.langchain.com
👽 Brudnopis
- prompting != tylko „zadaj pytanie”, ale także „zaprogramuj zachowanie modelu”
- sklada się z: instrukcji, danych, formatu wyjścia, personalizacji
- aplikacje promptowe = wiele warstw: logika + format + kontekst + dane + funkcje
- agent = model językowy + mechanizm działania w świecie zewn.
- Composite prompting = planowanie + realizacja + refleksja