De communicatie met klanten of collega’s gaat steeds vaker digitaal. De kans is groot dat je voor een eenvoudige vraag de telefoon links laat liggen en op zoek gaat naar informatie via het web. Het zou nóg makkelijker zijn wanneer je in de hoek van je scherm een chatsymbool ziet staan en je via een chatbot direct antwoord krijgt op je vraag. Een chatbot heeft als hoofddoel om veelgestelde vragen op te vangen en de gebruiker ondersteuning te bieden op de website. Zowel voor de klant, collega en/of organisatie die de chatbot beheert, komt dit met veel voordelen. In deze blog leggen wij uit wat hier bij komt kijken.

Voor de ontwikkeling van een chatbot maken we gebruik van Azure Bot Services in combinatie met een QnA Maker. Deze laatste tool wordt gebruikt als ‘kennisbank’. Azure Bot Services wordt gebruikt om de chatbot in te hosten. Het ontwikkeltraject van een volledig functionerende chatbot, zoals beschreven in deze blog, beslaat 12 weken.

Bepaal de scope

Zodra een organisatie start met de ontwikkeling van een chatbot, zijn er een aantal vragen die centraal staan binnen het proces:

  • Hoe moet de chatbot overkomen op de gebruiker?
  • In welke mate speelt de kwaliteit van de antwoorden een rol?
  • Welke talen moet de chatbot herkennen?
  • In welke omgevingen moet de chatbot aanwezig zijn?
  • Wie wordt verantwoordelijk voor het onderhouden van de chatbot en de kennis hierin?

Binnen een organisatie moet de chatbot een verlengstuk zijn van de communicatie. Het is daarom belangrijk om na te denken over de juiste ”tone of voice”. Denk bijvoorbeeld aan professioneel, enthousiast of gevat. Deze communicatiestijlen kan je terugbrengen in het karakter van de chatbot.

Bouw een kennisbank op

Een chatbot beantwoord vragen 1-op-1. Dit betekent dat de chatbot voor ieder inkomend bericht een antwoord teruggeeft. Antwoorden op vragen worden alleen gegeven wanneer de chatbot een bepaalde zekerheid heeft over wat het juiste antwoord is. Hierdoor kan de chatbot, in het geval van onzekerheid over het beste antwoord, aangeven dat de vraag opnieuw geformuleerd moet worden. Bij herhaaldelijke twijfel over het juiste antwoord kan de chatbot een standaardbericht verzenden met bijvoorbeeld een doorverwijzing naar een contactnummer.

De vragen die een chatbot moet kunnen herkennen, en de bijbehorende antwoorden, dienen te worden gedocumenteerd in de QnA Maker. Dit is een database (kennisbank) waarin verschillende standaard vraag-antwoord combinaties kunnen worden toegevoegd en getest. Medewerkers van een organisatie kunnen hiermee te allen tijde zelf de kennis van de chatbot up-to-date houden. Het vullen van de kennisbank vereist toewijding. Zeker wanneer de diversiteit aan onderwerpen waarbinnen de chatbot vragen moet kunnen beantwoorden groot is. Belangrijk bij het vullen van de kennisbank: hoe meer alternatieven er van dezelfde vraag worden gedocumenteerd, hoe beter. De chatbot leert hierdoor de essentie van een vraag te achterhalen. Een ander belangrijk aspect betreft woorden die een dubbele betekenis hebben. Denk hierbij aan woorden als duur. Dit kan verwijzen naar zowel tijdsaanduiding als prijsaanduiding. “Wat is de duur van een rondleiding?” of “Hoe duur is een rondleiding?”. Dit zijn twee verschillende vragen, maar de opbouw en woordkeuze is nagenoeg hetzelfde. Het woord duur is erg belangrijk in deze zin en de dubbele betekenis kan zorgen voor onjuistheden in het antwoord. In dit geval is het van belang om zoveel mogelijk verschillende combinaties te maken van beide vraagstellingen zodat de chatbot hiervan kan leren.

Creëer dialogen

Voor de beheerder is het mogelijk om, naast de standaard vraag-antwoord combinaties, ook dialogen te creëren. Dialogen zijn logische vervolgstappen in een gesprek. Als de vraag wordt gesteld “Welke restaurants zijn er in het park?” kan het antwoord worden gevolgd met de vraag “Wil je het menu bekijken?”. Hierdoor kan worden ingespeeld op verwachte interesses van de gebruiker. Bij het gebruik van QnA Maker kan de beheerder toegang krijgen tot een eigen beheer portaal met de kennis uit de chatbot. Hierin kan zij businesskennis toevoegen en dialogen hierop aanpassen. Deze inhoudelijke kennis uit de organisatie is nodig om de chatbot tot een succes te maken.

Begeleid het actieve leerproces

De chatbot beschikt over een actieve leercurve. Dit is een manier (binnen het Azure platform) om een chatbot, door middel van input over tijd, slimmer te laten worden. Hierdoor worden steeds meer vragen herkent, en worden de gekozen antwoorden bij elke vraag beter. Dit gebeurt altijd onder toezicht van de beheerders. Zij kunnen voor iedere suggestie vanuit actief leren goedkeuring geven. Dit voorkomt bijvoorbeeld dat de chatbot vanuit zichzelf racistisch wordt. Het gebruik van actief leren zorgt er ook voor dat, in het geval van twijfel, een verduidelijkende vraag wordt gesteld met vraag-antwoord combinaties waar het over twijfelt. De keuze die door de gebruiker wordt gemaakt dient als feedback voor het leerproces.

Test de chatbot

Los van een duidelijke visie en inhoud is het belangrijk om de chatbot te testen en hier feedback op te ontvangen. De ervaring is dat testen cruciaal is om te achterhalen in hoeverre de chatbot voldoet aan de eisen en waar verbetering nodig is. Testen kan vanaf het moment dat er toegang is tot de QnA Maker en wordt gedurende het proces steeds uitgebreider mogelijk (via een HTML-snippet waarin bijvoorbeeld dingen als responstijd en een welkomstbericht ook om de hoek komen kijken).

Maak de chatbot beschikbaar

Er zijn verschillende mogelijkheden voor het integreren van de chatbot wanneer deze deployed is. Voorbeelden van kanalen die hiervoor gebruikt worden zijn Webchat, Directline API, Teams, Email en Facebook. In het grootste deel van de toepassingen is het gebruik van de Directline API aan te bevelen. Omdat dit een normale API is die POST en GET requests kan verwerken ontstaat de mogelijkheid om een eigen interface te maken voor de chatbot. De Webchat channel kan gecombineerd worden met de Directline API om gebruik te maken van een standaard interface die door Microsoft wordt aangeboden. De aanpassingsmogelijkheden via de Webchat zijn echter wel beperkt.

Analyseer de prestaties

Voor het analyseren van de prestaties kan gebruik gemaakt worden van de Chatlogs functionaliteit. Op basis van de gegevens in de Chatlogs kan een dashboard worden gemaakt waar real-time inzicht wordt verkregen in zaken als: vragen die veel en weinig gesteld worden, de zekerheid waarmee vragen beantwoord worden, gebruikersactiviteit over tijd, feedback die de chatbot ontvangt en fouten die zijn opgetreden.

Nieuwsgierig naar de mogelijkheden?

Worden er binnen jouw organisatie veel repeterende vragen afgehandeld? Ben je benieuwd welke data-gedreven oplossingen voor jou geschikt zijn? Neem vrijblijvend contact op om te onderzoeken hoe wij jouw data-gedreven doelstellingen kunnen verwezenlijken. Samen creëren wij de toekomst.