DevelopmentBots bouwen met het Microsofts Bot Framework 2.0: Een toekomst met conversational AI

Sinds onze blog ‘Bots bouwen met het Microsoft Bot Framework‘ is er veel veranderd op het gebied van het ontwikkelen van bots met behulp van het Microsoft framework. Een bot is dan ook al lang niet meer per sé een Customer Service Assistent, waarbij de bot simpelweg alleen vragen beantwoordt. Microsoft heeft veel meer voor ogen met chatbots. Dit blijkt uit de verbeteringen in Versie 4 van het framework en het uit feit dat per 1 augustus 2019 versie 3 niet langer wordt ondersteund. Wellicht is het tijd voor een upgrade…? Maar wat kun je als bedrijf precies verwachten wanneer je dit besluit te doen?

Om dit uit te leggen maak ik binnen deze blog een kleine tussensprong om de aanvankelijke verschillen tussen versie 3 en versie 4 uit te leggen. Vervolgens ga ik in op wat de toekomst te bieden heeft. Voor u begint te lezen, is het verstandig de eerdergenoemde blog te lezen om een beeld te vormen over hoe een bot in elkaar zit.

Verschillen met de vorige versie van het Bot Framework

In de nieuwe versie van het Bot framework (versie 4) zijn er veel wijzigingen doorgevoerd ten aanzien van de opbouw, zoals te zien is in de afbeelding hieronder. Bot Framework

De grootste veranderingen hebben plaatsgevonden op het gebied van “states” – management, berichten verzenden en/of ontvangen en de opbouw van dialogen.

In versie 3 was het mogelijk om binnen een bot een “state” te onthouden. Met een “state” bedoelen we informatie van bijvoorbeeld het gesprek tussen een gebruiker en een bot die wordt opgeslagen. Doordat dit mogelijk was, kreeg je als het ware het gevoel dat de chatbot een “geheugen” heeft. Uit veiligheidsoverwegingen is dit mechanisme vervangen. In de laatste versie wordt informatie over gesprekken niet langer in-memory opgeslagen, maar wordt het persisteren van data in de Cloud middels CosmosDB erg gepromoot.

Verder is nu het bouwen van dialogen niet langer een onderdeel van de Bot Builder SDK, maar is dit een aparte package. In deze package zijn nieuwe gespecialiseerde dialogen opgenomen die gebruikers om specifieke input kunnen vragen. Hierbij valt te denken aan dialogen voor inloggen, het “sturen” van een rekening voor een besteld product of informatie die je normaal gesproken invult op een formulier. De kracht hiervan is dat gebruikers (nog) gerichter dan voorheen door een gesprek heen geleid kunnen worden. Door dit gegeven te combineren met betere ondersteuning voor databases, kan data simpeler worden gelogd. De informatie uit deze logs kan daarna worden gebruikt om meer inzicht te krijgen in de “gebruikersflow” door rapportages uit draaien of op te stellen omtrent de meest gestelde vragen aan de bot of de meest gezochte onderwerpen tijdens een chatsessie.

Een kijkje in de toekomst van bots…

Naast deze genoemde veranderingen, heeft Microsoft tijdens Build 2019 ook weer de nodige updates aangekondigd. Allereerst probeert Microsoft een grotere community aan developers te bereiken door meer ontwikkeltools aan te bieden, zoals de Bot Inspector. Iets dat daarnaast opvalt is dat Microsoft vol inzet op de groei naar nog slimmere bots door meer gespreksmogelijkheden te bieden en Artificial Intelligence (AI) te promoten.

De bot als menselijke gesprekspartner

Chatbots zijn nog te veel een gesprekspartner die Q&A doet, ofwel vraag en antwoord. Op het moment dat je tijdens gesprek over een ander onderwerp begint, kan hier niet op gereageerd worden door de bot. Dit maakt dat een gesprek minder “slim” aanvoelt en daarmee onnatuurlijker. Om dit probleem aan te pakken heeft Microsoft een “Adaptive dialog” ontwikkeld. Dit is een gespecialiseerde dialoog die erop gericht is om onverwachte wentelingen in een gesprek af te handelen middels AI. Verder is ook de Language Generation feature geïntroduceerd om meerdere antwoorden te formuleren voor een bot wanneer er iets gezegd wordt tijdens een conversatie met de gebruiker. Voor bedrijven die hun bot helemaal willen personaliseren is er ook nog de Personality Chat API, waarin het mogelijk is om uit zes persoonlijkheden te kiezen voor een chatbot. Zo kan een bot dus bijvoorbeeld heel brutaal of juist heel beleefd reageren.

Geheugen 2.0

Zoals eerder beschreven bestond het “geheugen” van chatbots die ontwikkeld waren in versie 3 vooral uit het onthouden van gesprekken. De aangekondigde “skills”- feature brengt hier verandering in. Een skill is een extra taak die kan worden ingeplugd in de bot. Hierbij valt te denken aan het bij houden van je agenda, het onthouden van plaatsen die door de gebruiker als interessant worden gekenmerkt, het verzenden van e-mails naar zakelijke contacten of iets simpels als todo’s. Verder is het ook mogelijk om je eigen custom taken in te pluggen.

Developers feestje

Als laatste mag je ook spreken van een “developer feestje”. Microsoft zet in op de groei van het vertrouwen in het Bot framework als product door ontwikkelaars meer ondersteuning te bieden. Zo is de mogelijkheid om verschillende kanalen te kunnen testen verbeterd door het toevoegen van een extra feature in de vorm van de Bot Inspector in de Emulator. Middels één programma kan worden onderzocht of de gevraagde features (van de klant) door alle channels ondersteund worden.

Conclusie

De moraal van dit verhaal is dat met de integratie van AI chatbots veel meer kunnen zijn dan alleen een Customer Service Assistent, waarbij vragen worden beantwoord door de Bot. Ze kunnen zo aan de slag als virtuele verkoper. Ze kunnen de voorraad van uw producten bijhouden en tijdens de chatconversatie de gebruiker producten suggereren om te aan te schaffen. Middels de sentiment analysis skill, een functionaliteit die wordt aangeboden in AI-dienst van Microsoft, kan de bot analyseren hoe graag iemand een product wil op basis van wat deze persoon typt.

Een ander voorbeeld waaraan gedacht kan worden is het screenen van sollicitanten binnen uw bedrijf wanneer u te maken heeft met een grote pool aan kandidaten. Een bot kan de content van de diverse CV’s scannen op basis van door u ingegeven criteria. Vervolgens kan deze met behulp van Cognitive Services de kandidaten eruit filteren die het best bij het bedrijf zouden passen. Kortom: “De sky is the limit”.

Mocht u naar aanleiding van deze blog benieuwd zijn naar verdere mogelijkheden van het Bot Framework voor uw business case? Neem dan contact met mij op via gideonk@delta-n.nl.

Gideon Kuijpers – Software Developer