Histoire de chatbot : et si on en mettait un dans notre appli ?

Article rédigé par

YDU_Avatar
Youenn Duval

Directeur Technique

Être à la mode ?

Neobot… notre chatbot. C’est original non ? Pas le nom, l’usage de chatbot ! Quoi ? Non ? Pffff 😁

Bon effectivement c’est plutôt à la mode. Notez que ce n’est pas parce que c’est à la mode que c’est toujours utilisé de la bonne manière.

Beaucoup d’utilisateurs ont essuyé des pots cassés (ou payé des plâtres 🤨) avec ce genre d’outil (frustration utilisateur, faux résultats, incohérence des parcours, etc). Ces dernières années, on parle même de bot avec du Deep learning et autres IA modernes complexes. Les progrès sont assez incroyables, mais il semblerait qu’une fois ouvert à internet le risque de se retrouver avec un bot prônant les mêmes idées qu’un petit allemand énervé des années 30-40 soit non nul.

Bref.

Soyons honnête, nous sommes loin de faire du chatbot révolutionnaire et ce n’est pas notre intention. Nous cherchons à exploiter les forces du chatbot pour répondre à un besoin métier tout en limitant ses défauts (Oui je sais, je suis quelqu’un qui ose dire les choses avec force et courage !  😋 ).

1 – Pourquoi un chatbot ?

Dans notre cas, nous utilisons (comme d’autres) le chatbot comme première interaction entre un utilisateur et son support. Il est donc CRUCIAL de ne pas apporter de frustration supplémentaire à un utilisateur qui serait possiblement déjà excédé par sa situation.

Situation à éviter

« Oh diantre ! Un énième assistant virtuel générateur de billevesées et de tourments infinis ! »

Au premier abord, on pourrait pointer l’utilité d’un bot pour désengorger un centre d’appel. Que ce soit pour diminuer le nombre d’appels initiaux ou pour, comme le font certains opérateurs, essayer de vous pousser au maximum vers de la documentation plutôt que vers un humain. Alors oui, c’est tout à fait possible, mais ce n’est pas notre objectif.

Chez Neomanis, nous souhaitons raccourcir les temps de résolution résolvant les tickets en toute autonomie et si ce n’est pas possible, optimiser le temps de travail d’un technicien en automatisant au maximum les diagnostics initiaux. Pour gérer nos outils et lancer toutes les procédures de diagnostic et de remédiation nous avons besoin d’information. Certaines de ces informations sont parfois récupérables en autonomie, parfois seul l’utilisateur les connaît.

Problème ou demande ? Sur du matériel ? Une imprimante ? Laquelle ? etc.

Pour récupérer ces informations sans un humain aujourd’hui, vous avez des chances de finir avec un chatbot ! Oui, Akinator est passé de mode (si vous n’avez pas cette référence, c’est que j’ai raison ! 😂).

Akinator

2 - Comprendre et se faire comprendre

Règle numéro 1 d’un chatbot : L’expérience utilisateur.

Nous savons que certaines personnes apprécient, d’autres détestent et beaucoup se fichent de parler à un chatbot, mais dans tous les cas nous considérons qu’un échange avec le bot doit être le plus rapide et le plus limité possible.

Neobot

Notre stratégie est donc la suivante :

Si le début est forcément une question ouverte, nous privilégions au maximum l’usage des questions fermées (avec si possible des boutons cliquables). Cela se fait beaucoup et ce n’est pas pour rien.

Les questions ouvertes sont sujettes à beaucoup de faux positifs/négatifs. On parle généralement de détecter une « intention » dans un message. C’est souvent là qu’arrivent les IA plus complexes. On pourrait travailler par mots-clefs, mais ces derniers sont assez limités et pour un peu que vous gériez mal des fautes de frappe, l’expérience utilisateur peu vite dégénérer dans l’open space…

Situation à éviter

– j’ai un problème d’impromante.

– Je n’ai pas compris !

– J’ai une problème d’iprimante.

– Je n’ai pas compris !

– Imrpimante non de dieu !

– Je n’ai pas compris !

Il faut donc limiter les fois où le bot devra chercher une intention dans une phrase et privilégier un parcours métier clair avec des questions fermées.

Et les questions fermées justement ? Ça, c’est facile non ? Oui… Et non.

Quand vous élaborez les échanges d’un bot, vous avez tendance à vous adresser à vous-même et c’est souvent un problème. Quelques personnes peuvent vous relire, mais pour peu qu’ils aient les mêmes biais métiers que vous et vous ne verrez pas les problèmes survenir.

Exemple :

– Pouvez vous confirmer que ça refonctionne ?

– Oui je peux

– Super le problème est réglé !

– Attendez… confirmer je veux bien, mais comment je dois faire ?

Pour éviter ce genre de situation, chaque phrase doit être pensée pour éviter toute mauvaise compréhension quel que soit le contexte de lecture. Vous pouvez éventuellement soumettre les questions à des groupes de gens hors contexte (ex : FramaForm ou autre google form sont vos amis). Ou pratiquer une sorte d’équivalent du MonKey testing en développement, mais adapté à votre besoin.

Ou bien, répondre aux questions avec toute la mauvaise foi du monde, avec l’humour de jeux de mots d’un oncle éméché à un repas de Noël ! Le Drunken Oncle Testing ! (faut que je fasse une page Wikipédia là, je tiens un truc ! 😆)

– Tonton tu peux me passer l’eau s’il te plait ?

– Oui je peux !

– Heu… tu vas le faire ?

– Non ! Ahahahah.

Imaginez ensuite de faire tout ça dans plusieurs langues !

Si vous arrivez à manier correctement ces points, à trouver les bons équilibres, vous aurez créé un bot de qualité. Du moins, vous serez sur la bonne voie !

3 - Et si je veux m’y mettre ?

Ne pas partir de zéro !

Je peux vous conseiller des outils pour commencer à mettre le nez dedans (techniquement parlant). BotPress et Rasa sont deux outils bien aboutis et utilisés à grande échelle.

On trouve assez peu de ressource sur le sujet, mine de rien. Les documentations de ces deux outils sont bien faites et suffisantes pour en apprendre beaucoup sur le sujet.

Bonne chance ! 😉

Articles qui pourraient vous plaire

Suivez-nous sur les réseaux sociaux

Laisser un commentaire

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