Rôle, contraintes & format
Objectifs de ce chapitre
- Assigner un rôle pour cadrer le registre
- Imposer des contraintes utiles et doser la créativité par la formulation
- Forcer un format exploitable (y compris machine) et gérer les contextes longs
Assigner un rôle : un raccourci puissant
« Tu es un avocat spécialisé en droit du travail » : en une phrase, cette instruction oriente le vocabulaire, le niveau de détail, la prudence des formulations et même la structure des réponses. Le rôle est un raccourci de cadrage : au lieu d'énumérer vingt micro-consignes de registre, tu actives d'un coup tout un champ de connaissances et de conventions associées à ce profil.
Pourquoi ça marche : le modèle a appris sur des textes écrits par toutes sortes de profils. En lui assignant un rôle, tu déplaces ses réponses probables vers la zone des textes que ce profil aurait écrits. « Tu es un relecteur impitoyable » produit des critiques plus franches ; « tu es un vulgarisateur pour le grand public » produit des explications plus simples — sur la même question, avec le même modèle.
Le rôle gagne en puissance quand tu lui ajoutes une audience : « Tu es un expert en cybersécurité qui s'adresse à des dirigeants non techniques » cadre les deux bouts de la communication. Sofia utilise « Tu es une responsable de communication B2B qui écrit pour des restaurateurs pressés » — le registre est verrouillé des deux côtés.
Ce qu’un rôle ne fait pas
Attention à la légende urbaine : assigner un rôle d'expert ne rend pas le modèle plus compétent. « Tu es le meilleur fiscaliste du monde » ne crée aucune connaissance fiscale nouvelle — ça oriente le style, le ton et le vocabulaire, pas la véracité. Un modèle qui se trompe sur une règle fiscale se trompera tout autant avec un titre ronflant, mais avec plus d'assurance dans la formulation. C'est même le piège : le rôle augmente la confiance apparente, pas la fiabilité.
Le rôle sert donc à cadrer le registre, jamais à garantir l'exactitude. Pour les domaines à enjeux (juridique, médical, financier), combine-le avec les réflexes du chapitre 3 : raisonnement explicite, auto-critique, et vérification humaine des points critiques.
Imposer des contraintes : la qualité par la limite
L'intuition dit que les contraintes briment la créativité. L'expérience du prompting dit l'inverse : les contraintes concentrent la qualité. Sans limite de longueur, le modèle délaie. Sans interdits, il retombe dans ses tics (« dans un monde en constante évolution... »). Sans structure imposée, il choisit la sienne, rarement celle dont tu as besoin.
Explique la blockchain à un enfant de 10 ans. Contraintes : - maximum 100 mots - une analogie du quotidien - aucun terme technique - finis par une question pour vérifier la compréhension
Chaque contrainte de ce prompt travaille : la limite de mots force la densité, l'analogie force la pédagogie, l'interdit des termes techniques force la reformulation, la question finale force l'interactivité. Sans elles, tu obtiens une page tiède. Avec elles, un paragraphe percutant. Les meilleures contraintes sont vérifiables : tu peux contrôler en relisant si chacune est respectée — et renvoyer la copie en citant celle qui ne l'est pas.
Les contraintes négatives (« sans jargon », « aucun point d'exclamation », « ne mentionne pas la concurrence ») méritent une mention : les modèles les respectent moins fiablement que les consignes positives. Quand c'est possible, reformule en positif : au lieu de « pas de ton commercial », écris « ton factuel et informatif ». Et si un interdit est critique, place-le en fin de prompt et vérifie systématiquement.
La température implicite : doser la créativité par la formulation
Les API des modèles exposent un réglage appelé « température » : basse, les réponses sont prévisibles et conservatrices ; haute, elles sont variées et audacieuses. Tu n'as pas accès à ce curseur dans une interface de chat — mais tes formulations jouent exactement le même rôle. C'est ce qu'on peut appeler la température implicite du prompt.
« Donne LA meilleure accroche », « réponds de façon factuelle et sobre », « cite uniquement des faits établis » tirent vers le prévisible — parfait pour un résumé fidèle ou une réponse de référence. « Propose 10 pistes, des plus classiques aux plus audacieuses », « ose des angles inattendus », « brainstorme sans te censurer » tirent vers le varié — parfait pour l'idéation. Le drame de Sofia : elle demandait « une idée de campagne » (formulation froide, résultat convenu) là où elle voulait un brainstorm. Depuis qu'elle demande « 10 idées, des plus sûres aux plus osées, sans te censurer », ses sessions d'idéation ont changé de visage.
Astuce d'idéation complémentaire : demander la quantité débride la qualité. Les trois premières idées d'un modèle sont presque toujours les plus convenues — celles que tout le monde a déjà eues. C'est dans les suivantes que se cachent les angles intéressants. « Donne 10 options » coûte le même prompt que « donne une option » et multiplie tes chances.
Forcer un format machine : le JSON strict
Jusqu'ici, les sorties étaient destinées à des humains. Mais Sofia veut maintenant brancher l'IA sur son tableau de bord : analyser chaque retour client et en tirer un sentiment, des thèmes, un score. Pour qu'un script exploite la sortie, celle-ci doit être dans un format machine : du JSON strict, avec un schéma précis, sans une phrase de politesse autour.
Analyse cet avis client et réponds UNIQUEMENT en JSON valide, sans texte autour :
{ "sentiment": "positif|neutre|negatif", "themes": [..], "score": 0-100 }Trois précautions font la différence entre un gadget et un outil fiable. Un, donne le schéma exact : les clés, les types, les valeurs autorisées — sinon le modèle improvise des variantes (« Positif », « positive », « pos ») qui cassent ton script. Deux, martèle l'exclusivité : « UNIQUEMENT le JSON, sans texte avant ni après, sans bloc de code autour ». Trois, prévois le cas limite : « si l'avis est inexploitable, renvoie {"sentiment": null} » — sinon le modèle inventera une analyse plutôt que d'avouer qu'il ne sait pas.
Teste ensuite comme tu testerais du code : passe-lui un avis dithyrambique, un avis assassin, un avis ambigu, un avis vide. Si le JSON reste valide et le schéma stable sur ces quatre cas, tu peux brancher ton script. Beaucoup d'outils proposent aussi un « mode JSON » natif qui garantit la validité syntaxique — utilise-le quand il existe, mais garde le schéma dans le prompt : le mode garantit du JSON valide, pas TES clés.
Gérer le contexte long : où placer quoi
Dernier cadrage, souvent ignoré : la position des éléments dans un prompt long. Quand tu colles un gros document (rapport, historique de mails, transcription), les modèles ont tendance à mieux exploiter ce qui se trouve au début et à la fin du prompt qu'au milieu. Conséquence pratique : ne noie jamais tes instructions au milieu du document.
La structure robuste pour les contextes longs : les instructions et le rôle en tête, le document délimité au milieu (entre des marqueurs clairs, comme vu au chapitre 1), et un rappel des consignes essentielles à la fin — « Rappel : réponds en 5 puces, uniquement à partir du document ci-dessus ». Ce rappel final, qui semble redondant, améliore nettement le respect des consignes sur les longs prompts.
Et n'oublie pas que la conversation entière est un contexte : au fil d'un long échange, les premières consignes s'éloignent et leur poids s'affaiblit. Si le ton dérive après vingt messages, ce n'est pas un caprice : re-précise tes contraintes, ou repars d'une conversation neuve avec un prompt propre — souvent plus efficace que de rafistoler.
Contexte
Sofia veut classer automatiquement les retours clients pour alimenter un tableau de bord mensuel. Chaque mois, 200 avis arrivent en vrac : impossible de les lire tous, et les premiers tests de classement à la main dans le chat donnaient des formats différents à chaque fois — inutilisables dans un tableur. Elle a besoin d'un prompt unique, avec rôle, contraintes et schéma JSON strict, suffisamment fiable pour être branché sur son script sans surveillance constante.
Consignes
- Assigne un rôle pertinent avec audience : analyste des retours clients pour une équipe communication.
- Définis le schéma JSON exact : clés, types, valeurs autorisées (ex. sentiment : positif|neutre|negatif, score : 0-100, themes : liste fermée de 5 thèmes possibles).
- Ajoute 3 contraintes vérifiables : UNIQUEMENT le JSON sans texte autour, valeurs strictement dans la liste, cas inexploitable → sentiment null.
- Teste sur un avis clairement positif, puis un avis clairement négatif : vérifie la validité du JSON et le respect du schéma.
- Teste sur un avis ambigu et un avis hors sujet : observe comment le prompt gère les cas limites, ajuste si le modèle invente.
- Ajoute une formulation à température basse (« classe de façon factuelle, sans interprétation au-delà du texte ») et compare la stabilité.
- Documente le prompt final avec ses cas de test : il rejoindra ta bibliothèque au chapitre 5.
En résumé
- Un rôle (+ une audience) fixe le registre, le vocabulaire et le niveau de détail en une phrase.
- Le rôle oriente le style, pas la véracité : « expert mondial » n’ajoute aucune compétence, juste de l’assurance.
- Les contraintes concentrent la qualité : longueur, structure, interdits — et privilégie les formulations positives, plus fiables que les négatives.
- Tes formulations dosent une « température implicite » : fermées pour le factuel, ouvertes et généreuses pour l’idéation.
- Demander 10 options plutôt qu’une débride l’idéation : les premières idées sont toujours les plus convenues.
- Pour une sortie machine : JSON strict, schéma exact, « UNIQUEMENT le JSON », et un cas prévu pour l’inexploitable.
- Contexte long : instructions en tête, document délimité au milieu, rappel des consignes essentielles à la fin.
Quiz — vérifie ta compréhension
1. À quoi sert d’assigner un rôle ?
2. Comment rendre une sortie exploitable par un script ?
3. Que fait réellement « tu es le meilleur expert mondial » ?
4. Tu veux un brainstorm vraiment varié. Quelle formulation choisir ?
5. Dans un prompt très long avec un gros document, où placer les consignes ?
6. Pourquoi prévoir un cas « inexploitable » dans un prompt de classification JSON ?