Le WordPress d'aujourd'hui, décodé pour les développeurs

Tests

Tester un chatbot d’accueil de collectivité : couverture hors périmètre

Un assistant conversationnel public doit refuser proprement les questions hors sujet plutôt qu'inventer une réponse. Voici comment le vérifier automatiquement.

Par WordPress Développement • 30 juillet 2023 • 4 min de lecture • Aucun commentaire
Tester un chatbot d'accueil de collectivité : couverture hors périmètre

Un habitant qui demande à l’assistant d’accueil d’une mairie « comment renouveler ma carte d’identité » attend une réponse fiable. Le même habitant qui demande, par curiosité ou par erreur, « quel est le meilleur restaurant du centre-ville » ne doit surtout pas recevoir une réponse inventée avec le même aplomb. C’est cette deuxième situation, bien plus difficile à garantir, qui a structuré la suite de tests du projet.

Le chatbot, intégré à un site WordPress de collectivité, répond aux questions administratives courantes à partir d’un corpus documentaire contrôlé : horaires, démarches, formulaires. Le risque n’est pas qu’il se trompe sur une question dans son périmètre, mais qu’il réponde avec assurance à une question qui n’en fait pas partie.

Construire un corpus de questions hors périmètre

La suite de tests contient 27 questions volontairement hors sujet, classées en trois catégories : questions administratives d’une autre collectivité, questions commerciales sans lien avec le service public, et questions ambiguës qui ressemblent à une démarche mais n’en sont pas une, comme « pouvez-vous me réserver une salle de mariage » sur un site qui ne gère pas cette prestation.

$hors_perimetre = array(
    "Quel est le meilleur restaurant du centre-ville ?",
    "Pouvez-vous réserver une salle de mariage ?",
    "Quels sont les horaires de la mairie de la ville voisine ?",
);

foreach ( $hors_perimetre as $question ) {
    $reponse = $assistant->repondre( $question );
    $this->assertTrue( $reponse->est_un_refus_poli() );
}

Chaque test vérifie non pas l’absence de réponse, mais la présence d’un refus explicite qui redirige vers un canal humain, un standard téléphonique ou un formulaire de contact générique.

Fixer un seuil de confiance exploitable

L'essentiel à retenir : Un corpus de questions hors périmètre à maintenir ; Un seuil de confiance en dessous duquel le bot refuse ; Un test de non-régression sur chaque nouvelle intention

Le moteur sous-jacent retourne un score de pertinence pour chaque réponse générée à partir du corpus documentaire. En dessous d’un seuil fixé à 0,62 après plusieurs itérations empiriques, la réponse est automatiquement remplacée par le message de redirection, quel que soit le contenu généré.

  • Score supérieur à 0,62 : réponse du corpus affichée telle quelle
  • Score entre 0,45 et 0,62 : réponse affichée avec une invitation à vérifier auprès d’un agent
  • Score inférieur à 0,45 : refus poli et redirection systématique

Éviter le sur-ajustement au corpus de test

Un risque identifié tôt : ajuster le seuil jusqu’à ce que les 27 questions de test passent, sans vérifier que les vraies questions administratives continuent d’obtenir une réponse utile. Un deuxième corpus, celui des questions dans le périmètre, sert de garde-fou symétrique : il vérifie qu’aucune question légitime ne tombe sous le seuil de refus par excès de prudence.

Automatiser la non-régression à chaque ajout de contenu

Chaque ajout d’une nouvelle démarche au corpus documentaire déclenche l’exécution complète des deux suites, périmètre et hors périmètre. Un ajout mal formulé peut élargir accidentellement la zone de confiance du moteur et faire répondre le bot à une question qu’il aurait dû refuser auparavant.

Un assistant qui refuse correctement une question hors sujet inspire davantage confiance qu’un assistant qui répond toujours, même à côté de la plaque.

Ce que cette suite ne couvre pas

Le choix du modèle de génération sous-jacent, ses coûts d’inférence ou sa latence, relève d’une décision technique distincte, documentée séparément par l’équipe infrastructure. Cette suite de tests ne s’intéresse qu’au comportement observable du chatbot face à l’utilisateur final, indépendamment du moteur qui produit les réponses.

En résumé

Sur un projet grand public porté par une collectivité, la robustesse perçue ne vient pas de la richesse des réponses mais de la fiabilité des refus. Vingt-sept questions hors périmètre, un seuil de confiance calibré et un corpus symétrique de contrôle ont permis de livrer un assistant qui ne prétend jamais savoir ce qu’il ignore.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Partager :

À propos de l'auteur

WordPress Développement

Développeur WordPress, passionné par Elementor, le FSE et l’automatisation par IA.

Voir tous ses articles

Dans la même veine

À lire aussi