Comment des personas simulés ont révélé les failles de mon chatbot
Pendant des semaines, mes tests passaient parce que je posais au bot les questions que j'avais prévues. Je les posais gentiment, dans l'ordre logique, et le bot répondait bien. J'en concluais que ça marchait.
Sauf que les vrais utilisateurs ne posent pas les questions dans l'ordre logique. Ils sont pressés, méfiants, ils changent d'avis, ils reviennent trois messages plus tard sur un point qu'ils avaient déjà validé. Un bot qui n'a été testé que par la personne qui l'a construit n'a jamais rencontré ça.
Le terrain
Le bot en question s'appelle Julie : un agent immobilier qui discute avec des prospects sur WhatsApp. Il est en phase de test fermée, donc sans trafic réel pour l'instant, autant le dire d'emblée : tous les chiffres qui suivent viennent de tests simulés. En production, chacun de ces échanges aura un enjeu commercial réel : comprendre ce que cherche la personne, la conseiller, et l'amener à laisser son numéro ou à accepter un rendez-vous.
Je voulais mesurer si chaque correctif améliorait réellement les conversations, au lieu de m'en remettre à mon impression.
La méthode
J'ai arrêté de tester le bot moi-même et j'ai fait tourner des vagues de personas simulés par un LLM. Trois précisions de vocabulaire, une bonne fois : un persona est un profil de prospect avec un caractère assigné (pressé, méfiant, confus, hors sujet) joué par un LLM ; une vague est le passage d'un corpus complet de personas contre le bot ; une conversion signifie que le persona a accepté d'être recontacté (numéro laissé ou rendez-vous accepté), classée par une analyse automatique des transcripts.
En parallèle, un corpus de conversations scriptées, avec pour chacune la liste écrite de ce qu'elle doit produire et de ce qu'elle n'a pas le droit de produire, sert de filet de non-régression. Pour les cas les plus délicats, une autre IA joue le prospect en interactif, tour par tour, et critique chaque échange.
La règle centrale du protocole : pour chaque correctif, j'ai rejoué le même corpus et comparé le nombre de réussites avant et après. J'ajoute une nuance honnête : les premières comparaisons ont été faussées plusieurs fois par le banc de test lui-même (options mal transmises, conditions pas tout à fait identiques). Une partie du travail a consisté à fiabiliser la mesure avant de fiabiliser le bot.
Les résultats
Sur le closing (amener la conversation jusqu'à la conversion), campagne menée du 26/06 au 03/07, la vague de référence donnait 17 conversions sur 28 personas, soit 61 %. Après un lot de correctifs ciblés, la même vague est passée à 19 sur 28, soit 68 %. Dit autrement : deux conversations gagnées sur 28, sur des personas simulés. C'est un signal encourageant, pas une preuve statistique. Le sous-groupe le plus difficile, les personas méfiants, est passé de 2 sur 9 à 4 sur 9.
Sur un autre chantier, la qualité du conseil rendu (campagne des 06 et 07/07), la métrique n'est plus la conversion mais la part de conversations où le bot délivre le conseil de fond attendu au lieu de dérouler ses étapes. Mesure sur 150 conversations appariées réparties en 6 vagues : en moyenne 3,25 conversations conseillées de plus par vague de 25, sans qu'aucune vague ne déclenche de marqueur interdit (les phrases que le bot n'a pas le droit de dire, promesses ou informations proscrites, vérifiées automatiquement à chaque conversation).
Toujours sur le conseil, deux profils n'obtenaient jamais la réponse de fond attendue, 0 essai réussi sur 5 : le persona méfiant qui exige la transparence sur le fait qu'il parle à une IA, et le persona vendeur obsédé par le prix d'estimation. Après des correctifs distincts, chacun est passé à 5 sur 5 ; pour le vendeur-prix, la stabilité a été re-vérifiée sur des runs ultérieurs, avec la méthode d'estimation citée à chaque run.
Enfin, après la collecte du numéro ou l'acceptation du rendez-vous, deux défauts agaçants (redemander un numéro qui vient d'être donné, re-proposer un rendez-vous déjà accepté) sont passés respectivement de 3 occurrences à 0 et de 2 à 0 sur le contrôle dédié du 12/07.
Le test qui m'a induit en erreur
Fin juin, un correctif venait d'être posé sur le closing des profils méfiants. La vague qui a suivi annonçait 3 méfiants convertis sur 9, contre 1 sur 9 en référence. De 11 % à 33 % : j'étais content, ça avait l'air de marcher.
Une semaine plus tard, j'ai rejoué les mêmes personas avec le protocole complet, corpus figé et vagues répétées. Résultat : une seule conversion apparente sur 9. Et en relisant le transcript, cette unique conversion était un faux positif, une conversation mal classée par l'analyse automatique. Le vrai chiffre était 0 sur 9. Le gain annoncé une semaine plus tôt n'avait pas tenu : on était même en dessous de la référence.
J'en ai tiré la leçon suivante : mesurer un bot est presque aussi difficile que le corriger. Un résultat isolé ne suffit pas ; il faut rejouer le même corpus et vérifier que l'écart se reproduit, puis relire les conversations gagnantes une par une. Le chiffre dont il faut le plus se méfier est celui qui fait plaisir la première fois qu'on le voit.
Le coût
Ce qui rend la méthode utilisable en continu, c'est son prix. Quelques ordres de grandeur relevés sur mes campagnes : la mesure consolidée de début juillet (une vague de closing de 28 personas plus 5 runs du corpus scripté) a coûté environ 1 euro de consommation LLM au total ; une vague de 31 personas méfiants jouée en double a coûté environ 10 centimes ; 48 conversations de test en ont coûté 40. Les vagues de contrôle tournent la nuit, sans surveillance, sur un corpus figé de 25 personas. On peut donc retester après chaque correctif sans que ça devienne un projet en soi.
Limites de ces tests
Ces résultats ont trois limites importantes.
- Les personas sont des simulations par un LLM, pas de vrais clients. Ils imitent des comportements, ils ne les remplacent pas. Le trafic réel du bot est aujourd'hui nul.
- Les échantillons sont petits : avec 9 méfiants testés, un seul persona qui bascule déplace le taux de 11 points. Un « 44 % » mesuré sur 9 personas est un signal, pas une statistique.
- Un seul test avec un humain réel a eu lieu : cinq conversations, faites par moi, un moment ponctuel, non répété. C'est pourtant le seul contact que le bot ait eu avec de vraies fautes de frappe et des formulations imprévues.
Cette méthode ne remplace pas de vrais utilisateurs en volume. Elle sert à débusquer les cas cassés avant qu'un vrai client ne tombe dessus, et à obtenir un signal reproductible sur l'effet d'un correctif.
Et maintenant
Je peux appliquer ce protocole à un chatbot existant : vagues de personas adaptées à votre métier, liste des scénarios en échec classés par gravité, puis re-mesure après vos correctifs pour mesurer si le résultat se reproduit sur le corpus testé. Si ça vous intéresse, contactez-moi.