Wokół pisania promptów narosło sporo folkloru. "Jesteś ekspertem światowej klasy", "weź głęboki oddech", obietnice napiwku - część z tych trików miała krótkotrwały efekt na starszych modelach, dziś w większości nie robi różnicy. Poniżej techniki, które działają, bo wynikają z tego, jak model przetwarza tekst.
1. Pokaż przykłady zamiast opisywać
Najskuteczniejsza pojedyncza technika. Model znacznie lepiej odtwarza wzorzec niż stosuje się do opisu wzorca.
Zamiast pisać "wyciągnij dane i zwróć w formacie JSON z polami nazwa, kwota i data, przy czym kwota ma być liczbą bez separatorów, a data w formacie ISO" - pokaż jeden przykład wejścia i oczekiwanego wyjścia. Dwa lub trzy przykłady obejmujące przypadki nietypowe działają jeszcze lepiej.
W literaturze technika ta nazywa się few-shot prompting. Praktyczna zasada: przykłady powinny obejmować także przypadki brzegowe, bo model potraktuje je jako granice zadania.
2. Poproś o rozumowanie krok po kroku - ale nie zawsze
Przy zadaniach wymagających wieloetapowego wnioskowania (matematyka, logika, analiza przyczyn) instrukcja "rozpisz rozumowanie, zanim podasz odpowiedź" wyraźnie poprawia trafność. Model generuje kolejne kroki i każdy z nich staje się kontekstem dla następnego.
Przy zadaniach prostych - klasyfikacja, wyciąganie danych - ta sama technika wydłuża odpowiedź, podnosi koszt i potrafi wprowadzić błąd tam, gdzie odpowiedź bezpośrednia byłaby poprawna. Nowsze modele rozumujące robią to zresztą wewnętrznie i dodatkowa instrukcja bywa zbędna.
3. Rozbij duże zadanie na etapy
Prompt, który każe jednocześnie przeanalizować dokument, wyciągnąć dane, ocenić ryzyko i napisać podsumowanie, zwykle wykona najsłabiej ten element, który jest wymieniony jako ostatni.
Rozdzielenie na osobne wywołania daje lepszą jakość i - co ważniejsze - pozwala zdiagnozować, który etap zawodzi. Łańcuch trzech prostych zapytań jest łatwiejszy w utrzymaniu niż jeden prompt na dwie strony.
4. Podaj kryteria oceny wprost
"Napisz dobre podsumowanie" nie niesie informacji. Model nie wie, czy dobre znaczy krótkie, czy wyczerpujące, dla eksperta czy dla laika.
Konkret działa: "Streść w maksymalnie pięciu punktach. Każdy punkt to jedno zdanie. Pomiń informacje o cenach. Napisz tak, żeby zrozumiała osoba spoza branży." Kryteria mają dodatkową zaletę - można na ich podstawie sprawdzić wynik.
5. Określ format wyjścia i pilnuj go strukturą
Jeśli odpowiedź ma trafić do systemu, poproś o konkretny format i podaj przykład. Jeszcze lepiej - skorzystaj z mechanizmu wymuszania struktury (odpowiedź zgodna ze schematem JSON), który oferuje większość dostawców. Model przestaje wtedy dopisywać uprzejmości typu "Oto Twój JSON:", które psują parsowanie.
6. Daj wyraźne pozwolenie na "nie wiem"
Model domyślnie stara się odpowiedzieć na każde pytanie - to efekt treningu na przydatność. Zdanie "jeśli w dostarczonych materiałach nie ma odpowiedzi, napisz: nie znalazłem tej informacji" zauważalnie zmniejsza liczbę zmyśleń.
Ta sama zasada dotyczy niepewności: "zaznacz, które elementy odpowiedzi są pewne, a które to twoje przypuszczenie" daje wynik znacznie użyteczniejszy w praktyce.
7. Umieść instrukcje blisko końca
Przy długich kontekstach modele lepiej wykorzystują informacje z początku i z końca zapytania niż te ze środka. Jeśli wysyłasz obszerny dokument, kluczowe polecenie powtórz po nim, a nie tylko przed.
Czego unikać
- Nagromadzenia ról - "jesteś ekspertem, prawnikiem i redaktorem naczelnym" rozmywa zadanie zamiast je precyzować.
- Negacji bez alternatywy - "nie pisz zbyt formalnie" działa gorzej niż "pisz tak, jak tłumaczysz coś koledze z pracy".
- Sprzecznych wymagań - "bądź wyczerpujący, ale zmieść się w dwóch zdaniach".
- Promptów, których nikt nie testuje - bez zestawu przykładów każda zmiana jest zgadywaniem.
Jak testować prompty
Zbierz zestaw testowy
20-30 realnych wejść wraz z oczekiwanym wynikiem. Uwzględnij przypadki trudne i nietypowe.
Ustal miarę sukcesu
Zgodność z wzorcem, poprawność formatu, brak zmyśleń - zależnie od zadania.
Zmieniaj jedną rzecz naraz
Inaczej nie dowiesz się, co poprawiło wynik.
Wersjonuj prompty
Trzymaj je w repozytorium jak kod, z opisem, co i dlaczego zmieniono.
Najczęstsze pytania
Jako osobne stanowisko - prawdopodobnie nie, bo modele coraz lepiej radzą sobie z niedoskonałymi instrukcjami. Jako umiejętność wbudowana w pracę programisty, analityka czy redaktora - zdecydowanie tak.
Zazwyczaj wymaga korekty. Modele różnią się wrażliwością na format instrukcji i domyślnym stylem odpowiedzi. Przy zmianie dostawcy warto przepuścić zestaw testowy przed przełączeniem.
