Przejdź do treści
3.13Średniozaawansowany8 min

Few-Shot Prompting dla niezawodnych wyników agentów AI

Sebastian KarallZaktualizowano 28 października 2026
Definicja

Few-shot prompting to technika polegająca na podaniu agentowi AI w prompcie kilku przykładów (zwykle od 2 do 5) poprawnych danych wejściowych i wyjściowych, aby poprzez in-context learning przejął format, styl i logikę zadania bez ponownego trenowania modelu. Dzięki temu format wyników i wywołania narzędzi stają się znacznie bardziej niezawodne.

W skrócie

  • Few-shot prompting steruje agentami za pomocą od 2 do 5 kanonicznych przykładów w kontekście, a nie przez trenowanie modelu. To element context engineeringu, a nie osobna metoda obok prompt engineeringu.
  • Reprezentatywność i różnorodność są ważniejsze niż liczba: sprzeczne lub zduplikowane przykłady skłaniają model do kopiowania najbardziej podobnego przykładu. Celem są różnorodne, kanoniczne przypadki.
  • Do tool callingu istnieją dedykowane mechanizmy: od listopada 2025 Anthropic obsługuje pole input_examples w każdej definicji narzędzia i zaleca od 1 do 5 przykładowych wywołań. Stabilizuje to zwłaszcza zagnieżdżone lub opcjonalne parametry.
  • Tam, gdzie wymagana jest 100-procentowa zgodność z formatem, dekodowanie ograniczone schematem (OpenAI Structured Outputs, GA od sierpnia 2024) zastępuje heurystykę few-shot w zakresie samej struktury. Few-shot pozostaje istotny dla stylu i logiki.
  • Zero-shot do prostych zadań, few-shot dla niezawodności formatu i wywołań narzędzi, fine-tuning dopiero przy bardzo dużym wolumenie lub presji na opóźnienia. W kontekście DACH (Niemcy, Austria, Szwajcaria) język niemiecki zwiększa koszt tokenów w przykładach o 30 do 50 procent.
  • Przykłady nie są darmowe: kosztują tokeny przy każdym wywołaniu i sprzyjają overfittingowi. Stabilne bloki przykładów powinny trafić do prefiksu promptu, który można cache'ować (odczyty z cache kosztują ok. 10 procent ceny standardowej, stan na 2026).

Few-shot prompting to technika polegająca na podaniu agentowi AI w prompcie kilku przykładów poprawnych danych wejściowych i wyjściowych, aby poprzez in-context learning przejął format, styl i logikę zadania bez ponownego trenowania modelu. Zamiast opisywać zachowanie prozą, pokaż je: od dwóch do pięciu reprezentatywnych przypadków, na których model opiera się w kolejnej turze inferencji. W agentach gotowych do produkcji few-shot to nie zabawka, lecz jedna z najskuteczniejszych dźwigni dla niezawodnych formatów wyników i poprawnego wywoływania narzędzi.

  • Ile: Od dwóch do pięciu przykładów dla ogólnego wyniku, od jednego do trzech kanonicznych wywołań na narzędzie. Więcej rzadko pomaga liniowo.
  • Jakie: Różnorodne, reprezentatywne przypadki bez duplikatów i bez sprzeczności. Jakość i pokrycie wygrywają z liczbą.
  • Kiedy nie: Przy prostych zadaniach zero-shot lub gdy wymagana jest 100-procentowa zgodność z formatem; wtedy lepsze jest dekodowanie ograniczone schematem.

Few-shot w kontekście: element context engineeringu

Few-shot prompting nie jest samodzielną metodą obok prompt engineeringu, lecz poddziedziną context engineeringu. Andrej Karpathy wprost wymienia „few-shot examples” jako jeden z naukowych elementów, którymi wypełnia się okno kontekstu przed kolejnym krokiem, obok opisów zadań, RAG, narzędzi i stanu. Model mentalny dla agentów brzmi więc tak: przykłady są częścią substratu tokenów, który model widzi w każdej turze, a nie jednorazową instrukcją.

To ujęcie ma praktyczne konsekwencje. Przykłady konkurują ze wszystkim innym o budżet uwagi i miejsce na tokeny. Kto stosuje few-shot, musi rozpatrywać go w ramach budżetu kontekstu, a nie w oderwaniu od niego.

Zero-Shot, Few-Shot, One-Shot

  • Zero-Shot: Tylko opis zadania, bez przykładów. Szybko, tanio, idealnie do prostych lub oczywistych zadań.
  • One-Shot: Dokładnie jeden przykład. Przydatny, aby utrwalić jednoznaczny format bez dużego obciążenia tokenami.
  • Few-Shot: Kilka przykładów obejmujących warianty i przypadki brzegowe. Standard dla wyników agentów, w których format i logika są krytyczne.

Dobór i reprezentatywność: właściwa praca inżynierska

Najczęstszym błędem nie jest zła liczba, lecz zły dobór. Typowy antywzorzec w system promptach: kilka sprzecznych przykładów skłania model do kopiowania najbardziej podobnego. Rozwiązaniem są różnorodne, kanoniczne przykłady bez duplikatów. Anthropic w swoim przewodniku po context engineeringu z września 2025 również zaleca różnorodne, kanoniczne przykłady zamiast wpisywania każdej reguły do promptu jako długiej listy przypadków brzegowych.

W praktyce reprezentatywny dobór oznacza:

  • Uwzględnianie wariantów, a nie trzykrotnie ten sam przypadek w lekko zmienionej formie. Jeśli agent przetwarza faktury, faktury korygujące i storna, dodaj po jednym przykładzie każdego rodzaju, a nie trzy faktury.
  • Świadome pokazywanie przypadków brzegowych, na przykład przypadku z brakującymi polami obowiązkowymi i prawidłowej reakcji na niego. Przykłady uczą też zachowania w sytuacjach niejednoznacznych.
  • Spójny format we wszystkich przykładach. Rozjazd formatu między przykładami to trucizna: model powiela niespójność.
  • Brak sprzecznych sygnałów. Jeśli przykład A pomija pole, przykład B je wypełnia i nie da się tej różnicy wyjaśnić, model zgaduje.

Wpływ na tool calling i niezawodność wyników

Tu few-shot przynosi największe korzyści. Na potrzeby definicji narzędzi Anthropic wprowadził w listopadzie 2025 Tool Use Examples: pole input_examples, które dostarcza przykładowe wywołania bezpośrednio obok schematu. Anthropic zaleca od 1 do 5 realistycznych przykładów na narzędzie; w testach wewnętrznych dokładność przy złożonych parametrach wzrosła dzięki temu z 72 do 90 procent. Bez przykładów model zgaduje przy zagnieżdżonych lub opcjonalnych parametrach. Zasada praktyczna: zwykle wystarczą od jednego do trzech kanonicznych wywołań na narzędzie, bo każdy przykład kosztuje tokeny. Związek z niezawodnością wyboru narzędzi jest ścisły: w tym samym artykule Anthropic podaje, że Tool Search Tool przy dużych bibliotekach narzędzi podnosi dokładność wyboru narzędzi w wewnętrznych ewaluacjach MCP z 49 do 74 procent dla Opus 4 oraz z 79,5 do 88,1 procent dla Opus 4.5. Dobre przykłady w opisie narzędzia są częścią tej samej dyscypliny.

Przy wyniku końcowym ważne jest jedno rozróżnienie. Tam, gdzie obowiązkowo wymagane są struktury możliwe do sparsowania maszynowo, sam few-shot nie wystarczy. OpenAI Structured Outputs (GA od sierpnia 2024, dla GPT-4o-2024-08-06 i nowszych modeli) wymusza za pomocą dekodowania ograniczonego (constrained decoding) na poziomie tokenów udokumentowaną 100-procentową zgodność ze schematem. Anthropic poszedł tą samą drogą w listopadzie 2025: Structured Outputs dla Claude wystartowały jako beta i od lutego 2026 są ogólnie dostępne. Wyniki JSON obsługuje output_config.format, a wywołania narzędzi Strict Tool Use z strict: true, w obu przypadkach z dekodowaniem ograniczonym. Wcześniejsze obejście, czyli wymuszone użycie narzędzia z pseudonarzędziem w rodzaju return_structured_result, bez strict nie gwarantuje zgodności ze schematem: według dokumentacji Anthropic Claude może wtedy zwracać niewłaściwe typy lub pomijać pola obowiązkowe. Czysty podział ról w 2026 roku: wymuszanie schematu gwarantuje strukturę, a few-shot kształtuje styl, dobór słów, logikę i obsługę przypadków brzegowych, których żaden schemat nie odwzorowuje.

Metoda

Cel

Zgodność z formatem

Nakład / koszt

Zero-Shot

Proste zadania, oczywisty format

Zmienna

Minimalny

Few-Shot (2-5 przykładów)

Stabilizacja stylu, logiki i wywołań narzędzi

Wysoka, niegwarantowana

Tokeny na wywołanie, możliwość iteracji

Structured Outputs / Strict Tool Use

Obowiązkowa struktura JSON

Gwarantowana przez schemat (poza odmową, max_tokens)

Utrzymanie schematu, niskie opóźnienie

Fine-Tuning

Bardzo duży wolumen, presja na opóźnienia

Wysoka, zależna od modelu

Cykl trenowania, nakład na dane

Kiedy few-shot, kiedy zero-shot, a kiedy fine-tuning

Decyzja opiera się na trzech osiach: złożoności zadania, wolumenie i stabilności wymagań.

  • Zero-shot, gdy zadanie jest proste, a format nie ma krytycznego znaczenia. Każdy dodatkowy token przykładu byłby zmarnowany.
  • Few-shot, gdy tylko wymagany jest określony format, spójny styl lub nietrywialna logika, a wymagania wciąż się zmieniają. Few-shot można iterować bez cyklu trenowania i to jest jego największa zaleta.
  • Fine-tuning, dopiero przy bardzo dużym, stabilnym wolumenie, gdy tokeny przykładów w każdym wywołaniu zaczynają mieć znaczenie ekonomiczne lub opóźnienie staje się krytyczne. Cognition Labs wytrenowało dla Devina własny, mniejszy model do streszczania na własnych danych z trace'ów, ponieważ generyczne prompty gubiły zbyt wiele szczegółów: klasyczny przypadek, w którym few-shot dotarł do swoich granic.

Warto wspomnieć o etapie pośrednim: przy weryfikacji metodą LLM-as-Judge przykłady few-shot w prompcie sędziego (pozytywne i negatywne) są standardem. Hamel Husain zaleca kalibrowanie takich ewaluacji z sędzią na ponad 100 oznaczonych przykładach i cotygodniowe ich utrzymanie. Pokazuje to granicę między few-shot w prompcie (kilka przykładów) a stojącą za nim bazą danych ewaluacyjnych (wiele przykładów).

Pułapki: overfitting i koszty tokenów

Overfitting do przykładów to najbardziej podstępna pułapka. Agent kopiuje powierzchowne cechy przykładów, na przykład określoną kolejność lub sformułowanie, zamiast uogólniać leżącą u ich podstaw regułę. Objaw: przy danych wejściowych podobnych do przykładów wynik jest idealny, przy odmiennych przypadkach się załamuje. Remedium to celowa różnorodność przykładów i zestaw ewaluacyjny, który sprawdza właśnie przypadki nieobjęte przykładami.

Koszty tokenów i context rot to druga pułapka. Każdy przykład jest wysyłany przy każdym wywołaniu. W badaniu Chroma Context Rot z lipca 2025 przetestowano 18 modeli, w tym GPT-4.1, Claude 4, Gemini 2.5 i Qwen3. We wszystkich eksperymentach wydajność spadała wraz ze wzrostem długości danych wejściowych. W kontekście DACH (Niemcy, Austria, Szwajcaria) dochodzi do tego dodatkowe utrudnienie: tekst niemiecki wymaga o 30 do 50 procent więcej tokenów niż równoważny tekst angielski. Niemieckie przykłady few-shot są więc zauważalnie droższe.

Najważniejsza dźwignia ekonomiczna: stabilne bloki przykładów powinny trafić do prefiksu promptu, który można cache'ować. Odczyty z cache w Anthropic kosztują około 10 procent standardowej stawki za tokeny wejściowe (stan na 2026), w przypadku Sonnet 4.6 około 0,30 zamiast 3,00 dolarów amerykańskich za milion tokenów. Jeśli utrzymujesz przykłady few-shot w stałej postaci razem z system promptem i definicjami narzędzi, a na końcu umieszczasz tylko część dynamiczną, płacisz za tokeny przykładów głównie według stawki cache. Każda zmiana przykładów unieważnia cache, dlatego wersjonuj przykłady i zmieniaj je w planowanych wydaniach, a nie hotfixem.

Konkretny przykład: z few-shot i bez

Agent ma na podstawie e-maila utworzyć ustrukturyzowane żądanie zapisu zamówienia dla narzędzia create_order.

Bez few-shot (zero-shot):

```
System: Utwórz z e-maila wywołanie create_order.
Input: "Proszę 3x artykuł A-100 i 1 szt. B-205 dla klienta nr 4711."
Output (typowo): {"klient": "4711", "artykul": "A-100, B-205", "ilosc": "3 i 1"}
```

Wynik wygląda sensownie, ale jest bezużyteczny: ilości i artykuły zostały połączone w zwykły tekst, a nazwy pól odbiegają od schematu narzędzia. Na dalszym etapie parsowanie się wysypuje.

Z few-shot (dwa kanoniczne przykłady w prompcie narzędzia):

```
Przykład 1
Input: "2x C-300 dla klienta 9001"
Wywołanie: {"customer_id":"9001","items":[{"sku":"C-300","qty":2}]}

Przykład 2 (przypadek brzegowy: brak podanej ilości -> domyślnie 1)
Input: "Artykuł D-401 dla klienta 9002"
Wywołanie: {"customer_id":"9002","items":[{"sku":"D-401","qty":1}]}

Rzeczywisty input: "Proszę 3x artykuł A-100 i 1 szt. B-205 dla klienta nr 4711."
Wywołanie: {"customer_id":"4711","items":[{"sku":"A-100","qty":3},{"sku":"B-205","qty":1}]}
```

Dwa przykłady wystarczą, aby utrwalić nazwy pól, strukturę tablicy, domyślne zachowanie przy braku ilości i rozdzielanie kilku pozycji zamówienia. Po stronie kosztów: oba przykłady dodają mniej więcej od 150 do 250 tokenów na wywołanie, w języku niemieckim odpowiednio więcej. Jeśli znajdują się w prefiksie w cache, przy kolejnych wywołaniach kosztują tylko około jednej dziesiątej. Aby zagwarantować strukturę, łączy się tę konfigurację few-shot ze Strict Tool Use (strict: true) dla schematu create_order. Few-shot odpowiada wtedy za logikę, a schemat za formę. Wyjątki Anthropic wymienia sam w dokumentacji Structured Outputs: w przypadku odmowy (stop_reason: "refusal") lub przerwania na max_tokens wynik może odbiegać od schematu.

Dla agencji i decydentów B2B

Few-shot prompting to najszybszy sposób, by przeprowadzić agenta od etapu „działa na demo” do „niezawodny w produkcji” bez budżetu na trenowanie. Dla agencji oznacza to: zainwestuj wcześnie w starannie dobrany, wersjonowany zbiór przykładów dla każdego przypadku użycia, bo to zasób wielokrotnego użytku i czynnik wyróżniający. Dla decydentów B2B: wymagaj od swojego partnera wdrożeniowego zestawu ewaluacyjnego, na którym testowane są przykłady, oraz wyraźnego rozdzielenia few-shot dla logiki i wymuszania schematu dla formatu. Jeśli chcesz budować workflowy agentów o udokumentowanej niezawodności wyników, Blck Alpaca z Wiednia wesprze Cię w projektowaniu, ewaluacji i produkcyjnym utrzymaniu agentów zgodnych z wymogami obowiązującymi w Europie.

Podsumuj z AIChatGPTClaudePerplexity

Otwiera czat z przygotowanym promptem.

Najczęściej zadawane pytania

Ilu przykładów potrzebuję do few-shot promptingu w przypadku agentów?
Zasada praktyczna: od dwóch do pięciu przykładów dla ogólnego wyniku i od jednego do trzech kanonicznych wywołań na definicję narzędzia. Więcej przykładów rzadko daje liniowo lepsze rezultaty, za to kosztuje tokeny i zwiększa ryzyko, że agent skopiuje najbardziej podobny przykład zamiast uogólniać. Decyduje różnorodność, nie liczba: uwzględnij najważniejsze warianty i przypadki brzegowe, unikaj duplikatów.
Kiedy zero-shot jest lepszy niż few-shot?
Zero-shot wystarczy, gdy zadanie jest proste, a format wyniku nie ma krytycznego znaczenia, na przykład przy swobodnych podsumowaniach lub prostej klasyfikacji z jasno określonymi klasami. Gdy tylko wymagany jest konkretny format JSON lub narzędzia, spójny styl albo nieoczywista logika, few-shot mierzalnie poprawia niezawodność. Przy obowiązkowej zgodności z formatem dekodowanie ograniczone schematem jest pewniejszym wyborem niż same przykłady.
Few-shot prompting czy fine-tuning?
Few-shot można iterować bez cyklu trenowania, dlatego idealnie sprawdza się, dopóki wymagania się zmieniają. Fine-tuning opłaca się dopiero przy bardzo dużym i stabilnym wolumenie, gdy tokeny przykładów w każdym wywołaniu zaczynają mieć znaczenie ekonomiczne albo gdy opóźnienie jest krytyczne. Cognition Labs wytrenowało na przykład dla Devina własny, mniejszy model do streszczania na własnych danych z trace'ów, ponieważ generyczne prompty gubiły zbyt wiele szczegółów. Dla większości agentów B2B few-shot jest pragmatycznym punktem wyjścia.
Czym jest in-context learning?
In-context learning to zdolność modelu językowego do przejęcia zadania na podstawie przykładów umieszczonych bezpośrednio w prompcie, bez zmiany wag modelu. Few-shot prompting jest jego praktycznym zastosowaniem: przykłady służą jako tymczasowa instrukcja dla tej konkretnej tury inferencji. Efekt jest ulotny: działa tylko w danym kontekście, a przykłady trzeba wysyłać przy każdym wywołaniu.
Dlaczego zbyt wiele przykładów pogarsza wyniki agenta?
Z trzech powodów. Po pierwsze overfitting do przykładów: agent kopiuje cechy powierzchowne zamiast uogólniać. Po drugie context rot: długie konteksty obniżają efektywną wydajność modelu, nawet poniżej nominalnego limitu. Po trzecie koszt tokenów: każdy przykład jest wysyłany przy każdym wywołaniu. W języku niemieckim problem się nasila, bo równoważny tekst wymaga o 30 do 50 procent więcej tokenów niż po angielsku.

Chcesz zgłębić temat?

Otrzymuj nowe analizy prosto na swoją skrzynkę albo zobacz, jak wykorzystujemy tę wiedzę w firmach.