GEO

Prompt système

Un prompt système est l'instruction de plus haut niveau qui dit à un LLM "qui tu es, ce que tu dois faire et ce que tu ne dois pas faire", posant le cadre de toute la conversation. Contrairement aux prompts utilisateur, que les utilisateurs finaux rédigent, les prompts système sont injectés par le développeur de l'application et restent en vigueur à chaque tour.

Un prompt système est l'instruction de plus haut niveau qui dit à un LLM "qui tu es, ce que tu dois faire et ce que tu ne dois pas faire", posant le cadre de toute la conversation. Contrairement aux prompts utilisateur, que les utilisateurs finaux rédigent, les prompts système sont injectés par le développeur de l'application et restent en vigueur à chaque tour.

Pourquoi c'est important

Le prompt système est le "langage de conception" des produits fondés sur des LLM. Quelle que soit la liberté avec laquelle un utilisateur formule ses prompts, un prompt système bien conçu maintient les réponses du modèle dans un rôle, un ton et un ensemble de limites définis. Des chatbots ChatGPT, Claude et Gemini aux moteurs de recherche IA, agents de codage et bots de support, chaque application LLM façonne sa personnalité à travers le prompt système.

Composantes

Rôle : "Vous êtes un expert en rédaction marketing qui aide les exploitants de blogs SaaS." Fixe la perspective depuis laquelle le modèle répond.

Objectif : "Aidez les utilisateurs à rédiger rapidement des articles de blog." Donne la direction de la conversation.

Contraintes : "Répondez uniquement en coréen." "Pas d'exemples de code." "300 caractères maximum." Bloque d'emblée les comportements indésirables.

Ton : "Amical mais professionnel, sans exagération." Maintient une voix de marque cohérente.

Format de sortie : "Structurez les réponses avec des sous-titres ###." Réduit le post-traitement.

Date limite de connaissances : "Signalez lorsque vos informations peuvent être obsolètes." Atténue le risque d'hallucination.

Descriptions des outils : pour les agents à appel de fonctions, incluez la liste et la description des outils disponibles dans le prompt système.

Prompt système vs prompt utilisateur

AspectPrompt systèmePrompt utilisateur
Rédigé parDéveloppeurUtilisateur final
Fréquence de changementRarementÀ chaque requête
ContenuRôle, contraintes, tonRequête spécifique
PortéeToute la conversationCette requête seulement
SécuritéDevrait être caché à l'utilisateurPublic

Un bon système LLM sépare le "cadre stable" (prompt système) de l'"entrée variable" (prompt utilisateur).

Conseils pratiques

Attribuez un rôle, ne commandez pas : "Vous êtes un expert qui fait X" surpasse "Faites X". Le modèle incarne le rôle et produit une sortie plus cohérente.

Préférez les contraintes positives : "Faites ceci" l'emporte sur "Ne faites pas cela".

Incluez des exemples (few-shot) : placer 2 à 3 exemples de sorties dans le prompt système stabilise considérablement le style et le format.

Utilisez des balises XML : pour les modèles de la famille Claude, des balises comme <role>, <constraints>, <examples> aident le modèle à analyser clairement chaque section.

N'en écrivez pas trop : des prompts système plus longs coûtent plus de tokens à chaque requête. Coupez tout ce qui n'est pas essentiel.

Faites des tests A/B régulièrement : exécutez différents prompts système sur de vraies requêtes et comparez la satisfaction, l'exactitude et la sécurité.

Se défendre contre l'injection de prompt

Les prompts système sont des cibles de choix pour l'injection de prompt. Une entrée utilisateur comme "ignore toutes les instructions précédentes" peut écraser un prompt système faible. Les défenses incluent la technique du sandwich (répéter les instructions clés au début et à la fin), l'isolement des données externes dans des balises XML, et l'application des permissions au niveau de l'appel d'outil.

Sources :