Services vocaux interactifs : sous le capot du callbot


  • Actualité

Publié par Hervé Gérard le 26 novembre 2020

Désormais appelés callbot, les services vocaux interactifs ont bien évolué. Fini les efforts mnémoniques pour presser la touche 1 du téléphone pour commander une Margherita, la touche 2 pour commander une quatre fromages… Maintenant, si vous souhaitez commander une pizza, vous pouvez dire tout simplement « je voudrais commander une pizza quatre fromages ». C’est plus simple pour l’utilisateur, mais beaucoup plus complexe pour la machine.

Pour comprendre la complexité de la machine, nous allons ouvrir le capot et décrypter pour vous les principaux systèmes du callbot.

Le callbot reprend les technologies conversationnelles Homme-machine conçues pour l’écrit et appelées chatbot. Le chatbot est la contraction de chat « discussion » et de bot  « robot ». En ajoutant la parole au chatbot et en le connectant à une ligne téléphonique, on obtient le callbot qui peut être traduit par  robot d’appel, c’est à dire un bon vieux SVI (ou IVR en anglais) mais avec du langage naturel.

Un schéma pour tout comprendre

Si on soulève le capot d’un callbot, on y trouve :

  • Un système téléphonique
  • Un système de reconnaissance de la parole ASR
  • Un système de synthèse de la parole TTS
  • Un système d’analyse du langage naturel NLU
  • Une application mettant œuvre un modèle conversationnel

Le schéma ci-dessous présente les différents systèmes qui composent le callbot.

Reconnaître n’importe quelle phrase, à tout moment

Le système télécom permet de récupérer la parole de l’appelant (qui peut être situé à des milliers de kilomètres) sous forme de flux audio temps réel et transmet ce flux au système ASR. Cela est possible grâce à la mise en relation d’un grand nombre systèmes télécoms qui communiquent entre eux et qui forment le réseau de téléphonie mondial (grande invention elle aussi !). Il y a une grande variété de systèmes télécoms que ce soit dans le domaine privé (entreprise) ou dans le domaine public (opérateur). Dans tous les cas, il faudra que le système télécom du callbot soit connecté au réseau de téléphonie. Ce genre de système peut être fournit par des fabricants spécialisés comme Cisco, Sangoma, Patton, Audiocode ou le français Cirpack.

Le système ASR a la tâche très difficile de convertir le flux audio, qui contient normalement la parole de l’appelant, en un texte. Au début, les systèmes ASR ne pouvaient reconnaître que des phrases ou des mots qu’on leur avait indiqués comme possibles. Ces grammaires permettaient de réduire le champ lexical au strict nécessaire et d’améliorer la qualité de la reconnaissance.

Désormais, les systèmes ASR peuvent retranscrire n’importe quelle phrase avec un taux d’erreur acceptable. Il y a peu de bons systèmes ASR car leur mise au point nécessite une quantité phénoménale d’exemples de phrases pour qu’ils soient performants. Citons le leader américain Nuance et les solutions hébergées dans le cloud notamment par Google et Amazon.

Comprendre les intentions de l’appelant

Le système NLU a une tâche qui peut apparaître plus simple car il s’agit de décoder les intentions de l’appelant à partir d’un texte. Dans la phrase « je veux commander une pizza quatre fromages », le NLU va déterminer les mêmes intentions que dans la phrase « s’il te plaît commande-moi une quatre fromages ». La phrase est différente mais l’intention est la même.

De plus, le NLU est capable de ressortir le type de pizza et de fournir à l’application des données structurées comme par exemple {action : ’commander’, type : ‘quatre formages’, quantité : 1}.  Pour cela, le NLU fait appel à des algorithmes de « deep learning », c’est-à-dire du domaine de l’IA.  Les données remontées à l’application sont encore aujourd’hui limitées à un schéma conversationnel prédéfini. Il y a plusieurs NLU sur le marché comme par exemple Dialogflow de Google et Lex de Amazon.

L’application comme chef d’orchestre

Pour que cela fonctionne, l’application doit indiquer au préalable au NLU les intentions et les entités qu’elle souhaite recevoir. Il s’agit d’une « application » ce qui signifie qu’il y a une part de spécifique. Chaque application est conçue pour répondre à un besoin précis comme la commande de pizza. Vous ne pourrez pas obtenir les horaires de séances de cinéma si l’application n’a pas été conçue pour cela. Concevoir et réaliser une application de callbot est du domaine des voice agencies comme Altervoice.

Pour terminer, l’application une fois qu’elle reçoit une intention du système NLU est en mesure de répondre à l’appelant. Pour cela, elle va rédiger une réponse écrite qui va inviter l’utilisateur, par exemple, à préciser s’il veut une boisson avec la pizza… Dans la réalité,  le plus compliqué est de gérer les erreurs et les cas non attendus par la machine. Le texte rédigé par l’application est envoyé au système TTS qui va lui-même le convertir en audio et le transmettre au système téléphone pour que l’appelant entende la réponse de la machine.

Et ainsi de suite, chaque cycle constitue un tour de parole.

Une même application, plusieurs cas d’usage

Les systèmes TTS sont assez nombreux mais ceux qui offrent une bonne qualité pour le français sont plus rares. Citons le leader Nuance mais aussi le Français : ACAPELA. Google et Amazon proposent aussi ces systèmes dans le cloud.

L’avantage de cette architecture modulaire est qu’elle permet de concevoir une même application pour plusieurs cas d’usages. Par exemple, la même application peut être disponible sous la forme d’une Action Google, d’une skill Alexa et donc disponible sur des enceintes connectées ou dans votre assistant vocal de votre véhicule ou encore sur des messageries Facebook, Skype, Slack…

Glossaire :

ASR (Automated Speech Recognition, de l’anglais Reconnaissance Vocale Automatisée) : Technologie qui permet à l’humain d’utiliser sa voix pour parler avec une interface informatique de façon à ce que, dans ses variations les plus sophistiquées, ceci ressemble à une conversation humaine normale.

NLU (Natural Language Understanding, de l’anglais Compréhension du Langage Naturel) : Sous-rubrique du traitement de la langue naturelle en intelligence artificielle qui traite de la compréhension en lecture automatique.

IA (Intelligence Artificielle, AI en anglais) : Ensemble des théories et des techniques mises en œuvre en vue de réaliser des machines capables de simuler l’intelligence.

TTS (Text To Speach, de l’anglais Synthèse Vocale) : Technique informatique de synthèse sonore qui permet de créer de la parole artificielle à partir de n’importe quel texte.

Deep Learning (de l’anglais, Apprentissage Profond) : Type d’intelligence artificielle dérivé du machine learning (apprentissage automatique) où la machine est capable d’apprendre par elle-même, contrairement à la programmation où elle se contente d’exécuter à la lettre des règles prédéterminées.

Voice Agency (de l’anglais, Agence Vocale) : Une voice agency accompagne les entreprises dans le développement d’assistants vocaux. La voice agency dispose en particulier de compétences dans la conception d’interfaces vocales (Voice UX), c’est-à-dire le voice design.

IVR (Interactive Voice Response, de l’anglais Serveur Vocal Interactif ou SVI) : Système informatique capable de dialoguer avec un utilisateur par téléphone.

Partager :

Ceci pourrait également vous intéresser