Powrót do bloga

Few-shot vs zero-shot prompting: kiedy używać każdej metody

Praktyczny przewodnik po wyborze właściwego podejścia do promptowania, z gotowymi do skopiowania przykładami i prostą ramą decyzyjną.

Few-shot vs zero-shot prompting: kiedy używać każdej metody
Wklejasz prompt do ChatGPT. Wynik jest... w porządku. Ale widziałeś, jak inni uzyskują znacznie lepsze rezultaty, dodając do swoich promptów „przykłady”. Czy też powinieneś tak robić? Ile przykładów? Czy to w ogóle ma znaczenie przy twoim konkretnym zadaniu?
Te pytania pojawiają się nieustannie, a terminologia wcale nie pomaga. „Zero-shot”, „few-shot”, „one-shot” — brzmi to bardziej jak słownictwo z fotografii niż praktyczne wskazówki. Ten przewodnik przebija się przez żargon i daje ci jasną ramę decyzyjną, plus kompletne prompty, które możesz skopiować i samodzielnie przetestować.

Co tak naprawdę oznacza zero-shot prompting

Zero-shot prompting polega na powierzeniu AI zadania bez pokazywania jej żadnych przykładów tego, czego oczekujesz. Opisujesz, czego potrzebujesz, a model sam wymyśla, jak to zrobić, na podstawie swojego treningu.
Oto przykład zero-shot prompta do podsumowania spotkania:

Summarize the following meeting notes into 3-5 bullet points covering the key decisions made.

Meeting notes:
{{meeting_notes}}
I tyle. Żadnych przykładów „dobrych” podsumowań, żadnych przykładowych wejść i wyjść. Ufasz modelowi, że rozumie, jak wygląda podsumowanie i co znaczy „kluczowe decyzje”. W wielu zadaniach to działa zaskakująco dobrze.

Co tak naprawdę oznacza few-shot prompting

Few-shot prompting polega na umieszczeniu w prompcie 2–5 przykładów, które pokazują wzorzec, jaki ma śledzić AI. Mówisz w gruncie rzeczy: „tak właśnie chcę, żebyś to robił”, zanim podasz właściwe zadanie.
Oto to samo zadanie podsumowania spotkania, ale z przykładami:

Summarize meeting notes into 3-5 bullet points covering key decisions.

Example 1:
Input: "Team discussed Q3 targets. Sarah proposed increasing the sales goal by 15%. Mark disagreed, suggested 10% was more realistic given current pipeline. Team voted and agreed on 12%. Also decided to postpone the website redesign until Q4."
Output:
- Agreed on 12% sales goal increase for Q3 (compromise between 15% and 10% proposals)
- Postponed website redesign to Q4

Example 2:
Input: "Budget review meeting. Current spending is 8% over forecast. CFO recommended cutting travel budget by 50% and freezing new hires for 60 days. CEO approved both measures effective immediately."
Output:
- Cut travel budget by 50% (effective immediately)
- 60-day hiring freeze approved
- Response to 8% budget overrun

Now summarize this:
{{meeting_notes}}
Zauważ różnicę. Przykłady pokazują modelowi dokładnie, jakiego formatu oczekujesz (punkty z kontekstem w nawiasach), jaki poziom szczegółowości uwzględnić i jak obsłużyć wiele decyzji. Model uczy się twoich preferencji w kontekście — bez potrzeby fine-tuningu.

Kluczowe różnice w pigułce

Oto jak oba podejścia wypadają w czynnikach, które liczą się najbardziej:
  • Szybkość: Zero-shot jest szybszy. Mniej tokenów do przetworzenia oznacza szybszą odpowiedź.
  • Koszt: Zero-shot jest tańszy. Płacisz za token, a przykłady się kumulują.
  • Nakład pracy na konfigurację: Zero-shot wymaga prawie żadnego. Few-shot wymaga znalezienia lub stworzenia dobrych przykładów.
  • Trafność przy prostych zadaniach: Mniej więcej taka sama. Współczesne modele dobrze radzą sobie z prostymi prośbami w obu wariantach.
  • Trafność przy złożonych/niestandardowych zadaniach: Few-shot zwykle wygrywa. Gdy potrzebujesz konkretnego formatowania albo terminologii branżowej, przykłady robią wymierną różnicę.
Kompromis jest jasny: zero-shot jest prostszy i tańszy, ale few-shot daje ci większą kontrolę nad wynikiem. Pytanie brzmi, kiedy ta dodatkowa kontrola jest warta swojej ceny.

Kiedy zero-shot sprawdza się najlepiej

Zero-shot prompting błyszczy, gdy zadanie jest czymś, co model już „rozumie” ze swojego treningu. To obejmuje:
Pytania ogólnowiedzowe: Prośby o wyjaśnienia, definicje czy informacje faktograficzne. Model wie, jak wygląda dobre wyjaśnienie.

Kreatywny burza mózgów: Generowanie pomysłów, pisanie pierwszych szkiców czy wymyślanie wariantów. Tu chcesz różnorodności, a nie trzymania się konkretnego wzorca.

Standardowe streszczanie: Skracanie artykułów, e-maili czy dokumentów, gdy nie potrzebujesz określonego formatu.

Tłumaczenie: Przekład tekstu między językami, na których model był trenowany.

Prosta klasyfikacja: Przypisywanie elementów do typowych kategorii (pozytywne/negatywne, pilne/niepilne), gdy kategorie same się tłumaczą.
Dobra reguła kciuka: jeśli potrafisz opisać, czego chcesz, prostym językiem, a człowiek zrozumiałby to bez przykładów, zero-shot prawdopodobnie zadziała.
Schemat blokowy pokazujący proces decyzyjny: zacznij od zero-shot, oceń wyniki, dodawaj przykłady tylko wtedy, gdy są potrzebne
Schemat blokowy pokazujący proces decyzyjny: zacznij od zero-shot, oceń wyniki, dodawaj przykłady tylko wtedy, gdy są potrzebne

Kiedy few-shot wart jest dodatkowych tokenów

Few-shot prompting zarabia na siebie wtedy, gdy wynik musi trzymać się wzorców, których model nie wywnioskuje z samej instrukcji:
Niestandardowe formatowanie: Gdy potrzebujesz wyjść w określonej strukturze — JSON z konkretnymi polami, tabele z dokładnie określonymi kolumnami, punkty w określonym stylu. Przykłady pokazują format lepiej, niż opisy go tłumaczą.

Twoje własne kategorie klasyfikacji: Jeśli sortujesz e-maile od klientów do kategorii w rodzaju „pytanie-o-rozliczenie”, „prośba-o-funkcję”, „zgłoszenie-błędu” i „ogólne-zapytanie”, pokazanie przykładów dla każdej z nich pomaga modelowi zrozumieć twoje definicje.

Dopasowanie głosu marki lub tonu: Chcesz, żeby AI pisała tak, jak istniejące teksty twojej firmy? Pokaż jej 2–3 przykłady tego głosu. Instrukcje w stylu „pisz profesjonalnie, ale przyjaźnie” są mgliste; przykłady są konkretne.

Terminologia branżowa: Jeśli twoja branża używa żargonu lub skrótów, które mają inne znaczenia w innych kontekstach, przykłady uczą model twojego kontekstu.

Przypadki brzegowe i niuanse: Wykrywanie sarkazmu, ironii czy subtelnych rozróżnień, na których zero-shot się potyka. Badania pokazują, że few-shot prompting znacząco poprawia obsługę brzegowych przypadków sentymentu, takich jak negacja i sarkazm.
Jedno z badań pokazało, że przy klasyfikacji sentymentu na Twitterze few-shot prompting z zaledwie 20–50 przykładami zbliżał się do wydajności modeli dostrojonych na ponad 10 000 przykładach. To jest siła dobrze dobranych demonstracji.
Jeśli zauważasz, że budujesz bibliotekę few-shotowych promptów do różnych zadań, narzędzie takie jak PromptNest pomaga zapisywać je z wbudowanymi zmiennymi, takimi jak {{meeting_notes}} — wypełniasz puste miejsca przy kopiowaniu, a kompletny prompt jest gotowy do wklejenia.

Schemat „Zacznij od zera, dorzuć przykłady, gdy trzeba”

Oto praktyczne podejście, które oszczędza i czas, i tokeny:
Krok 1: Zacznij od zero-shot. Napisz jasny prompt opisujący, czego chcesz. Bądź konkretny co do zadania, ale jeszcze nie dodawaj przykładów.

Krok 2: Oceń wynik. Czy daje ci to, czego potrzebujesz? Jeśli tak — gotowe. Jeśli nie, ustal co poszło nie tak — format? ton? brakujące szczegóły? Zupełne niezrozumienie zadania?

Krok 3: Dodaj celowane przykłady. Stwórz 2–3 przykłady, które pokazują dokładnie to, w czym model się pomylił. Jeśli format był nie taki — pokaż właściwy format. Jeśli ton był nietrafiony — pokaż właściwy ton.
Ten schemat ma znaczenie, bo nie zgadujesz, czy potrzebujesz przykładów — reagujesz na realne braki. Czasem dopisanie „pomyśl krok po kroku” do zero-shotowego prompta naprawia problemy z rozumowaniem bez potrzeby przykładów. Badania potwierdzają, że zero-shotowy chain-of-thought często wygrywa z few-shot przy zadaniach wymagających rozumowania.

Ile przykładów naprawdę potrzebujesz?

Badania konsekwentnie wskazują na złoty środek 2–5 przykładów dla większości zadań. Oto co mówią dane:
- Pierwsze 2–3 przykłady dają największy wzrost trafności - Po 4–5 przykładach zwroty gwałtownie spadają - Więcej przykładów może wręcz pogarszać wyniki, wprowadzając sprzeczne wzorce - Jakość przykładów liczy się bardziej niż ilość — trzy świetne przykłady biją dziesięć przeciętnych
Jest też ważne ustalenie dotyczące kolejności przykładów: badania pokazują, że sekwencja przykładów wpływa na wyniki, a optymalne uporządkowanie potrafi zdecydować o różnicy między dobrym a słabym efektem. Jeśli twój few-shotowy prompt nie działa, spróbuj najpierw zmienić kolejność przykładów, zanim dorzucisz kolejne.
Ilustracja pokazująca dodawanie kart z przykładami do prompta, z malejącymi zwrotami po pierwszych kilku
Ilustracja pokazująca dodawanie kart z przykładami do prompta, z malejącymi zwrotami po pierwszych kilku
W większości zastosowań zacznij od 2 przykładów. Jeśli trafność nie jest tam, gdzie ją potrzebujesz, dorzuć trzeci, który pokrywa inny wariant. Rzadko będziesz potrzebować więcej niż 4.

Chain-of-thought: złoty środek dla rozumowania

Jest też trzecia opcja, która szczególnie dobrze sprawdza się przy matematyce, logice i problemach wieloetapowych: chain-of-thought prompting. Zamiast pokazywać przykłady wejście–wyjście, prosisz model, żeby „pomyślał krok po kroku”.
Zero-shotowy chain-of-thought wygląda tak:

A store has 45 apples. They sell 12 in the morning and receive a shipment of 30 more. Then they sell 18 in the afternoon. How many apples do they have at closing?

Let's work through this step by step.
Ta prosta fraza — „Let's work through this step by step” — skłania model do pokazania swojego rozumowania zamiast skakania od razu do odpowiedzi. Przy złożonym rozumowaniu często bije zarówno zero-shot, jak i few-shot.
Niedawne badania z arXiv pokazały, że dla mocnych modeli, takich jak GPT-4 i Claude, zero-shotowy chain-of-thought często wygrywa z few-shot w zadaniach wymagających rozumowania. Przykłady mogą wręcz ograniczać tok myślenia modelu, zamiast mu pomagać.
Używaj chain-of-thought, gdy:
  • Zadanie wymaga wielu logicznych kroków
  • Potrzebujesz, by model wyjaśnił swoje rozumowanie (przydatne do wyłapywania błędów)
  • W grę wchodzą matematyka, logika kodu lub problemy analityczne
  • Chcesz zweryfikować podejście modelu, nie tylko jego odpowiedź

Kompletne przykłady promptów do skopiowania

Zobaczmy trzy podejścia obok siebie na realnych zadaniach. Wszystkie prompty zostały przetestowane z GPT-4 i Claude i są gotowe do użycia.

Zadanie 1: Klasyfikacja tonu wiadomości e-mail

Wersja zero-shot:

Classify the tone of this customer email as: frustrated, satisfied, neutral, or urgent.

Email:
{{email_text}}

Tone:
Wersja few-shot (lepsza dla przypadków brzegowych):

Classify customer email tone as: frustrated, satisfied, neutral, or urgent.

Email: "I've been waiting 3 weeks for my order. This is ridiculous. I want a refund NOW."
Tone: frustrated

Email: "Just wanted to say thanks — the product arrived early and works great!"
Tone: satisfied

Email: "Hi, can you confirm my order shipped? Order #12345."
Tone: neutral

Email: "Our system is down and we need the replacement part TODAY or we lose the contract."
Tone: urgent

Email: {{email_text}}
Tone:
Wersja few-shot pomaga modelowi zrozumieć twoje konkretne definicje. „Pilne” kontra „sfrustrowane” bywa niejednoznaczne — przykłady jasno wyznaczają twoje granice.

Zadanie 2: Przepisanie opisu produktu

Wersja zero-shot:

Rewrite this product description to be more engaging and benefit-focused. Keep it under 100 words.

Original: {{product_description}}

Rewritten version:
Wersja few-shot (lepsza dla spójności głosu marki):

Rewrite product descriptions to be engaging and benefit-focused. Match this style:

Original: "Stainless steel water bottle. 24oz capacity. Keeps drinks cold for 24 hours."
Rewritten: "Stay hydrated all day with our sleek 24oz steel bottle. Your morning coffee stays hot through your commute. Your afternoon water stays ice-cold at the gym. One bottle, endless possibilities."

Original: "Wireless earbuds. 8-hour battery. Noise cancelling."
Rewritten: "Eight hours of your favorite podcasts, uninterrupted. Our wireless earbuds block out the noise so you can focus on what matters — whether that's deep work, your workout playlist, or finally finishing that audiobook."

Original: {{product_description}}
Rewritten:
Wersja few-shot uczy konkretnego stylu copywriterskiego — opartego na korzyściach, konwersacyjnego, z konkretnymi zastosowaniami. Zero-shot dałby ci jakieś przepisanie, ale niekoniecznie twoim głosem.

Zadanie 3: Strukturyzacja zgłoszenia błędu

Wersja zero-shot:

Convert this bug report into a structured format with: Summary, Steps to Reproduce, Expected Behavior, and Actual Behavior.

Bug report: {{bug_report}}
Wersja few-shot (lepsza dla spójnego formatowania):

Convert bug reports into structured format.

Input: "The app crashes when I try to upload a PDF. I was on the dashboard, clicked upload, selected a 5MB PDF, and it just closed. Should show the file in my uploads but instead the whole app dies."

Output:
**Summary:** App crashes when uploading PDF files
**Steps to Reproduce:**
1. Navigate to dashboard
2. Click upload button
3. Select a PDF file (tested with 5MB file)
**Expected:** File appears in uploads section
**Actual:** Application crashes/closes unexpectedly

---

Input: {{bug_report}}

Output:
W dokumentacji technicznej spójność ma znaczenie. Wersja few-shot sprawia, że każde zgłoszenie błędu trzyma się tej samej struktury i tego samego poziomu szczegółowości.

Szybka rama decyzyjna

Gdy patrzysz na nowe zadanie, przejdź przez te pytania:
1. Czy zadanie jest proste i dobrze określone? → Zacznij od zero-shot 2. Potrzebujesz konkretnego formatu, którego model może nie zgadnąć? → Sięgnij po few-shot 3. Czy zadanie wymaga rozumowania wieloetapowego? → Najpierw spróbuj zero-shotowego chain-of-thought 4. Potrzebujesz spójnego głosu marki albo terminologii branżowej? → Użyj few-shot z przykładami w tym głosie 5. Czy zero-shot dał ci 80% tego, czego potrzebujesz? → Zostaw to. Perfekcja nie jest warta trzykrotnej liczby tokenów.
Celem nie jest sięganie po najwymyślniejszą technikę — celem jest uzyskanie dobrych wyników wydajnie. Zero-shot to ustawienie domyślne. Komplikuj tylko wtedy, gdy prostsze podejścia zawodzą.

Jak wprowadzić to w życie

Najlepszym sposobem, żeby to przyswoić, są eksperymenty. Weź zadanie, które wykonujesz regularnie — podsumowywanie raportów, redagowanie e-maili, kategoryzowanie opinii — i wypróbuj oba podejścia. Zauważ, gdzie zero-shot zawodzi. Zauważ, gdzie few-shot robi realną różnicę.
Gdy znajdziesz prompty, które działają, zapisz je gdzieś, gdzie naprawdę będziesz mógł je później odnaleźć. Jeśli budujesz kolekcję promptów z przykładami i zmiennymi, PromptNest to natywna aplikacja na Maca ($19.99 jednorazowo w Mac App Store, bez subskrypcji, bez konta, działa lokalnie), która utrzymuje je uporządkowane, przeszukiwalne i dostępne pod skrótem klawiszowym z dowolnej aplikacji. Koniec z grzebaniem po rozproszonych notatkach w poszukiwaniu tego idealnego few-shotowego prompta, którego napisałeś trzy tygodnie temu.
Zacznij prosto. Komplikuj, gdy trzeba. Zapisuj to, co działa. Cała strategia.