Zum Hauptinhalt springen

Prompts mit XML-Tags strukturieren

Fortgeschritten
What you'll learn
  • Warum XML-artige Tags Claude klare Grenzen zwischen Prompt-Teilen geben
  • Wie man Anweisungen, Dokumente, Beispiele und Formatregeln in benannte Tags wickelt
  • Wie man Claude um getaggte Ausgabe bittet, die man zuverlässig parsen kann
  • Wann man taggt — und wann man nicht über-taggt

Wenn ein Prompt Anweisungen, ein Dokument, Beispiele und eine Frage mischt, kann das Modell sie verschwimmen lassen. XML-artige Tags sind ein sauberer Weg, jeden Teil zu beschriften — und Claude reagiert besonders gut darauf.

Die Idee

Wickle jeden Abschnitt in einen benannten Tag, damit eindeutig ist, was was ist:

Tagged prompt structure

<instructions>
Summarize the document for a busy executive. Use only the document; if a fact
isn't there, say so.
</instructions>

<document>
{paste the long document here}
</document>

<format>
3 bullet points, then a one-line "decision needed".
</format>

Die Tags sind nur Text, den du erfindest — <document>, <example>, <context>, <rules> — aber sie geben dem Modell klare Grenzen.

Warum es hilft

Pro tip
  • Trennt Daten von Anweisungen — das Modell befolgt mit geringerer Wahrscheinlichkeit verirrten Text innerhalb eines eingefügten Dokuments (eine milde Verteidigung gegen Prompt Injection — siehe /docs/security/prompt-injection).
  • Reduziert "es hat einen Teil meines Prompts ignoriert". Jeder Teil ist klar abgegrenzt.
  • Macht Ausgaben leichter parsbar — du kannst Claude bitten, seine Antwort in <answer>-Tags zu setzen, und sie zuverlässig extrahieren.
  • Lässt sich mit Few-Shot kombinieren (/docs/prompting/few-shot) — wickle jedes Beispiel in <example>.

Die vier Vorteile im Detail:

  • Trennt Daten von Anweisungen — das Modell befolgt mit geringerer Wahrscheinlichkeit verirrten Text innerhalb eines eingefügten Dokuments (eine milde Verteidigung gegen Prompt Injection).
  • Reduziert „es hat einen Teil meines Prompts ignoriert“. Jeder Teil ist klar abgegrenzt.
  • Macht Ausgaben leichter parsbar — du kannst Claude bitten, seine Antwort in <answer>-Tags zu setzen, und sie zuverlässig extrahieren.
  • Lässt sich mit Few-Shot kombinieren — wickle jedes Beispiel in <example>.

Um getaggte Ausgabe bitten

Guided walkthrough1 of 3
  1. Sag dem Modell genau, welche Tags es für Reasoning vs. die endgültige Antwort verwenden soll.

Request tagged output

Put your reasoning in <thinking> tags and your final answer in <answer> tags.

Dann kann dein Code nur den <answer>-Inhalt greifen. Passt gut zu strukturierter Ausgabe, wenn du maschinenlesbare Ergebnisse brauchst.

Tipps

Key takeaways
  • Sei konsistent — öffne und schließe jeden Tag; verwende dieselben Namen wieder.
  • Benenne Tags sinnvoll (<contract>, nicht <x>).
  • Über-tagge keine trivialen Prompts — nutze das, wenn es wirklich mehrere unterschiedliche Teile gibt.
  • Sei konsistent — öffne und schließe jeden Tag; verwende dieselben Namen wieder.
  • Benenne Tags sinnvoll (<contract>, nicht <x>).
  • Über-tagge nicht triviale Prompts — nutze das, wenn es wirklich mehrere unterschiedliche Teile gibt.

Überprüfe dich selbst

Überprüfe dich selbst

0/5
  1. Was ist der Hauptgrund, warum XML-artige Tags helfen, wenn ein Prompt Anweisungen, ein Dokument und eine Frage mischt?
  2. Warum wirken Tags als milde Verteidigung gegen Prompt Injection?
  3. Wie kannst du zuverlässig nur Claudes endgültige Antwort aus einer getaggten Antwort extrahieren?
  4. Was ist die beste Praxis beim Benennen von Tags?
  5. Wann solltest du NICHT zu XML-Tags greifen?

Weiter