Dernière mise à jour le

Tay a appris la mauvaise leçon en moins de deux jours

Le mois de mars vient de montrer les deux côtés des chatbots. Microsoft a présenté son Bot Framework, puis Tay a déraillé sur Twitter en moins de deux jours. Le point technique important n’est pas qu’un bot « apprend Internet » comme une personne. C’est qu’un pipeline transforme des messages hostiles en entrées, décisions et parfois nouvelles réponses.

Un bot reçoit un message, identifie langue et intention, extrait des entités, consulte un état de conversation, appelle une fonction puis construit une réponse. Si un modèle ou une règle réutilise sans contrôle le contenu envoyé par les utilisateurs, un groupe coordonné peut influencer la sortie.

Une conversation doit passer des frontières explicites

Pour « où est ma commande 471? » :

  1. le canal authentifie ou identifie la session;
  2. le bot classe l’intention suivre_commande;
  3. il extrait 471 avec un score;
  4. il demande une connexion avant toute donnée privée;
  5. l’API vérifie que la commande appartient au compte;
  6. le bot transforme le statut en réponse;
  7. un faible score ou une erreur passe à un humain.

Le modèle de langage ne décide pas de l’autorisation. L’API applique la règle. Le texte de l’utilisateur est une entrée non fiable : on valide les paramètres et on encode ce qui est renvoyé vers le canal.

Pour un bot public, modération, limites de débit et filtres empêchent une personne d’envoyer des milliers de variantes. Les réponses sensibles peuvent venir d’un catalogue approuvé plutôt que d’un apprentissage en ligne. Les nouvelles données sont examinées hors production avant d’entraîner une version.

Évaluer avant de laisser parler

Je construirais un jeu de tests avec demandes normales, fautes, ambiguïtés, insultes, secrets, tentatives d’injection et sujets hors périmètre. Les mesures incluent précision d’intention, taux de transfert, réponses interdites et réussite du parcours. Une note moyenne cache les cas dangereux.

L’état de conversation expire et reste minimal. Les logs masquent noms, numéros et jetons. Les opérateurs ont un accès audité. Un kill switch permet de désactiver une capacité ou le bot sans attendre un nouveau déploiement. En cas de dépendance indisponible, le bot dit ce qu’il ne peut pas faire et conserve au plus un brouillon.

L’apprentissage continu peut être une file de suggestions : conversation anonymisée, étiquette proposée, revue, nouvelle version, test puis déploiement graduel. Il ne devrait pas signifier que le prochain inconnu modifie directement le comportement.

Versionner aussi les règles de conversation

Une réponse dépend du modèle, des intentions, du catalogue et du code métier. J’associerais à chaque échange les versions de ces quatre éléments. Une nouvelle intention est déployée sur une fraction du trafic; le tableau compare transfert, échec et signalement avec l’ancienne. Si un incident survient, on désactive seulement cette capacité ou revient au paquet précédent sans effacer l’historique. Les conversations de test sont rejouées contre les deux versions, mais les données réelles sont masquées et limitées. Cette traçabilité permet de savoir si un dérapage de ce type vient d’un classificateur, d’une règle de réponse ou d’une source de contenu, plutôt que de parler vaguement du bot comme d’une seule personnalité.

Je lancerais un bot sur une fonction étroite, avec réponses et escalade observables. La personnalité peut rendre l’échange agréable; elle ne doit jamais cacher la confiance du modèle, la source de la donnée ou la possibilité de sortir.

Mise à jour de 2026

Tay a été un épisode très court. Twitter, le nom exact de la plateforme au moment des faits, est devenu X en juillet 2023. Remplacer le nom dans le récit historique serait donc anachronique.

L’entreprise date le lancement public de la marque X du 24 juillet 2023.