Tech

Des agents conversationnels performants grâce à AWS Sagemaker !

En tant qu’agence chatbot, nous accompagnons nos clients sur la mise en oeuvre de leurs agents conversationnels. Notre méthodologie de projets chatbot en 4 étapes est claire et a fait ses preuves, notamment grâce à l’apport de notre Chatbot Design Canva. Mais nous avons une particularité sur le marché. Nous maîtrisons à 100% la technologie que nous utilisons pour réaliser vos agents conversationnels, de notre propre chatbot builder à notre technologie de traitement du langage naturel (NLP / NLU) développée en interne. C’est de cette dernière brique nous allons parler dans cet article, car la plateforme de Like a Bot est mise à l’honneur par Amazon Web Services !

Une première version de notre plateforme d’agents conversationnels peu évolutive mais performante

Pour que les différents chatbots de nos clients soient capables de détecter les intentions de leurs utilisateurs en langage naturel, nous devons au préalable entrainer nos modèles NLP/NLU à reconnaitre ces différentes intentions.

Nous avions d'abord décidé d’entrainer ces modèles sur un serveur en local, pour ensuite les héberger sur une instance Amazon Elastic Compute Cloud (Amazon EC2). Cette solution était très simple d’utilisation, et convenait à nos besoins de l'époque.

Malheureusement, avec le nombre grandissant de clients et de messages à traiter, nous nous sommes rendus compte que cette solution n’allait pas être viable sur le long terme : nous avions de plus en plus de modèles à entrainer, les technologies NLP/NLU évoluaient, nous rencontrions des problèmes de scalabilité et des difficultés à intégrer facilement les dernières technologies et modèles comme BERT par exemple.

À tous ces éléments s’ajoutait un problème de transparence envers nos clients :

  • Il était impossible de rendre le processus de création, d'entraînement et d’amélioration continue du modèle transparent aux utilisateurs finaux, notamment pour améliorer les performances des chatbots,
  • Les rapports que nous faisions à nos clients au sujet de l’amélioration continue étaient à notre goût trop abstraits,
  • Il était difficile pour l'utilisateur de se rendre compte de l’impact de ses annotations sur les performances des modèles.

L’utilisation d’AWS Sagemaker pour faciliter l’amélioration continue de nos agents conversationnels

Pour toutes les raisons énoncées précédemment, nous avons donc décidé de faire évoluer notre infrastructure et de nous tourner vers une nouvelle technologie : Amazon SageMaker.

Les intérêts d’utiliser cette nouvelle technologie sont multiples :

  • Pouvoir déployer différents types de modèles tout en se préservant de devoir changer tout le code de l’environnement grâce à un container personnalisé,
  • Permettre à nos clients d'être encore plus inclus dans la phase d’amélioration continue grâce à l’automatisation de l’entraînement, l’amélioration continue via BatchTransform et les prédictions en temps réel.

agent-conversationnel-performant-grace-a-Amazon-Web-Service.png#asset:1820

Dès le lancement de notre chatbot builder, nous avions décidé d’inclure un module d’amélioration continue accessible à nos clients, divisé en deux parties :

  • La partie Teach : l'outil de création de labels et d’annotations sur des messages reçus sur les chatbots.
  • La partie Check : l’outil d’amélioration continue, de vérification des prédictions faites par les modèles.

Aujourd’hui, grâce à l’utilisation d’AWS Sagemaker, plus un utilisateur avance dans la phase d’amélioration continue, moins il aura de données à ajouter dans le module Teach.

Ce sont également les modèles observateurs, automatiquement orchestrés par Amazon SageMaker, qui recommandent des données susceptibles d’être des faux positifs depuis le module Check de notre chatbot builder.

La quantité de données à annoter se retrouve donc optimisée, tout en maximisant la qualité de l’annotation.

Like a Bot et AWS Sagemaker : le couple gagnant pour des agents conversationnels performants

Utiliser Amazon SageMaker, technologie innovante nous a permis de :

  • Diviser par 4 le temps de mise au point de modèles NLP/NLU en fluidifiant la phase d’annotation et d’allers-retours entre les différentes versions du modèle,
  • Faciliter les changements de technologies et de modèles, notamment pour se tenir à jour sur les dernières nouveautés dans le domaine du NLP/NLU,
  • Redéfinir des fonctionnalités pour les phases d’entraînement et validation afin de répondre aux besoins de nos clients,
  • D’améliorer beaucoup plus rapidement les performances de nos modèles,
  • Rester à la pointe des nouvelles technologies !

Ce dernier point est important pour nous, les nouvelles technologies nous permettant d’être plus performant et d'ainsi obtenir de meilleurs résultats de jour en jour.

Si vous voulez aller plus loin, n’hésitez pas à lire l’article d’Amazon Web Services à ce sujet !


Partager l’article : arrow_backAccueil du Blog