Botfront

Le Botfront est une plateforme conversationnelle complète construite avec RASA comme Nlu engin. Du fait que cette plateforme repose sur RASA, il est nécessaire d’avoir une bonne connaissance de ce moteur NLU.
Le Botfront fournit des interfaces intuitives pour créer et gérer facilement des assistants virtuels, sans pour autant utiliser les fichiers yaml générés par RASA.
Dans ce blog, nous vous montrerons les différentes fonctionnalités de la plateforme. Nous mentionnerons également les perspectives soulignées par Baamtu, avant de vous faire part de notre ressenti sur cette plateforme.

 

 

Components

Les différents components dont nous traiterons sont les suivants :

  • Nlu
  • Stories et Rules
  • Incoming
  • Analytics
  • Responses

Nous parlerons également de la partie docker ainsi que de la gestion du fichier action.py

 

NLU Component

NLU COMPONENT
NLU COMPONENT

Comme nous l’avons mentionné, cette plateforme permet d’interagir facilement avec le bot. Il est donc naturel que des components relatifs aux “training data”, aux “responses” et aux “rules” & “stories” y figurent.
Le premier component dont nous parlerons consiste les training data et les intentions.
En effet, dans le component NLU, il est facile d’ajouter une intention ainsi qu’une entité relative à une intention.

NLU COMPONENT : Training Data
NLU COMPONENT : Training Data

Ce component offre également une vue plus détaillée des compétences du bot, en montrant par exemple le nombre de training data, le nombre d’intentions ainsi que d’autres statistiques comme le montre l’image ci-dessous.

NLU COMPONENT - Intent detection
NLU COMPONENT – Intent detection

Ci-dessus, un autre aspect du component, permettant l’évaluation d’une entrée par rapport aux différents trainings data inscrits.
Le botfront offre également une interface dynamique qui permet de discuter avec le bot. Ce qui change de rasa x, ou de rasa shell.

 

Stories & Rules component

Le component Stories and Rules permet de faciliter la gestion des différents scenarios auxquels le bot pourrait faire face.

Stories & Rules component
Stories & Rules component

Incoming component

Ce dernier permet d’avoir des statistiques par rapport aux conversations, en recensant les conversations, les formulaires sollicités ainsi que l’évaluation des différents inputs que le bot a eu à analyser.

Incoming component
Incoming component

 

Responses component

Ce component permet tout simplement la gestion des réponses du bot.

Responses component
Responses component

 

Docker and Settings

Il nous paraissait important d’écrire sur cette partie docker, qui reste très important pour le botfront , malgré le fait qu’il ne soit pas illustré dans cette plateforme. En effet, le botfront agit en simultané avec 5 images docker comme l’illustre la photo ci-dessous :
Une image pour le server RASA, une pour le fichier actions.py, une pour une le stockage dans une base mongo, une pour la librairie ducking et une pour la plateforme.

Docker & Settings
Docker & Settings

Le component settings permet la gestion des fichiers domain , endpoints et credential du bot, la gestion des imports et des exports du bot, ainsi que la maitrise de ses aspects git et de certains paramètres d’affichage de la plateforme.

Analytics component

Ce component vient compléter le component incomings , dans la traite d’informations sur les différentes conversations que le bot a eues avec ses différentes utilisations

Analytics component
Analytics component

 

Actions.py

Comme il l’est mentionne dans la documentation( https://botfront.io/docs/rasa/custom-actions ) le fichier actions.py, grâce à son image docker, agit directement avec le botfront . En effet, lors de l’initialisation d’un projet avec botfront init, un dossier d’actions est créé et le serveur d’actions est automatiquement lancé avec botfront up. Nous pouvons utiliser botfront watch pour reconstruire et redémarrer le serveur d’actions.

 

Perspectives

Apres exploration du code source du botfront , disponible en open source, Baamtu a soulevé 2 aspects importants :

  1. Les différents bots du server sont installés sur un server RASA. Ce qui peut problématique dans le cas où la plateforme devra faire avec une centaine de bot.
  2. Du fait que Facebook ait open sourcer l’API de WhatsApp, il est possible de déployer un bot sur WhatsApp sans pour autant passer par Twilio.

 

Malgré le fait que le bot ne soit plus maintenu depuis 2020, cette plateforme ne perd rien de son charme et de son élégance. Baamtu a aimé utiliser cette plateforme pour la gestion de ses différents chatbots et pense à améliorer cette plateforme pour qu’elle soit plus à l’air du temps.

Laisser un commentaire

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