Leçon 9 — Pièges et robustesse

Ambiguïtés, biais et langues

30min

Ambiguïtés : le modèle choisit à votre place

Quand deux consignes se contredisent ou qu'un mot a deux sens, le modèle tranche, et pas toujours de la même façon. Ces défauts apparaissent rarement au premier test : ils surgissent au centième client.

AmbiguïtéExempleCorrection
Contradiction« Sois bref » et « explique toujours la politique de retour en détail »Priorité explicite : « 3 phrases ; si le client demande les détails, ajoute un lien vers la politique »
Mot à double sens« Traite les commandes du jour » (les lister ? les valider ?)« Liste les commandes passées aujourd'hui, sans les modifier »
Référence floue« Utilise le document » quand il y en a trois« Utilise uniquement <politique_retour> »
Cas non prévuRien n'est dit si le produit n'existe pas« Si le produit est absent du catalogue, dis-le et propose un conseiller »
Négation lourde« Ne réponds pas si tu n'es pas sûr de ne pas… »Une règle positive et simple
flowchart TD
  A["Écrire le prompt"] --> B["Le relire en se demandant : que ferait un débutant ?"]
  B --> C["Lister les cas non couverts"]
  C --> D["Demander au modèle : quelles consignes sont ambiguës ?"]
  D --> E["Ajouter priorités et cas limites"]
  E --> F["Cas de test pour chaque ambiguïté levée"]

Un prompt dit « réponds toujours en 2 phrases » et « détaille toutes les étapes de la procédure de retour ». Que faut-il faire ?

Biais : ce que le modèle suppose

Les modèles reproduisent des régularités de leurs données d'entraînement. En service client, cela peut se voir par exemple dans :

Biais possibleExempleAtténuation
Supposition sur la personneÉcrire « Monsieur » par défaut à un client dont on ne connaît pas la civilité« Sans civilité connue, utilise "Bonjour" suivi du prénom, ou "Bonjour" seul »
Traitement inégalTon plus sec avec les messages écrits avec des fautesConsigne explicite de ton constant + cas de test avec fautes
Biais des exemples4 exemples few-shot sur 5 sont des remboursements acceptésÉquilibrer les exemples
Stéréotypes en génération de contenuVisuels ou textes marketing qui associent un métier à un genrePréciser la diversité attendue, relecture humaine

Test simple : envoyez le même message en changeant seulement le prénom ou le style d'écriture, et comparez décisions et ton. Si la décision change, vous avez un problème.

test_biais.py
from llm import appeler

SYSTEME = open("systeme-service-client.txt", encoding="utf-8").read()
base = "Bonjour, je suis {p}. Mon colis est arrivé abîmé, je voudrais un échange."
for prenom in ["Camille", "Mohamed", "Jean-Pierre", "Mei"]:
    print(prenom, "->", appeler(SYSTEME, base.format(p=prenom))[:120])

Langues : répondre dans celle du client

AvantAprès
Prompt système en français, aucune consigne de langue : le client anglophone reçoit parfois du français« Réponds dans la langue du dernier message du client. Si elle est incertaine, réponds en français. »
Exemples few-shot uniquement en françaisAu moins un exemple dans chaque langue prioritaire
Les marqueurs techniques traduits (« [ESCALATION] », « [ESCALADE] »)« Le marqueur [ESCALADE] reste identique quelle que soit la langue »
Les champs JSON traduits par le modèle« Les clés et valeurs du JSON restent en français ; seul le champ "reponse" suit la langue du client »

Quels éléments doivent rester identiques quelle que soit la langue du client ? (plusieurs réponses)

Exercice

Repérez au moins quatre problèmes dans ce prompt système, puis réécrivez-le :

« Tu es un assistant pour notre magasin. Réponds de façon courte mais complète. Utilise le document. Si le client est énervé, sois gentil. Ne dis pas Monsieur si ce n'est pas un homme. Réponds en français. »

Voir la solution

Problèmes : « courte mais complète » est contradictoire sans priorité ; « le document » ne désigne rien ; « sois gentil » n'est pas vérifiable et ne prévoit pas l'escalade ; la consigne sur « Monsieur » suppose de deviner le genre ; « réponds en français » exclut les clients étrangers ; aucun cas non couvert n'est traité.

Tu es l'assistant du service client du magasin « Maison & Jardin » (fictif).
Longueur : 3 phrases maximum. Si le client demande plus de détails, donne le lien de <politique>.
Utilise uniquement les informations de <catalogue> et <politique>. Si l'information manque,
dis-le et propose un conseiller.
Salutation : « Bonjour » suivi du prénom s'il est connu. N'utilise jamais Monsieur ou Madame.
Langue : celle du dernier message du client ; en cas de doute, le français.
Client en colère après deux messages, ou demande d'un humain : réponds
« Je vous mets en relation avec un conseiller. » puis [ESCALADE] (marqueur jamais traduit).

Je sais faire

  • Repérer contradictions, références floues et cas non couverts dans un prompt.
  • Écrire une règle de priorité entre deux consignes.
  • Tester un prompt en ne changeant qu'un prénom ou un style d'écriture.
  • Faire suivre la langue du client tout en gardant les marqueurs et le JSON stables.
Suivant