Aller au contenu principal

Structurer les prompts avec des balises XML

Intermédiaire
What you'll learn
  • Pourquoi les balises de style XML donnent à Claude des frontières nettes entre les parties d'un prompt
  • Comment envelopper instructions, documents, exemples et règles de format dans des balises nommées
  • Comment demander à Claude une sortie balisée que vous pouvez parser de façon fiable
  • Quand baliser — et quand ne pas sur-baliser

Quand un prompt mélange instructions, un document, des exemples et une question, le modèle peut les confondre. Les balises de style XML sont un moyen propre d'étiqueter chaque partie — et Claude y répond particulièrement bien.

L'idée

Enveloppez chaque section dans une balise nommée pour qu'il soit sans ambiguïté de savoir ce qui est quoi :

Structure de prompt balisée

<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>

Les balises ne sont que du texte que vous inventez — <document>, <example>, <context>, <rules> — mais elles donnent au modèle des frontières nettes.

Pourquoi cela aide

Pro tip
  • Sépare les données des instructions — le modèle est moins susceptible d'obéir à du texte parasite à l'intérieur d'un document collé (une défense légère contre l'injection de prompt — voir /docs/security/prompt-injection).
  • Réduit le « il a ignoré une partie de mon prompt ». Chaque partie est clairement délimitée.
  • Rend les sorties plus faciles à parser — vous pouvez demander à Claude de mettre sa réponse dans des balises <answer> et l'extraire de façon fiable.
  • Se combine avec le few-shot (/docs/prompting/few-shot) — enveloppez chaque exemple dans <example>.

Les quatre bénéfices en détail :

  • Sépare les données des instructions — le modèle est moins susceptible d'obéir à du texte parasite à l'intérieur d'un document collé (une défense légère contre l'injection de prompt).
  • Réduit le « il a ignoré une partie de mon prompt ». Chaque partie est clairement délimitée.
  • Rend les sorties plus faciles à parser — vous pouvez demander à Claude de mettre sa réponse dans des balises <answer> et l'extraire de façon fiable.
  • Se combine avec le few-shot — enveloppez chaque exemple dans <example>.

Demander une sortie balisée

Guided walkthrough1 of 3
  1. Dites au modèle exactement quelles balises utiliser pour le raisonnement vs. la réponse finale.

Demander une sortie balisée

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

Votre code peut alors récupérer juste le contenu de <answer>. Se marie bien avec la sortie structurée quand vous avez besoin de résultats lisibles par machine.

Astuces

Key takeaways
  • Soyez cohérent — ouvrez et fermez chaque balise ; réutilisez les mêmes noms.
  • Nommez les balises de façon significative (<contract>, pas <x>).
  • Ne sur-balisez pas les prompts triviaux — utilisez ceci quand il y a vraiment plusieurs parties distinctes.
  • Soyez cohérent — ouvrez et fermez chaque balise ; réutilisez les mêmes noms.
  • Nommez les balises de façon significative (<contract>, pas <x>).
  • Ne sur-balisez pas les prompts triviaux — utilisez ceci quand il y a vraiment plusieurs parties distinctes.

Testez-vous

Testez-vous

0/5
  1. Quelle est la principale raison pour laquelle les balises de style XML aident quand un prompt mélange instructions, un document et une question ?
  2. Pourquoi les balises agissent-elles comme une défense légère contre l'injection de prompt ?
  3. Comment extraire de façon fiable juste la réponse finale de Claude d'une réponse balisée ?
  4. Quelle est la meilleure pratique pour nommer les balises ?
  5. Quand ne PAS recourir aux balises XML ?

Suite