Aller au contenu principal
Leçon 5 sur 66 · Claude sur Google Cloud (Vertex AI / Agent Platform)

Les prompts système

Leçon 5 sur 66 Mis à jour le 5 novembre 2026 Développeur
Sur cette page
  1. Pourquoi un prompt système
  2. Le paramètre system
  3. Le prompt système dans la fonction chat
  4. Et les messages system en cours de conversation ?
  5. Cas d’usage et bonnes pratiques
  6. À vous de jouer
  7. Points clés à retenir

Le prompt système est l’outil le plus direct pour cadrer le comportement de Claude : un rôle, un ton, une façon de répondre, fixés une fois pour toute la conversation. Cette leçon reprend l’exemple du cours officiel, un tuteur de mathématiques, ajoute le paramètre system à la fonction chat, et précise ce qui a changé depuis : certains modèles acceptent aussi des messages system en cours de conversation.

Pourquoi un prompt système

Imaginez un chatbot de tuteur en mathématiques. Un élève demande : « Comment résoudre 5x + 2 = 3 ? ». Un bon tuteur donne d’abord des indices plutôt que la solution, guide l’élève pas à pas, montre au besoin un problème voisin résolu. Il ne donne pas directement la réponse, et ne conseille pas d’utiliser une calculatrice. Sans consigne, Claude fait ce qu’on attend d’un assistant : il déroule la solution complète. Le prompt système lui dit d’adopter un autre rôle, et il répond comme le ferait quelqu’un dans ce rôle.

La même question, deux comportements Deux colonnes pour la question « Comment résoudre 5x + 2 = 3 ? » : sans prompt système, Claude déroule la solution ; avec le prompt du tuteur, il pose une question qui guide l'élève. PROMPT SYSTÈME La même question, deux comportements Sans prompt système Réponse La solution complète, étape par étape, jusqu'à x = 1/5. Effet Utile, mais l'élève n'a rien cherché. → Avec le tuteur Prompt système Tuteur patient ; ne donne pas la réponse ; guide pas à pas. Réponse « Quelle première étape permettrait d'isoler x ? » Effet Claude répond comme le ferait un tuteur. Le prompt système fixe un comportement durable pour toute la conversation ; la tâche, elle, va dans le message user.
D'après la leçon « System prompts » (Claude Academy, Claude on Google Cloud).

Le paramètre system

Le prompt système est une simple chaîne, passée dans le paramètre system de messages.create, à côté de la liste messages et non dedans.

system = """Tu es un tuteur de mathématiques patient.
Ne réponds pas directement aux questions de l'élève.
Guide-le pas à pas vers la solution."""

message = client.messages.create(
    model=model,
    max_tokens=4096,
    system=system,
    messages=[{"role": "user", "content": "Comment résoudre 5x + 2 = 3 ?"}],
)

Avec ce cadrage, le cours officiel obtient une question en retour plutôt qu’une solution : quelle première étape permettrait d’isoler x, quelle opération faire des deux côtés. Même question, comportement tout différent.

Le prompt système dans la fonction chat

Plutôt que de figer le prompt système, on l’ajoute en paramètre facultatif de chat. Un détail compte : l’API n’accepte pas system=None, on n’ajoute donc le paramètre que s’il est fourni.

def chat(messages, system=None):
    params = {"model": model, "max_tokens": 4096, "messages": messages}
    if system:
        params["system"] = system
    message = client.messages.create(**params)
    return "".join(block.text for block in message.content if block.type == "text")

answer = chat(messages)                 # sans prompt système
answer = chat(messages, system=system)  # avec le tuteur

Et les messages system en cours de conversation ?

Le prompt système principal ne se met pas dans la liste messages : un message system ne peut pas en être le premier élément, et sur les modèles qui ne les prennent pas en charge, il renvoie une erreur 400. Depuis 2026, plusieurs modèles acceptent en revanche des messages {"role": "system"} ajoutés en cours de route, pour une consigne d’opérateur qui s’applique à partir d’un point de la conversation (un changement de mode, une information d’état) : Fable 5.1, Opus 5.5, Opus 5, Opus 4.8, Sonnet 5.5 et Haiku 5.5, entre autres. Un tel message suit immédiatement un tour user et précède un tour assistant ou termine la liste. Son intérêt : il ne modifie pas le début de la conversation, donc il préserve le cache des prompts (section 7). Pour un cadrage valable dès le départ, le paramètre system reste la règle.

Cas d’usage et bonnes pratiques

Cas d’usageExemple de prompt système
Assistant spécialisé« Tu es un expert en droit du travail français… »
Contrôle du ton« Tu es un assistant professionnel et concis. Pas de familiarité. »
Restriction du périmètre« Tu ne réponds qu’aux questions de cuisine. Pour tout autre sujet, décline poliment. »
Persona« Tu es un coach sportif motivant qui encourage ses clients. »

Le prompt système décrit un comportement durable, pas une tâche : « tu es un assistant juridique qui cite toujours ses sources » y a sa place, « résume ce contrat » va dans le message user. Soyez précis (« trois phrases au plus » vaut mieux que « sois concis »), définissez le rôle et ses limites, dites ce que Claude doit et ne doit pas faire. Pour un format exploitable par du code, préférez les sorties structurées (leçon 9) à une consigne de format dans le prompt système.

À vous de jouer

Le tuteur. Lancez la question « Comment résoudre 5x + 2 = 3 ? » avec et sans le prompt système du tuteur, puis répondez au tuteur par une mauvaise première étape. Le guide-t-il vers l’erreur sans vous donner la solution ?

Un cadrage en cours de route. Avec Sonnet 5.5, tenez une conversation de deux tours, puis ajoutez après votre troisième message un message {"role": "system", "content": "Mode concis : réponds en une phrase."} et envoyez la liste. Vérifiez que la réponse suit la nouvelle consigne.

Sources officielles : System prompts (Claude Academy) · Mid-conversation system messages and tool changes (documentation Claude, modèles et règles de placement)

Points clés à retenir

  • Le prompt système fixe un rôle, un ton et des règles pour toute la conversation ; Claude répond comme quelqu’un dans ce rôle.
  • Il se passe dans le paramètre system, à côté de messages ; l’API n’accepte pas system=None.
  • Des messages system peuvent s’ajouter en cours de conversation sur les modèles récents, jamais en premier message ; ils préservent le cache.
  • Comportement durable dans le système, tâche dans le message user ; un format exploitable passe par les sorties structurées.