Oefening: Maak je eigen chatbot!... zonder te coderen 😎
In het boek besteden we in hoofdstuk 5 uitgebreid aandacht aan chatbots omdat het een goede toepassing is van AI waar je nu direct al mee aan de slag kunt.
Om je een idee te geven bij wat er komt kijken hoe je een chatbot bouwt hebben we een oefening samengesteld die je zonder coderen of kennis van programmeren zelf uit kunt voeren.
Volg onderstaande beschrijving met daarin stap voor stap het maken van een chatbot.
Je maakt gebruik van de visuele chatbotmaker van Flow.ai, een chatbotbedrijf uit Nederland, en je kunt deze oefening doen zonder te coderen 😎
Je gaat een chatbot maken die vragen kan beantwoorden aan de klantenservice van een bedrijf. We starten eenvoudig met het maken van een chatbot die veelgestelde vragen kan beantwoorden. Je leert wat er komt kijken bij het opzetten van een dialoog, het herkennen van de vraag en het trainen van de chatbot zodat de juiste antwoorden worden gegeven.
Veel plezier!

Stap 1: Registreer je bij flow.ai
Om de oefening te kunnen doen heb je een account nodig bij flow.ai. Het gebruik van het account voor deze oefening is gratis.
Ga naar flow.ai, registreer je via de optie "Start for free" en maak vervolgens de gegevens compleet.



Stap 2: Kies een template
Flow.ai beschikt standaard over templates voor de meest voorkomende scenarios. Bijvoorbeeld voor het beantwoorden van veelgestelde vragen, of voor het chatten met een klantenservice chatbot.
Kies hier voor het template "Customer Service"

Let op! Als je het template gekozen hebt, klik dan links boven in het menu op "Flows". Dan zie je de standaard flow die je gekozen hebt voor je chatbot.
Stap 3: Start met verkennen van de chatbot
Nadat je het template hebt gekozen zie je het standaardscherm met alle opties die je kunt inzetten in de chatbot. Links zie je het menu (Je werkt in het onderdeel "Flows" om de stappen in een dialoog te ontwerpen (om acties uit te voeren, en antwoorden te geven (in de vorm van tekst, beeld of anders). In het midden zie je de flow (het canvas) waar je aan werkt, en rechts het palet met acties die je op canvas in een flow kunt slepen.
Als het goed is is je scherm vergelijkbaar met onderstaande schermafdruk.

- Het testen van de chatbot
Je kunt op ieder moment de chatbot testen via de optie "Try it out" midden bovenin het scherm en vervolgens een vraag te stellen (standaard nog wel in het Engels, maar een Nederlandstalige flow is ook te maken). Omdat we een template hebben gekozen weet jouw chatbot al basiszaken die vraag aan een klantenservice chatbot worden gesteld. Bijvoorbeeld over openingstijden of adresgegevens.
Het template bevat dus al voorgetrainde intents, vragen, antwoorden en onderwerpen die herkent worden.
In het chatbot testscherm zie je rechts nog wat de chatbot herkent en hoe zeker het daarvan is (het percentage achter 'Hi' geeft aan dat het vrijwel zeker om een begroeting gaat.


- Nederlandse "hersenen" toevoegen
De chatbot is standaard in het engels (het heeft een engelstalig "brein"), maar kan ook voorzien worden van een nederlandstalig "brein". Je kunt dit doen via de optie "Project Settings" in het menu onder het kopje "Brains". Hiermee breidt je de ondersteuning en herkenning van talen door de chatbot uit naar andere talen.
Hoeft niet voor de oefening, maar als je de chatbot nederlands wil laten begrijpen is dit wel handig.

Stap 4: Het uitbreiden van de chatbot
- Het uitbreiden van de dialoog
Het uitbreiden van de verschillende dialogen (flows) kan visueel door triggers (vragen) en replies (antwoorden) in de bestaande dialoog te slepen.
Je kunt zo de dialoog verrijken met informatie of bijvoorbeeld wedervragen stellen om meer context te krijgen binnen een chat (dit noemt men bij chatbots form-filling of slot-filling). Met de extra informatie uit de wedervragen is de chatbot in staat om betere antwoorden te geven of acties uit te voeren. Denk aan een flow waar je op zoek bent naar een leuke vakantiebestemming, hier geef je je voorkeuren als datum, zon/sneeuw etc op. Dit kun je vaak in 1 keer opgeven in 1 zin, maar het kan dus ook zijn dat de chatbot dit uit gaat vragen aan de gebruiker.
Breid de flow uit naar eigen inzicht, zie onderstaande schermafbeeldingen voor een simpel voorbeeld.
Let op: Vergeet niet op "Save" te drukken na iedere wijziging voordat je de chatbot wilt testen

De aanpassingen zichtbaar bij het testen van de chatbot

- Intenties (intents) en voorbeeldvragen toevoegen
Omdat een chatbot antwoord moet geven op vragen van gebruikers, is de eerste stap: wat willen de gebruikers eigenlijk bereiken met de vragen die zij aan de chatbot stellen, dus wat zijn hun intenties?
Als je mogelijke intenties hebt bedacht, verzin je vervolgens bij iedere intentie een voorbeeldzin en/of kenmerkende woorden. Het gaat dan om zinnen en woorden waarvan je verwacht dat de gebruiker die zal bezigen als hij een vraag formuleert rond de intentie die hij heeft.
Hiermee train je de chatbot om de intentie van een vraag te herkennen om uiteindelijk op basis van een intentie een actie te laten uitvoeren (bijvoorbeeld het beantwoorden van het vraag, het opzoeken van informatie of het uitvoeren van een actie or transactie)
In de flow.ai chatbot gaan we een nieuwe intentie en voorbeeldvragen toevoegen, zodat we vragen over retouren kunnen beantwoorden.
Ga hiervoor in het menu naar de optie "Intent Library". Hier vind je bestaande intenties en hun voorbeeldvragen, je kunt hier ook nieuwe intenties aanmaken.
Maak een nieuwe intent aan genaamd "Service Returns" en voeg een aantal voorbeeldvragen toe die een klant zou kunnen stellen met een vraag rondom het terugsturen van bestelde producten.
Let op: Voeg minimaal 5 voorbeeldvragen toe zodat de chatbot getraind kan worden.
Zie onderstaande schermafbeeldingen voor een voorbeeld.

De nieuwe intentie met voorbeeldvragen:

- Nieuwe intent toevoegen aan de dialoog
Onze nieuwe intentie moeten we toevoegen aan een flow om hem ook te kunnen herkennen in een gesprek.
Kies daarvoor in het menu de optie "Flows" en kies druk op + om een nieuwe flow toe te voegen.

Sleep vanuit het tabje "Intents" de intent die je net gemaakt hebt naar het canvas.

We kunnen voor nu een simpel antwoord geven door uit de list met triggers de text trigger te slepen en een standaard antwoord in te vullen. Dit geeft voor nu beeld hoe je de chatbot kunt uitbreiden met het herkennen en beantwoorden van nieuwe vragen en onderwerpen.
Je bent vrij om te spelen met de andere opties om je eigen chatbot meer mogelijkheden te geven.

- Entiteiten toevoegen
In ons voorbeeld van de klantenservice chatbot is het handig wanneer de bot ook kan herkennen om welk product het gaat wanneer een gebruiker dat in zijn chat aangeeft. Hiervoor kunnen we zogenaamde entiteiten aanmaken en trainen. We kunnen bij de voorbeeldvragen die we hebben opgegeven de producten markeren en aan een bestaande entiteit toewijzen (of een nieuwe entiteit met voorbeelden toevoegen).
Voeg zelf een entiteit toe en markeer deze in een aantal voorbeeldvragen, volgens onderstaande voorbeelden.

Het toevoegen van een nieuwe entiteit en het geven van voorbeelden per entiteit:

Het markeren van een entiteit in voorbeeldvragen:

Na het opslaan en trainen van de chatbot is het in staat om producten te herkennen binnen een vraag.
Hier kun je specifiekere antwoorden op geven, in het geval dat bijvoorbeeld de retour voorwaarden voor een pizza anders is dan het terugsturen van een bestelde stoel.
In onderstaande schermafbeelding zie je dat de chatbot in een vraag nu het product waar het over gaat kan herkennen. Je kunt dit op dezelfde manier toepassen voor vele andere constructies, bijvoorbeeld het herkennen van een ordernummer, of een klantnaam of klantnummer.

Stap 5: Het "live" zetten van de chatbot
Nu je een beginnetje hebt gemaakt met een chatbot, zou al een testversie live kunnen zetten.
Flow.ai heeft opties om te integreren met onder andere Alexa, Facebook Messenger, of een Widget voor op een website.
Onder het menu item "Integrations" vind je de verschillende opties en deze zijn hier eenvoudig te koppelen.
Let op: Doe dit alleen wanneer je een betaald account hebt of wilt afnemen bij flow.ai

Met een korte uitleg over hoe je de chatbot live kunt zetten beëindigen we deze oefening.
We hopen je hiermee en beeld te hebben gegeven van hoe het maken van een chatbot in zijn werk gaat als aanvulling op hoofdstuk 5 uit het boek.
Maak jouw eigen website met JouwWeb