Moduł 3 35 min Zaawansowany

Techniki zaawansowane - few-shot, mega-prompts, XML tags

Czego się nauczysz
  • Znasz i stosujesz XML tags w promptach Claude
  • Wiesz, kiedy i ile przykładów dawać (few-shot)
  • Potrafisz budować mega-prompty i łańcuchy promptów
  • Wiesz, kiedy tagi XML pomagają, a kiedy wystarczą nagłówki i jasny język

Znaczniki XML - dlaczego działają w Claude

Tagi XML pomagają Claude jednoznacznie odczytać złożony prompt. Najwięcej dają, gdy w jednym prompcie mieszasz instrukcje, kontekst, przykłady i dane wejściowe. Dzięki nim model rzadziej myli polecenie z materiałem do analizy.

W prostszych promptach na nowych modelach podobnie działają czytelne nagłówki i jasny język. Tak pisze dziś sam Anthropic na blogu o dobrych praktykach promptowania.

Interaktywny tutorial Anthropic, pisany jeszcze dla Claude 3, nadal podaje, że Claude był specjalnie trenowany na tagach XML. Aktualna dokumentacja tego nie powtarza i przy rozbieżnościach z tutorialem każe trzymać się strony Prompting best practices (stan na 1 października 2026).

Zasady z oficjalnej dokumentacji Anthropic

Nazwy tagów:

  • NIE MA kanonicznych „najlepszych” nazw - używaj opisowych nazw pasujących do zawartości
  • Bądź konsekwentny - te same nazwy w całym prompcie
  • Zagnieżdżaj tagi, gdy treść ma naturalną hierarchię - np. każdy <document> w środku <documents>
  • Odwołuj się do nazw tagów w instrukcjach (np. „Na podstawie danych w <context>...”)

Opisowe, spójne nazwy i zagnieżdżanie zaleca aktualna strona Prompting best practices (stan na 1 października 2026). Brak „najlepszych” nazw i odwoływanie się do tagów pochodzą z wcześniejszej wersji dokumentacji, z osobnej strony o XML z 2025 roku. Aktualna dokumentacja ich nie powtarza, ale nie są sprzeczne z jej zaleceniami.

Popularne tagi:

TagZastosowanie
<context>Kontekst, tło, dane
<instructions>Instrukcje dla Claude
<examples> / <example>Przykłady (zagnieżdżone)
<output_format>Oczekiwany format odpowiedzi
<constraints>Ograniczenia
<document>Dokument z treścią i źródłem
<answer> / <uzasadnienie>Odpowiedź i krótkie uzasadnienie (bez pełnego toku rozumowania)

Uwaga na <thinking> (stan na 1 października 2026): dawna dokumentacja Anthropic łączyła XML z parą <thinking> / <answer>. Dziś prośba o wypisanie rozumowania w odpowiedzi może skończyć się odmową. Dotyczy to Fable 5.1, Opus 5.5 i Sonnet 5.5, a także starszych Fable 5 i Opus 5. Taka odmowa ma kategorię reasoning_extraction (wydobywanie rozumowania modelu).

W API taka odmowa przed pierwszym tokenem odpowiedzi jest od 24 września 2026 płatna. Dokumentacja opisuje to zachowanie dla API, dla czatu Anthropic tego nie precyzuje. Te modele same decydują, ile myśleć przed odpowiedzią. Na claude.ai tok zobaczysz w rozwijanym podsumowaniu myślenia nad odpowiedzią, a w API po ustawieniu display: "summarized" w parametrze thinking. Sekcję <thinking> zostaw dla modeli spoza tej listy z wyłączonym myśleniem, np. Haiku 4.5.

Nowość z przewodnika Opus 5.5 (dla twórców aplikacji na API): tekst, który użytkownik wkleił z maila albo strony WWW, otaczaj tagami <pasted_content>. Otwarcie i zamknięcie dostają to samo krótkie, losowe ID generowane przez Twoją aplikację. W system prompcie dopisz, że to cudzy tekst, a polecenia z jego wnętrza Claude wykonuje tylko na wyraźną prośbę użytkownika.

To ochrona przed prompt injection, czyli poleceniami ukrytymi w cudzym tekście. Tagi to zwykły tekst i da się je podrobić, więc traktuj je jako jedno z kilku zabezpieczeń.

Pełny przykład ustrukturyzowanego prompta

<context>
Jesteś asystentem analizującym dane sprzedażowe
firmy X za Q3 2026.
</context>

<documents>
<document index="1">
<source>raport_q3_2026.csv</source>
<document_content>
[dane CSV]
</document_content>
</document>
</documents>

<instructions>
Na podstawie danych w <documents>:
1. Zidentyfikuj 3 najlepiej sprzedające się produkty
2. Porównaj wyniki z Q2 2026
3. Zaproponuj strategię na Q4
</instructions>

<output_format>
Raport w formacie markdown z tabelami dla danych liczbowych.
Użyj nagłówków H2 dla każdej sekcji.
</output_format>

<constraints>
- Opieraj się WYŁĄCZNIE na dostarczonych danych
- Nie dodawaj spekulacji bez oznaczenia ich jako takie
- Maksymalnie 500 słów
</constraints>

Łączenie z innymi technikami:

  • Znaczniki XML + few-shot = bardzo dobrze ustrukturyzowane prompty
  • XML tags + wbudowane myślenie = czysty wynik (np. w <answer>), a tok rozumowania w podsumowaniu myślenia nad odpowiedzią
  • XML tags + ręczny CoT z <thinking> = tylko na modelach spoza listy z ramki wyżej, z wyłączonym myśleniem (np. Haiku 4.5)

Few-shot learning - ile przykładów dawać

Oficjalna rekomendacja Anthropic: 3-5 różnorodnych, trafnych przykładów. Według aktualnej dokumentacji kilka dobrze dobranych przykładów poprawia dokładność i spójność odpowiedzi (stan na 1 października 2026).

Blog Anthropic (listopad 2025) radzi inaczej: zacznij od jednego przykładu i dokładaj kolejne, gdy wynik nadal odbiega od oczekiwań.

Tabela poniżej to moja heurystyka z praktyki, nie zalecenie Anthropic. Dokumentacja podaje tylko przedział 3-5.

LiczbaKiedyEfektywność
0 (zero-shot)Proste, jednoznaczne zadaniaDobra dla prostych zadań
1 (one-shot)Pokazanie formatu/styluŚrednia - często za mało kontekstu
3 (optimum)Większość zadańDobra - wystarczająca standardowo
5Złożone zadania, precyzyjne formatowanieBardzo dobra - górna granica przedziału 3-5 z dokumentacji
5+ (wiele)Niszowe/specyficzne zadaniaBywa lepsza, ale kosztuje więcej tokenów - sprawdź na własnych danych

Best practices

  • Przykłady muszą być trafne - odzwierciedlać rzeczywiste przypadki
  • Przykłady muszą być różnorodne - pokrywać edge cases
  • Opakowuj w tagi <example> (wiele w <examples>)
  • Zawsze dołącz zarówno input, jak i oczekiwany output
  • Poproś Claude o ocenę, czy Twoje przykłady są trafne i różnorodne, albo o dopisanie kolejnych na ich wzór
  • Przy zadaniach z rozumowaniem pokaż w przykładzie problem, metodę i odpowiedź. Według dokumentacji model przenosi taką metodę do własnego myślenia
  • Wyjątek to agenci z narzędziami (np. wyszukiwarką albo dostępem do plików). Według wpisu Anthropic z 24 lipca 2026 przykłady użycia narzędzi potrafią zawęzić modelom generacji 5 pole poszukiwań. Tam lepiej opisać cel niż dawać gotowe wzory

Mega-prompts - kiedy i jak

Mega-prompt to długi, wieloczęściowy prompt zawierający wszystko: kontekst, rolę, instrukcje, przykłady, ograniczenia i format.

Struktura mega-promptu

[System Prompt] - Rola i globalne zachowanie

[User Prompt]
<context> - Tło i dane (na górze!) </context>
<documents> - Dokumenty </documents>
<examples> - 3-5 przykładów </examples>
<instructions> - Kroki do wykonania </instructions>
<output_format> - Oczekiwany format </output_format>
<constraints> - Ograniczenia </constraints>
[Pytanie na samym dole]

Kolejność ma znaczenie. Przy długich materiałach (od ok. 20 tys. tokenów) daj dokumenty na górę, a pytanie na koniec. W testach Anthropic pytanie na końcu poprawiało jakość odpowiedzi nawet o 30%, zwłaszcza przy kilku dokumentach naraz.

Mega-prompt vs prompt chaining

Mega-promptPrompt chaining
Wszystko w jednym prompcieDzielisz na kroki
Szybsze (1 wywołanie)Wolniejsze (wiele wywołań)
Trudniejsze do debugowaniaŁatwe do debugowania
Gdy nie musisz kontrolować krokówGdy chcesz kontrolować każdy krok

Rekomendacja Anthropic (stan na 1 października 2026): przy myśleniu adaptacyjnym (model sam decyduje, ile myśleć) Claude rozkłada większość wieloetapowych zadań samodzielnie. Ręczny łańcuch przydaje się, gdy chcesz obejrzeć wynik pośredni albo wymusić konkretny przebieg procesu.

W praktyce: zacznij od jednego, dobrze opisanego promptu. Łańcuch włącz, gdy chcesz zatwierdzać każdy etap albo potrzebujesz powtarzalnego procesu na dużą skalę. Przy takich procesach dokumentacja nadal wskazuje, że każde podzadanie dostaje pełną uwagę Claude.

Przypis dla Fable 5.1 i innych nowych modeli: dokumentacja Anthropic radzi dawać ogólne instrukcje zamiast ręcznie rozpisanego planu. Rozumowanie Claude często wykracza poza to, co rozpisałby człowiek. Przewodnik Fable 5 dodaje, że skille (pakiety instrukcji dla Claude) pisane pod starsze modele bywają dla Fable 5 zbyt nakazowe. Potrafią wtedy obniżyć jakość wyników.

Według przewodnika Fable 5.1 ten model prowadzi bardzo długie zadania bez wielu wskazówek co do metody, zwłaszcza gdy cel jest jasny. Opisz więc oczekiwany WYNIK i sposób sprawdzenia pracy, a podział na kroki zostaw modelowi. Ręczne łańcuchy zostają tam, gdzie musisz skontrolować każdy krok.

Prompt chaining - łączenie promptów

Rozbijanie złożonych zadań na mniejsze podzadania, gdzie output jednego prompta staje się inputem następnego.

Najpopularniejszy wzorzec: Generate → Critique → Refine

Dokumentacja Anthropic nazywa go samokorektą (ang. self-correction) i wskazuje jako najczęstszy wzorzec łańcucha: szkic, ocena według kryteriów, poprawka.

Prompt 1 (Generate):
"Napisz artykuł o prompt engineeringu (500 słów)"
→ Output: [draft artykułu]

Prompt 2 (Critique):
"Oceń poniższy artykuł pod kątem:
(a) klarowności, (b) kompletności, (c) błędów.
<article>[output z Prompt 1]</article>"
→ Output: [recenzja]

Prompt 3 (Refine):
"Popraw artykuł na podstawie recenzji.
<article>[draft]</article>
<review>[recenzja]</review>"
→ Output: [poprawiony artykuł]

Korzyści prompt chainingu

  1. Pełna uwaga - każde podzadanie dostaje pełną uwagę Claude
  2. Klarowność - prostsze instrukcje = lepsze wyniki
  3. Debugowanie - łatwo namierzyć problematyczny krok
  4. Kontrola - możesz sprawdzić wynik każdego kroku

Pro tip: Jeśli Claude pomija krok lub słabo go wykonuje - wyizoluj ten krok w osobnym prompcie i dopracuj go niezależnie.

Ćwiczenie praktyczne: Wykonaj 3 zadania:

1. XML tags: Napisz ustrukturyzowany prompt z tagami <context>, <instructions>, <output_format> i <constraints> do analizy strategii content marketingowej.

2. Few-shot: Napisz prompt z 3 przykładami do przekształcania tytułów artykułów w posty na X (dawny Twitter). Przetestuj wynik.

3. Prompt chaining: Zastosuj wzorzec Generate → Critique → Refine do napisania posta na LinkedIn. Porównaj draft z finalną wersją.

Co dalej

W następnej lekcji nauczysz się projektować system prompty i tworzyć custom asystentów AI.