ITSkillsCenter
Intelligence Artificielle

XML tags dans les prompts Claude : structure qui performe

5 min de lecture
Miniature - XML tags dans les prompts Claude : structure qui performe

Ce que vous saurez faire à la fin

  • Structurer vos prompts Claude avec des balises XML pour gagner 15 à 40 % de fiabilité mesurée
  • Choisir les 7 balises qui couvrent 95 % des cas d’usage PME
  • Combiner XML + exemples few-shot pour faire passer Claude en mode « expert métier »
  • Déboguer un prompt qui échoue en isolant chaque bloc XML
  • Écrire un template réutilisable pour votre équipe marketing, commerciale ou support

Prérequis

  • Compte Anthropic actif, clé API ou Claude.ai Pro
  • Un cas d’usage réel : résumer des CV, rédiger une fiche produit, classer des emails clients
  • Un éditeur qui affiche la coloration XML (VS Code, Cursor, Notepad++)

Étape 1 — Pourquoi XML et pas du Markdown ou du JSON

Claude a été entraîné massivement avec du XML. En pratique, une balise <instruction> est 3 à 5 fois plus fiable qu’un titre markdown ## Instruction pour délimiter une section critique. Différences clés :

  • Markdown : titres et listes, mais pas de notion de « bloc » ni d’imbrication propre
  • JSON : strict, mais Claude doit échapper les guillemets et sauts de ligne, ce qui pollue la sortie
  • XML : imbrication naturelle, tolère les sauts de ligne, Claude sait le parser et le générer sans effort

Règle pratique : pour tout prompt de plus de 300 mots ou tout prompt utilisé en production, passez en XML.

Étape 2 — Les 7 balises à maîtriser

  1. <instruction> : la consigne principale, ce que Claude doit faire
  2. <context> : le contexte métier, ce que Claude doit savoir
  3. <input> ou <document> : les données à traiter (email, CV, fiche produit)
  4. <example> : un exemple entrée → sortie (few-shot)
  5. <format> : le format de sortie attendu
  6. <constraints> : les règles à respecter (longueur, ton, interdits)
  7. <thinking> : zone où Claude peut raisonner avant de répondre

Étape 3 — Votre premier prompt structuré

Cas : vous voulez qu’un agent classe les emails entrants de votre PME en 4 catégories (commande, réclamation, devis, autre).

<instruction>
Tu es un assistant classification email pour une PME sénégalaise.
Lis l'email dans <input> et classe-le dans UNE seule des 4 catégories.
Réponds UNIQUEMENT au format demandé dans <format>.
</instruction>

<context>
L'entreprise vend des équipements bureautiques à Dakar.
Les emails arrivent en français, wolof ou franglais.
Les clients sont des PME, administrations et particuliers.
</context>

<example>
Entrée : "Bonjour, je voudrais 3 imprimantes HP laser, délai ?"
Sortie : {"categorie":"devis","confiance":0.95}
</example>

<example>
Entrée : "L'imprimante livrée lundi ne marche pas, je suis très mécontent"
Sortie : {"categorie":"reclamation","confiance":0.98}
</example>

<constraints>
- Une seule catégorie parmi : commande, reclamation, devis, autre
- Confiance entre 0 et 1
- Pas de texte hors JSON
</constraints>

<format>
{"categorie":"...", "confiance":0.xx}
</format>

<input>
{email_a_classer}
</input>

Étape 4 — Tester et mesurer le gain

Ne faites jamais confiance à votre intuition. Mesurez.

  1. Constituez un jeu de test de 50 emails réels avec la bonne catégorie connue
  2. Lancez 2 versions du prompt : v1 en markdown classique, v2 en XML structuré
  3. Comptez les bonnes classifications sur les 50 cas
  4. Le gain typique en passant au XML : +15 à +40 % de précision
import anthropic, json

client = anthropic.Anthropic()

def classifier(prompt_template, email):
    msg = client.messages.create(
        model="claude-sonnet-4-6",
        max_tokens=200,
        messages=[{"role":"user","content": prompt_template.replace("{email_a_classer}", email)}]
    )
    return json.loads(msg.content[0].text)

# Boucle test
correct = 0
for cas in jeu_de_test:
    pred = classifier(prompt_xml, cas["email"])
    if pred["categorie"] == cas["attendu"]:
        correct += 1
print(f"Précision XML: {correct}/50 = {correct*2}%")

Étape 5 — Balises pour raisonnement complexe

Pour les tâches qui demandent réflexion (analyse juridique, diagnostic, recommandation), donnez une zone <thinking> à Claude.

<instruction>
Analyse la réclamation client et propose une réponse.
D'abord, raisonne dans <thinking>. Puis écris la réponse finale dans <reponse_client>.
</instruction>

<input>
{reclamation}
</input>

<format>
<thinking>
Ton raisonnement étape par étape : qui est en tort, que dit le droit OHADA, quelle est la bonne attitude commerciale.
</thinking>

<reponse_client>
La réponse réellement envoyée au client, en français, 150 mots max.
</reponse_client>
</format>

Cette séparation raisonnement vs réponse améliore la qualité finale car Claude ne se contente pas de sortir la première idée.

Étape 6 — Erreurs courantes

  • Balises non fermées : <input> sans </input> dégrade la compréhension. Fermez toujours proprement.
  • Balises trop génériques : <data> est flou. Préférez <cv_candidat> ou <email_client>.
  • Nesting excessif : pas plus de 3 niveaux d’imbrication. Au-delà, vous perdez Claude.
  • Exemples inventés : les exemples doivent venir de vrais cas métier, pas d’hypothèses théoriques.
  • Oubli de <format> : sans précision du format de sortie, Claude varie d’un appel à l’autre.

Étape 7 — Template réutilisable

Gardez ce squelette dans votre wiki interne et adaptez-le à chaque cas :

<instruction>
{role_de_claude}
{action_principale}
</instruction>

<context>
{infos_metier_stables}
</context>

<constraints>
- {regle_1}
- {regle_2}
- {regle_3}
</constraints>

<example>
Entrée : {exemple_input}
Sortie : {exemple_output}
</example>

<format>
{format_precis_de_sortie}
</format>

<input>
{donnee_a_traiter}
</input>

Prochaines étapes

  • Intégrer le prompt dans votre code via l’API et versionner avec git
  • Monter un jeu de régression : 100 cas réels rejoués à chaque modification du prompt
  • Passer à prompt caching pour baisser le coût de 90 % si votre contexte est stable
  • Combiner XML + tool_use pour des agents qui appellent vos API internes
Besoin d'un site web ?

Confiez-nous la Création de Votre Site Web

Site vitrine, e-commerce ou application web — nous transformons votre vision en réalité digitale. Accompagnement personnalisé de A à Z.

À partir de 250.000 FCFA
Parlons de Votre Projet
Publicité