Startersgids

Wil je meteen aan de slag met Oswald? Volg dan deze startersgids stap voor stap.

Stappenplan

Elke Oswald functionaliteit wordt in het oranje weergegeven en kort uitgelegd. Als je toch liever een uitgebreidere uitleg wenst over een bepaald functionaliteit kan je erop klikken om de volledige pagina te bekijken.

Hier krijg je alvast een kort overzicht van de stappen die zullen worden besproken in deze gids:

  1. Denk na over wat de functie van je bot zal inhouden. Welke vragen moet het kunnen beantwoorden? Op welke sociale media, website of klantendienst platform zal de chatbot weergeven worden?

  2. Start met je aan te melden of een account aan te maken op app.oswald.ai. Klik op de organisatie waar je toegang tot hebt en selecteer je chatbot of maak er een nieuwe aan (indien je de juiste rechten bezit).

  3. Wanneer je klikt op de chatbot, kom je uit bij de Instellingen pagina.

  4. Maak minstens twee Intenties aan met elk minstens 4 trainingszinnen.

  5. Maak indien nodig entiteiten aan.

  6. Test je intenties in de Train interface en kijk of de bot ze al goed kan herkennen. Pas aan waar nodig.

  7. Maak een scenario aan.

  8. Test de flow van je scenario’s en maak tests aan.

  9. Raadpleeg de NLP-matrix en train je bot bij.

  10. Je kan de Oswald widget en alle andere integraties aanpassen in de Integraties interface.

  11. Exporteer je chatbot en sla dit bestand op.

  12. Publiceer je chatbot.

  13. Test je chatbot volledig.

  14. Zet je bot live.

  15. Blijf je bot bijtrainen.

Stap 1: De functie en vorm van je chatbot.

Voor je een chatbot begint te bouwen, moet je goed nadenken over welke functie hij of zij zal vervullen. Hier spelen de persoonlijkheid, tone of voice en de integratie keuzes voor je bot een grote rol.

Ben je op zoek naar een formele customer support bot, of eerder een informele en joviale verkopersbot met een grappige persoonlijkheid? De manier waarop je de gebruiker aanspreekt hangt hier sterk van af. Consistentie in je taalgebruik is daarbij belangrijk om de gebruiker niet te verwarren. Ontwerp dus een persoonlijkheid voor je bot met regels rond de aanspreking van de gebruiker die overeenkomt met de professionele marketing van je bedrijf. Hieronder vind je een voorbeeld om je op weg te helpen:

Persoonlijkheid van je bot opbouwen

Wil je bovendien dat de bot op andere platformen beschikbaar is zoals Facebook Messenger en WhatsApp? Vooral deze keuze zal veel invloed hebben op de opbouw van je chatbot, aangezien andere platformen hun eigen regels hebben i.v.m. de inhoud en chatbot functionaliteiten. Raadpleeg de Facebook for Developers en WhatsApp Business API documentatie voor een overzicht van de regels en limitaties.

Stap 2: Maak een account en een chatbot aan.

Surf naar app.oswald.ai en maak een account aan bij “Don’t have an account yet?”. Zorg dat je werkt met Google Chrome, Mozilla Firefox of Apple Safari. Deze browsers worden volledig ondersteund voor Oswald.

Wanneer je dan inlogt via “Sign in here!” kom je terecht bij de organisaties waar jij toegang tot hebt. Klik op een organisatie om je chatbot(s) te zien. Selecteer je chatbot door erop te klikken of maak er een nieuwe aan.

Contacteer ons via de servicedesk als je geen organisaties ziet verschijnen bij het inloggen. Heb je nog geen toegang tot de servicedesk? Dan kan je mailen naar [email protected]

Stap 3: Je komt terecht in de Instellingen van je chatbot.

Wanneer je een chatbot selecteert kom je altijd uit op de Instellingen pagina. Raadpleeg de Instellingen pagina voor meer uitleg over alle parameters.

Instellingen

Hier heb je alvast een kort overzicht:

  • Titel: De titel van je chatbot. Dit is niet de naam van je bot en verschijnt niet in je widget.

  • Start*: Het bericht dat je chatbot laat zien wanneer de gebruiker de widget het eerst opent.

  • Niet begrepen*: Het bericht dat je chatbot laat zien wanneer hij de gebruiker niet heeft begrepen.

  • Foutboodschap*: Het bericht dat je chatbot laat zien wanneer er een fout is opgetreden.

  • Bericht na tijd*: Wanneer de gebruiker een tijdje niet reageert, zal de chatbot automatisch een bericht tonen. Dit is handig om de gebruiker verder op weg te helpen.

  • Drempelwaarde: Dit getal representeert hoe zeker Oswald moet zijn van een intentiescore om een antwoord te selecteren. Hoe hoger deze waarde, hoe strenger de bot en hoe zekerder Oswald moet zijn van het antwoord vooraleer hij die effectief zal selecteren en laat zien. Indien je het gevoel hebt dat de chatbot vaak verkeerde antwoorden geeft is het misschien nuttig om deze waarde hoger te zetten.

  • Levensduur context: Soms wil je dat de gebruiker na bijvoorbeeld een uur het gesprek weer kan oppikken in hetzelfde chatvenster, andere keren wil je dat het gesprek terug van het begin start. De Levensduur context functionaliteit stelt het aantal minuten in dat de context van de conversatie moet bewaard blijven. Wanneer deze waarde op 0 staat, wordt deze oneindig bijgehouden.

  • Ondersteunde talen: Alle talen die worden ondersteund door de bot.

  • Standaard language: De bot zal standaard naar deze taal overschakelen wanneer er geen informatie beschikbaar is over in welke taal de gebruiker hanteert.

  • Omgevingsvariabelen: Deze variabelen (in JSON-formaat) kan je overal in de bot gebruiken in code responses.

*Bij deze parameters kan je een command activeren. Dit betekent dat je de tekst in dit veld op de achtergrond (dus niet zichtbaar voor de gebruiker) naar de bot stuurt die op basis van dit woord of deze zin een antwoordnode uit een scenario zal activeren.

  • Opties: Rechtsboven zie je nog een paar opties om de chatbot te testen in de widget, te exporteren naar een .chatbot bestand, terug te schakelen naar een vorige versie en te publiceren.

Opties

Stap 4: Maak al minstens 2 intenties aan met elk minstens 4 trainingszinnen.

Een intentie is zeer simpel uitgedrukt het doel dat je gebruiker voor ogen heeft bij het stellen van een vraag. Een kort voorbeeld:

  • Wat is het weer vandaag?

  • Moet ik een paraplu meenemen?

  • Gaat het morgen bewolkt zijn?

Dit zijn drie verschillende vragen die je onder dezelfde intentie “#weer” zou kunnen plaatsen, aangezien de gebruiker simpelweg het weer wil weten. Deze zinnen worden trainingszinnen genoemd die worden gebruikt door de bot om de intentie te herkennen.

Bij de naamgeving van je intenties hanteren we enkele best practices: gebruik maximum 5 woorden om een intentie te benoemen. Indien dat niet gaat, moet je de intentie herformuleren. Vermijd spaties en gebruik laagliggende streepjes of koppeltekens: forgot_password, choose-new-password

Maak een nieuwe intentie aan en voeg minstens vier goede trainingszinnen toe. Dit is een zeer belangrijk proces, aangezien de chatbot deze zinnen gebruikt om bij te leren. Je chatbot is maar zo goed als de kwaliteit van je trainingszinnen. Daarom hou je best enkele aanbevelingen in je achterhoofd:

  • Geef zoveel mogelijk kwaliteitsvolle trainingszinnen mee

  • Gebruik geen enkele woorden als trainingszinnen, tenzij bij de speciale “#single-entity” intent (bijvoorbeeld wanneer de gebruiker ‘ja’ of ‘nee’ moet antwoorden). Je voegt de entiteiten die je in quickreplies gebruikt toe aan een intentie die je "#single-entity" noemt en gebruikt deze in antwoordnodes om ervoor te zorgen dat de entiteiten een hogere score krijgen dan andere intenties (aangezien entiteiten nooit hoger scoren dan intenties). Zie het voorbeeld hieronder:

Gebruik van de #single-entity intent
  • Gebruik geen Google Search queries zoals “weer vandaag Brussel”. Herwerk deze korte zinnen naar een volzin: “Wat is het weer vandaag in Brussel”

  • Maak je zinnen niet te lang

  • Vermijd meerdere vragen in 1 zin en gebruik enkele vragen

    • Vb: “'Ik heb gisteren naar de website gekeken en ik vroeg me af of het mogelijk was om een sessie te boeken met de leraar van de vorige keer, omdat ik haar echt leuk vind, kan dat voor volgende week geregeld worden?”

    • Beter is: “ik wil graag een sessie boeken” en “kan ik een sessie boeken bij dezelfde leeraar?”

  • Gebruik geen ruwe gebruikersinput om je chatbot te trainen. Kopieer dus niet zomaar alles wat je in gesprekken terug vindt om te gebruiken als trainingsdata. Je kan de gesprekken nakijken in de Menselijke Overname interface of alle onbeantwoorde vragen in de Train interface, waarbij je de vragen van de gebruikers kan terugvinden.

  • Vooraleer je deze zinnen toevoegt bij je intenties moet je ervoor zorgen dat de zinnen werden ‘opgeruimd’:

    • Haal alle persoonlijke informatie weg (e-mails, namen, telefoonnummers, …)

    • Zorg dat lange teksten gedestilleerd worden tot enkele vragen

Stap 5: Maak indien nodig op dit moment alvast een paar entiteiten aan.

Wanneer de chatbot een onderscheid moet kunnen maken tussen verschillende onderwerpen, objecten of specifieke woorden maak je daar best entiteiten voor aan. Een kort voorbeeld:

  • Wat is het weer morgen in Rome?

  • Wat is het weer vandaag in België?

De chatbot moet in dit voorbeeld het onderscheid kunnen maken tussen morgen en vandaag (“@tijdstip”) en Rome en België (“@plaats”).

@label

@waarde

Synoniemen

@tijdstip

@morgen

Volgende dag

@vandaag

Nu, op dit moment, momenteel

@plaats

@Rome

Roma

@België

Belgium, Belgique, BEL, Belgie

Met het label houdt Oswald geen rekening, wel met de waarde en de synoniemen.

Gebruik waar mogelijk enkele woorden voor entiteiten en de synoniemen. Vermijd het gebruik van punten (.) want dit veroorzaakt technische problemen.

Stap 6: Test je intenties in de trainingsinterface en kijk of de bot ze al goed kan herkennen. Pas aan waar nodig.

Geweldig! Je kan nu al je chatbot beginnen testen. Ga naar de Train interface, typ een zin in de balk boven en druk op enter. Je zal zien wat de bot heeft herkend en welke intentie hij kiest. Indien je een andere intentie had verwacht, kan je dit corrigeren door het drop-down menu te gebruiken of op de juiste rechthoek te klikken en te ‘valideren’ met de groene knop. De zin die je net typte wordt dan toegevoegd als trainingszin aan de geselecteerde intentie.

Train interface

Stap 7: Ontwerp je scenario's.

Wanneer je op dit moment tegen de bot probeert te praten, zal die waarschijnlijk een bericht weergeven zoals ‘Sorry, dat heb ik niet begrepen.’. Dit komt omdat je eerst de antwoorden moet ontwerpen die je chatbot kan selecteren aan de hand van de intenties. Ga naar de scenario’s interface en maak een nieuw scenario aan.

Scenario's interface

Scenario view

Wanneer je een nieuw scenario aanmaakt, kom je automatisch in de scenario view terecht.

Scenario view

Hier krijg je een kort overzicht van de functionaliteiten:

  • Titel (linksboven): je kan deze wijzigen door op de naam van je scenario te klikken.

  • Scenariolijst (linkerkant): Je kan een lijst krijgen van alle scenario’s door links op de witte balk of het zwarte pijltje te klikken.

  • Antwoordnode: een node is een soort ‘container’ waarin je een antwoord van de bot formuleert.

  • Taal: Hier selecteer je de taal van dit scenario. Wijzig de taal om de antwoorden in andere talen bij te werken.

  • Dropdown menu:

    • Export: Je kan een scenario exporteren naar een bestand. Je zou dit willen doen om bijvoorbeeld hetzelfde scenario ook in een andere chatbot te gebruiken. Dit kan handig zijn voor algemene scenario’s zoals "welkom", "contact", etc ...

    • Bibliotheken: Je kan scenario’s uit bibliotheken halen en gebruiken of opslaan.

    • Verwijderen: Je kan dit scenario verwijderen.

Dropdown menu
  • Save of Close: Sla je scenario op of sluit de scenario view.

  • Open de test interface door op de groene tekstbubbel of de grijze balk aan de rechterkant te klikken. Je vindt hier ook je bot brein terug.

  • De balk met ‘any state’ in zijn Toestanden.

  • Je kan op de plusjes klikken om antwoordnodes toe te voegen.

    • Voeg antwoord toe: Er zal een node worden toegevoegd onder het plusje.

    • Vertak: Als er al een node staat onder de plus, kan je een nieuwe node ernaast toevoegen.

    • Spring naar…: Spring naar een bookmark.

    • Naar mens: Je kan een menselijke overname instellen of suggereren.

Antwoordnodes ontwerpen

Klik op de antwoordnode om je antwoord te ontwerpen. Ook hier krijg je een kort overzicht:

Antwoordnode ontwerp voorbeeld
  • Intentie: Voeg de intentie toe. Je kan de bot enkel rekening laten houden met de zin of de context of beiden (any). Raadpleeg de pagina context voor een voorbeeld.

  • Entiteiten: Selecteer indien van toepassing een entiteit. Je kan een entiteit toevoegen en aanduiden over welke specifieke waarde het gaat. Als je in het dropdown menu ‘any’ laat staan, gaat de bot elke waarde die bij de entiteit label hoort selecteren. In ons voorbeeld van het weer in Rome kan je bijvoorbeeld de label “@plaats” selecteren. Dan maakt welke plaats niet uit, zolang de bot maar herkent dat er een plaats in de zin of context werd vermeld.

Indien je meerdere entiteiten toevoegt, moeten BEIDEN in de zin of context voorkomen vooraleer de bot deze antwoordnode zal kiezen. Hij kiest niet tussen 1 van de twee.

  • Tags: Je kan tags toevoegen of verwijderen. Deze kan je bekijken in de statistieken of gebruiken om te filteren in de Menselijke overname.

  • Sla antwoord op in variabele: Het is in Oswald mogelijk om een antwoord van de gebruiker op te slaan in een variabele. Raadpleeg de pagina Variabelen voor een voorbeeld.

  • Er bestaan 5 soorten outputs in een antwoord:

    • Tekst

    • Links

    • Afbeeldingen

    • Filmpjes

    • Locaties

  • Bookmarks: Het is in Oswald mogelijk om van het einde van een scenario naar een andere node in hetzelfde scenario of in een ander scenario te springen.

  • Quickreplies: Korte antwoorden die worden weergegeven in knoppen om je gebruikers op weg te helpen. Bestaat uit een tekst en een actie.

  • Taal: Je kan deze wijzigen om de node in een andere taal aan te passen.

  • Save of close: Opslaan of sluiten.

Wanneer je een andere antwoordnode hebt die volgt op deze node (een child node), krijg je nog een paar extra opties:

Antwoordnode interface bij aanwezigheid van een child node
  • Antwoordprioriteit: Soms is het mogelijk dat er meerdere nodes getriggerd kunnen worden als antwoord op een bepaalde vraag. Je hebt drie mogelijkheden:

    • Kinderen eerst

    • Enkel kinderen

    • Score antwoord

  • Indien geen antwoord gevonden: Je kan hier een korte tekst toevoegen indien de chatbot geen antwoord heeft kunnen vinden na deze specifieke node.

Ontwerp je scenario boom op een logische wijze zodat het gesprek met je gebruiker kan vloeien en anticipeer op gerelateerde vragen.

Tips & tricks:

  • Wil je wat variatie in je antwoorden? Je kan het ‘|’ teken gebruiken in je antwoorden. De bot zal dan willekeurig één van de zinnen selecteren. Zie de eerste antwoordnode in dit voorbeeld:

"|" truc en verticale structuur
  • Als chatbot developer moet je anticiperen op de vragen van de gebruiker. Soms stellen gebruikers algemene vragen, maar andere keren geven ze toch al wat specifieke informatie mee. Je kan in Oswald voor beide gevallen een scenario ontwerpen met een verticale structuur (zie hierboven).

  • De eerste node zal geselecteerd worden wanneer de gebruiker een algemene vraag stelt, maar wanneer hij of zij al de specifieke entiteit meegeven, kan de bot meteen reageren met een specifieker antwoord.

  • Indien je scenario’s ontwikkelt die je liever niet toegankelijk maakt voor de gebruiker, tenzij na een specifieke bookmark, kan je je scenario’s op de toestand "locked" zetten op deze manier:

Gebruik maken van toestanden

Stap 8: Test je scenario’s in de test interface met het bot brein.

Wanneer je al je afzonderlijke scenario’s hebt gebouwd, is het belangrijk om ervoor te zorgen dat deze vloeien in een gesprek. Kijk dus hoe je verschillende scenario’s met elkaar interageren en dat de gebruiker altijd verder kan. Vermijd dus doodlopende scenario’s waar mogelijk en anticipeer op gerelateerde vragen die de gebruiker logischerwijze zal stellen na een bepaald antwoord.

Benut acties in je quickreplies, blokkeer scenario’s die je enkel toegankelijk wil maken aan de hand van een bookmark jump en gebruik bookmarks zoveel je wil (het is een super coole functionaliteit!).

Je kan de flow van je gesprek nakijken door te praten tegen de chatbot in de test omgeving. Klik op de chatbubbel rechtsbeneden in je scenario view of druk op de grijze balk aan de rechterkant en begin te praten tegen je bot.

Chatvenster in de test omgeving

In de testomgeving kan je nog enkele functionaliteiten vinden:

  • Refresh: Reset de test interface en maak het gesprek leeg.

  • Save as test (save icoontje): Wanneer je spreekt tegen je bot en een volledig scenario hebt doorlopen, kan je dit scenario opslaan als een ‘test’ door op het kleine floppy disk icoontje linksboven te klikken. Geef de ‘test’ een naam een sla op. Deze test verschijnt dan in de Tests interface en kan je op elk moment raadplegen om te testen of het scenario as is nog steeds werkt naar verwachting wanneer je verder aanpassingen uitvoert in de bot.

Tests aanmaken zorgt ervoor dat je chatbotontwikkeling sneller en gemakkelijker verloopt. Gebruik deze functionaliteit dus zeker doorheen je ontwikkelingsproces.

  • Klokje: Je kan boven elk antwoord van de bot op het klokje klikken om dat specifieke antwoord terug te initialiseren. Dit is handig wanneer je bijvoorbeeld wil testen of meerdere quickreplies werken. Zo hoef je niet altijd je gesprek te herstarten.

  • Bot brein: Je kan voor elk antwoord gaan kijken wat er zich op dat moment afspeelde in het bot brein.

Naast je gesprek kan je het bot brein raadplegen en op de voet volgen wat er zich afspeelt in het onderliggend geheugen van de bot.

Het Bot Brein

Hier krijg je een klein overzicht wat je met het bot brein kan doen:

  • Intentie, Toestand en entiteiten: Je kan zien welke zaken de bot heeft herkend.

  • Regels: Welke regels zijn er geactiveerd.

  • Nieuwe context: Welke nieuwe zaken werden er aan de context toegevoegd.

  • Vorige context: Welke zaken zaten er voor dit antwoord al in de context.

  • Huidige tags: Welke tags werden er al herkend en toegevoegd.

  • Intentie scores (met drempelwaarde): Je kan hier zien welke intenties en in welke mate ze werden herkend.

  • Verwachte intentie: De intent die Oswald uiteindelijk heeft gekozen waaraan een antwoord hangt.

  • Geactiveerde antwoorden: Hier zie je een lijst van de stappen die Oswald ondernam om op dit antwoord uit te komen.

Wanneer er iets misloopt in je gesprek met de bot, raadpleeg dan altijd eerst het bot brein.

Stap 9: Raadpleeg de NLP-matrix en train je bot bij.

Wanneer je meerdere scenario’s en intenties hebt toegevoegd in de bot, kan het handig zijn om te gaan kijken in de NLP-interface (Natural Language Processing). Daar kan je de NLP- of Confusion matrix raadplegen om intenties te identificeren die te hard op elkaar lijken. Zo kan je zien wat de chatbot in de plaats heeft herkend en waar je de nodige aanpassingen moet doen. Idealiter vormen de gekleurde vakjes een diagonaal.

Confusion matrix

Daarnaast kan je de instellingen van je NLP aanpassen, maar doe dit alleen als je echt weet wat je aan het doen bent! Dit is niet vanzelfsprekend en af te raden als je geen AI of NLP-achtergrond hebt. Hiervoor kan je best het Oswald team contacteren. Deze instellingen hebben een grote invloed op de werking van je chatbot!

Stap 10: Pas je integraties aan.

Je kan in de Integraties interface je Oswald widget ontwerpen of andere integraties toevoegen. Let hier wel op: als je de aanpassingen in je Oswald widget of andere integraties wil zien, moet je de bot opnieuw publiceren. Dit betekent dat alle aanpassingen in je integraties pas zichtbaar zijn nadat je ook de rest van de chatbot hebt gepubliceerd. Indien je liever enkele aanpassingen in de bot nog niet wil tonen aan de gebruiker, moet je hier wel op letten.

Stap 11: Exporteer je chatbot en sla dit bestand op.

Het is altijd een goed idee om je chatbot te exporteren en veilig op te slaan. Zo kan je altijd terugkeren naar een vorige versie. Sla regelmatig je chatbot op.

Stap 12: Publiceer je chatbot.

Publiceer je chatbot door bij de Instellingen uit het dropdown menu links “Publish” te selecteren. Daarna verschijnt de optie “Test widget” en kan je je chatbot in actie zien op een demopagina.

Stap 13: Test je chatbot volledig.

Voor je de chatbot live zet, raden wij altijd aan om je chatbot goed te laten testen door verschillende partijen. Laat de bot vooral testen door personen die niets te maken hadden met de ontwikkeling van de bot en bekijk hoe zij ermee om gaan. Dit kan al heel waardevolle feedback zijn op je chatbot design, waarmee je al een paar aanpassingen kan doen voor je de bot publiek beschikbaar stelt. Wij raden aan minstens 5 personen de bot te laten testen. Gebruikers verwoorden soms jargon termen volledig anders en het is belangrijk om de juiste verwoording te achterhalen voor de bot live gaat.

Zorg daarnaast dat je alle feedback op 1 plek verzamelt. Zo kan je een overzicht behouden van alle verbeterpunten en zijn deze gemakkelijker te communiceren naar de juiste partij.

Stap 14: Zet je chatbot live.

Indien je de Oswald widget integratie koos, kan je bij de Integraties interface de Script tag vinden. Plak deze in de HTML-code van je website en voila! Daar staat je chatbot klaar!

Bij andere integraties hoef je gewoon de instructies te volgen die worden weergegeven bij het selecteren van de integratie.

Stap 15: Blijf je bot bijtrainen.

Hoe hard we ook proberen te anticiperen op gebruikersinput, de ervaring leert ons dat mensen zaken soms veel anders verwoorden en andere dingen verwachten van de chatbot. Het is dan aan jou de keuze hoe je hierop gaat inspelen.

Je kan je bot continu verbeteren door input van de gebruikers te analyseren in de Menselijke overname interface of de Train interface. Daar kan je inzichten verzamelen over vragen waar de bot op dit moment nog niet kan antwoorden. Zorg dat je voor alle gebruikersinput de regels toepast in stap 4.

Vragen?

Indien je toch nog problemen ondervindt met je (gepubliceerde) bot, kan je een ticket aanmaken in onze servicedesk.

Veel success! 👏