Chatbots en SAP Conversational Artificial Intelligence

Menselijke conversatie met uw SAP systeem toekomstmuziek? Nee hoor, chatbots en SAP Conversational AI maken dit nu al mogelijk!

Begin 2018 kondigde SAP de overname van Recast.AI aan. Hierdoor is SAP in staat een platform aan te bieden, waarmee applicaties en software ontwikkeld kan worden. Het platform maakt gebruik van “Natural Language Processing” (NLP) en Machine Learning (ML) om natuurlijke taal te begrijpen. SAP biedt deze technologie aan onder de noemer SAP Conversational AI (CAI) en de meest aansprekende toepassing is het ontwikkelen van zogenaamde chatbots.

Wat is een chatbot?

Een chatbot is een software applicatie welke een gesprek aan kan gaan met een natuurlijk persoon, zoals een medewerker, klant of leverancier van een bedrijf. Doordat de chatbot natuurlijke taal kan “verstaan” en interpreteren, kan de chatbot antwoord geven op opmerkingen en vragen die aan de chatbot gesteld worden. De chatbot kan reageren op simpele begroetingen zoals “Hoi hoe gaat het met je?”, maar ook op complexere vragen zoals “Hoeveel verlofdagen heb ik nog beschikbaar voor dit jaar?”. Voor de laatste vraag zal er middels services de data uit een achterliggend systeem zoals SAP ECC of SAP S4/HANA aangesproken moeten worden.

Waarom een chatbot?

Een chatbot is zeer geschikt om delen van bedrijfsprocessen te automatiseren zoals bijvoorbeeld het verbeteren van support aan leveranciers, klanten en medewerkers. Denk hierbij aan een helpdesk binnen bedrijven, waarbij veel voorkomende vragen automatisch door de chatbot beantwoord kunnen worden. Hierdoor kunnen medewerkers van een helpdesk zich focussen op de meer waardevolle en betekenisvolle interacties met de klant.  Naast informatieverstrekking kan een chatbot ook relatief eenvoudige taken uitvoeren voor een medewerker, zonder dat de medewerker kennis hoeft te hebben van de applicatie die daar normaliter voor gebruikt wordt. Voorbeelden zijn het aanmaken van een bestelling, het aanvragen van verlof of creëren van een vacature.

Een chatbot is hierdoor niet alleen een middel om de servicegraad richting interne en externe stakeholders te vergroten, het maakt hen ook minder afhankelijk van de beschikbaarheid van uw (support) medewerkers. Per saldo zorgt dit voor een positieve invloed op de tevredenheid en productiviteit.            

Maken van een chatbot m.b.v. SAP CAI Platform

Het SAP Conversational AI platform biedt een ontwikkelomgeving waarin snel en eenvoudig een chatbot opgezet kan worden. De ontwikkelde chatbot kan richting diverse kanalen ontsloten worden.

Het SAP CAI platform kan onderverdeeld worden in 4 globale secties:

 

SAP CAI Platform

 

Bot Training

Middels Bot Training wordt de chatbot geleerd menselijke taal te begrijpen. Wanneer je bijvoorbeeld een chatbot gaat maken die onder andere verlofsaldo kan teruggeven, dan zal je de chatbot moeten trainen zodat deze begrijpt wanneer je vraagt naar je verlofsaldo. Je dient hierbij de chatbot initieel te voeden met bepaalde zinsneden die gekoppeld worden aan dit zogenaamde intent: “Kan je mijn verlofsaldo tonen?”, “Ik wil een aantal dagen vrij, kan dat?”, “Hoeveel dagen heb ik nog?”. Met een aantal zinnen heeft je chatbot al in de gaten wanneer je bijvoorbeeld vraagt “Hoeveel verlof heb ik?”, dat je naar het intent “Verlof” doorverwezen moet worden. Middels testen kom je er achter welke zinnen niet herkend worden en kan je deze weer toewijzen aan je intent, zodat je chatbot steeds “slimmer” wordt.

Voorbeeld chatbot training

Naast intents, zijn er ook zogenaamde entiteiten beschikbaar. Dit zijn sleutelwoorden welke herkend worden uit expressies. Automatisch worden er 28 standaard “gold” entiteiten herkend door SAP CAI, zoals locatie, datum, tijd, taal, nummer. De gold entiteiten kunnen aangevuld worden met custom entiteiten benodigd voor het specifieke scenario waarvoor de chatbot is bedoeld:

Als er bijvoorbeeld de plaats Amsterdam genoemd wordt in een zin, dan herkend SAP CAI dit automatisch als de gold entiteit “Location” en zal dit vullen met details rondom de locatie Amsterdam. Deze details zijn vervolgens beschikbaar voor gebruik in het vervolg van de conversatie. Een chatbot die het weerbericht moet tonen, dient uiteraard te weten voor welke plaats dit gedaan moet worden. De entiteit “Location” is hiervoor uitermate geschikt, om bijvoorbeeld een webservice van weeronline.nl aan te roepen.

Entiteiten in SAP CAI

Naast de standaard entiteiten is het ook mogelijk om eigen custom entiteiten aan te maken zoals het herkennen van een factuurnummer. Deze entiteit kan weer gebruikt worden om bijvoorbeeld factuurdetails op te halen uit een SAP backend systeem en deze terug te geven aan de gebruiker.

Bot Builder

Met de Bot Builder kan een conversatie flow opgesteld worden en kan logica ingebouwd worden om de chatbot bepaalde onderwerpen te herkennen en hierop gericht antwoord te geven, al dan niet middels een aanroep naar een backend systeem. De logica van de chatbot wordt in een of meerdere skills opgenomen. In bijgaande printscreen is een voorbeeld van alle skills binnen een specifieke chatbot.

Bot Builder met overzicht van alle skills

In de Bot Builder worden skills gecreëerd welke geactiveerd kunnen worden middels het optreden van een intent of entiteit. Iemand zegt “Hallo!”, waarmee het intent “@Greetings” wordt getriggerd. Het intent “@Greetings” is vervolgens als voorwaarde opgenomen in de skillgreetings”. Een skill zal uiteindelijk leiden tot een of meerdere acties, zoals bijvoorbeeld het opzoeken van informatie in een SAP backend systeem of het antwoord geven richting de gebruiker. Een actie van de skill greetings” kan bijvoorbeeld zijn het antwoord geven richting de gebruiker: “Hallo, kan ik je ergens mee helpen?”. Een skill kan ook het aanroepen van een andere skill als actie hebben. In bijgaande printscreen is dit zichtbaar middels de weergegeven lijntjes tussen de skills.

 

Skills in Bot Builder

 

Bot Connector

De chatbot kan ontsloten worden naar meerdere kanalen. Er is eenvoudige integratie mogelijk met veel voorkomende kanalen zoals Skype of Twitter. Daarnaast is het altijd mogelijk om de chatbot op te nemen in je eigen custom applicatie binnen bijvoorbeeld de bedrijfswebsite.

 

Communicatie kanalen

 

Bot Analytics

Het SAP CAI platform biedt de mogelijkheid om de chatbot te trainen en te monitoren, waardoor de chatbot continue verbeterd kan worden. Alle gesprekken met de chatbot worden gelogd en kunnen worden teruggekeken binnen de analytics functie. Zinnen welke bijvoorbeeld niet (goed) herkend zijn, kunnen middels de analytics functie toegewezen worden aan de juiste intents. Daarnaast zijn diverse verslagen beschikbaar om bijvoorbeeld gegevens omtrent gebruik inzichtelijk te krijgen.

 

Monitor functie SAP CAI

 

Architectuur

Architectuur met SAP landschap

In de Bot Builder wordt de chatbot vorm gegeven. Hierin wordt de chatbot getraind, ontwikkeld en gemonitord. Wanneer we kijken naar de componenten in een SAP Landschap dan ziet de totale architectuur uit zoals weergegeven in bijgaande figuur.

Middels verschillende kanalen wordt kan de chatbot benaderd worden via de Bot Connector. De functionaliteit van de Bot Connector zorgt ervoor dat de chatbot maar één keer ontwikkeld hoeft te worden en vervolgens ontsloten kan worden naar meerdere kanalen.

SAP Conversational AI draait in een productief scenario op het SAP Cloud Platform. Via het SAP Cloud Platform kunnen middels zogenaamde webhooks and API’s achterliggende systemen benaderd worden. Dit zouden SAP S/4HANA of SAP ECC Business Suite systemen kunnen zijn, welke bijvoorbeeld via OData services middels een SAP NetWeaver Gateway systeem benaderd kunnen worden. Daarnaast is het ook mogelijk om webservices beschikbaar via derden te benaderen, zoals eerdergenoemde webservice van weeronline.nl.

Het SAP Cloud Platform kan worden gekoppeld aan de Corporate Identity Provider van het bedrijf, waardoor medewerkers zich eenmalig hoeven te authentiseren, waarna vervolgens middels single sign on (SSO) achterliggende SAP systemen benaderd kunnen worden zonder opnieuw te hoeven aanloggen.

Ontsluiting chatbot naar eindgebruiker

Wanneer de chatbot gereed is dient deze ontsloten te worden richting de eindgebruiker. Afhankelijk van het scenario, dient deze op een of meerdere kanalen beschikbaar gemaakt te worden. Zoals reeds vermeld heeft SAP Conversational AI een aantal kanalen standaard beschikbaar om eenvoudig te koppelen met de ontwikkelde chatbot. Daarnaast is het altijd mogelijk om de chatbot middels custom applicaties zelf te ontsluiten naar ieder gewenst platform.

Hieronder worden de verschillende mogelijkheden voor ontsluiting naar eindgebruiker opgesomd.

SAP Fiori Launchpad, SAP Digital Assistant & Telegram

De chatbot kan eenvoudig middels een Fiori Launchpad plugin opgenomen worden in de SAP Fiori Launchpad.

SAP Digital Assistant (voorheen SAP CoPilot) is zeer geschikt om te koppelen met de chatbot ontwikkeld in SAP Converstational AI. Binnen Fiori 3.0 is de Digital Assistant standaard onderdeel van de SAP Fiori Launchpad en kan hiermee context gerelateerde vragen beantwoorden. Wanneer je bijvoorbeeld een Fiori app opent voor het goedkeuren van inkooporders en je toont een specifieke inkooporder, dan is deze “context” beschikbaar voor de SAP Digital Assistant. Wanneer je een vraag stelt over een inkooporder, dan “weet” de SAP Digital Assistant dat je de geopende inkooporder

Telegram is een instant messaging platform waarmee standaard een koppeling mogelijk is vanuit het SAP Conversational AI platform. Hiermee is de chatbot benaderbaar via de Telegram app op bijvoorbeeld je telefoon of tablet.

SAP Fiori Launchpad met chatbot

SAP Digital Assistant

Telegram met P2P chatbot

Concrete use case: Purchase-2-Pay (P2P) chatbot

Zoals vermeld is een chatbot uitermate geschikt om onder andere helpdeskmedewerkers te ondersteunen in het beantwoorden van vragen. Een voorbeeld is het Purchase-2-Pay proces (P2P), waarin diverse scenario’s aanwezig zijn waar een chatbot uitkomst kan bieden. Het gaat hier om bijvoorbeeld het beantwoorden van goedkeuring statussen op inkooporders, de ontvangen facturatie ten opzichte van een inkooporder, of de betaalstatus van een factuur.

Binnen het P2P proces heeft Avelon een chatbot ontwikkeld, welke vragen kan beantwoorden omtrent:

  • Header en regel informatie van een inkooporder

  • Inkooporders van een specifieke leverancier

  • Goedkeuring status van een inkooporder

  • Facturen ontvangen op een inkooporder

  • Betaalstatus van een specifieke factuur

De chatbot kan hiermee een groot aantal vragen beantwoorden welke normaliter bij medewerkers van de finance- of inkoopafdeling terecht zouden komen. Denk hierbij aan vragen als:

  • Ik heb een aantal dagen geleden 5 laptops aangevraagd, wat is de status van deze bestelling?

  • Hoeveel is er gefactureerd op bestelling 4500091234?

  • Bij wie ligt deze inkooporder ter goedkeuring?

  • Wat is de status van deze factuur?

Deze chatbot is geïntegreerd in de SAP Fiori Launchpad. Onderstaand filmpje geeft een impressie van een aantal conversaties tussen een medewerker en de P2P chatbot.

 
 

Conclusie

Middels het SAP Conversational AI platform kunnen snel en eenvoudig chatbots ontwikkeld worden en middels de diverse standaard kanalen direct ontsloten worden richting de eindgebruiker. Daarnaast biedt SAP CAI middels webhooks en API’s de mogelijkheid om informatie uit externe systemen te gebruiken in de conversatie tussen de chatbot en de eindgebruiker. Door middel van training wordt de chatbot uiteindelijk steeds “slimmer” en geavanceerder wat weer ten goede komt aan de gebruikerservaring van de chabot. Door middel van de eenvoud van ontwikkeling kunnen meerdere processen binnen uw bedrijf snel en simpel ondersteund worden met een chatbot. Standaard vragen en verzoeken kunnen afgehandeld worden door de chatbot, waardoor uw medewerkers zich kunnen focussen op de complexere vraagstukken en procesmaterie.

Deze blog wordt vervolgd met een blog welke dieper ingaat op de technische aspecten van een chatbot: Een technische deep dive in de wereld van chatbots.

Voor vragen of informatie over de toepassingsmogelijkheden van chatbots binnen uw organisatie of voor vragen op het gebied van SAP Workflow, Fiori, SAP Invoice Management (SIM) of SAP Master Data Governance (MDG) kunt u contact opnemen met Victor van den Hazelkamp.



Gerelateerde posts