Opdracht: Bouw je eigen FAQ chatbot

 

Doel van de opdracht:

Bij deze opdracht maak je zelf een basis versie van een chatbot die vragen kan beantwoorden van medewerkers.

Je leert hoe je de chatbot kunt voorzien van vragen en antwoorden.

Hoe je de chatbot kunt trainen, zodat het vragen in een andere vorm of variant kan beantwoorden.

En je leert hoe je de bot kunt corrigeren en uitbreiden.

Je maakt kennis met technologie voor cognitieve toepassingen van Microsoft en start met het toepassen van de QnA maker service.

Hiermee zijn vragen en antwoorden te lezen uit bestaande informatie (bijvoorbeeld FAQ's of documenten en procedures).

Vervolgens zijn deze via een dialoog met een chatbot te bevragen, bijvoorbeeld door een medewerker.

 


Uitleg en Instructies



  1. Ga naar de volgende website: https://www.qnamaker.ai/

  2. Login met xxxx en wachtwoord: xxxx

  3. Maak een nieuwe kennis database aan via 'Create new knowlegde base' (dit gaat jouw eigen chat bot worden), en vul onderstaande in:
    Sla Stap 1 over, selecteer bij Stap 2 de standaard waardes en ga verder met Stap 3
    • Stap 3: Name your KB: Mag je zelf verzinnen, dit wordt de naam van jouw bot
    • Stap 4: URL: Hier kun je links opgeven naar bijv. een webpagina met FAQ's of een link naar een online document waar vraag en antwoord paren in staan. Maar dat hoeft nu niet, wij gaan een voorbeeldbestand uploaden, zie hieronder:
    • Add file: Gebruik (upload) het volgende bestand uit het data bestand dat je eerder gedownload hebt: overheid_faq.tsv
      Je kunt later ook zelf  eigen documenten uploaden of urls opgeven ter test.


  4. Scroll naar Stap 5 en Click Create en wacht even. De service is nu de vraag en antwoordparen aan het analyseren en een eerste model aan het trainen

  5. Als het trainen klaar is kun je testvragen gaan stellen. Klik op de optie 'Test' in het menu aan de linkerkant, en probeer enkele voorbeeldvragen:
    • Hoe geef ik mijn verhuizing door?
    • Heb ik recht op een uitkering?
    • Moet ik op zondag werken?

  6. Bij iedere vraag die je stelt en antwoord daarop kun je het systeem corrigeren. Dat doe je door bij het antwoord op "Inspect" te klikken en aan de rechterkant (vraag) betere alternatieven te kiezen of op te geven. Zie ook onderstaand screenshots.

  7. Je kunt zelf ook nieuwe vragen en antwoorden toevoegen, of bestaande vragen uitbreiden met varianten op de vraag.

Na het kiezen van alternatieven dien je het systeem te hertrainen. Klik hiervoor op "Save and retrain" en wacht even. Stel vervolgens de vraag nog eens en bekijk het resultaat.

 

Andere data

Je kunt ook de veelgestelde vragen van 'Werken bij de NS' gebruiken en vragen stellen zoals:

  • Kan ik conducteur worden?
  • Krijg ik een vergoeding voor mijn stage?
  • Welke opleidingen kan ik volgen?
  • Kan ik internationaal werken?

Gebruik voor het voorbeeld van de NS het bestand ns_faq.tsv uit de dataset die je eerder gedownload hebt.

 

Je kunt zelf nog eigen documenten (bijvoorbeeld een personeelshandleiding of FAQ document) uitproberen en daar vragen over stellen.


Ok leuk... en wat nu?

Je hebt nu kennis gemaakt met een simpel voorbeeld van een chatbot die vragen kan beantwoorden.
Dit kan waarschijnlijk  ook al simpele HR vragen beantwoorden.

In een echte situatie zul je echter meer moeten doen. Stel je wilt antwoorden geven die specifiek zijn. Bijvoorbeeld een vraag over vergoeding van een behandeling. Het antwoord zal afhankelijk zijn van je ziektekosten verzekering en voorwaarden en voor iedereen anders zijn.

Om antwoorden specifiek te maken (in context) zul je de chatbot dus wedervragen moeten kunnen laten stellen om het juiste antwoord te geven. Dus de chatbot moet een dialoog aan kunnen gaan, waar we in dit voorbeeld nog maar 1 antwoord geven op 1 vraag.

Dat zou je kunnen doen met de volgende oplossingen:

 

Daarnaast is het uiteindelijk niet handig om voor iedere situatie vraag en antwoord combinaties in te gaan voeren en bij te houden. Je hebt dus uiteindelijk iets slims nodig wat zowel je vraag goed begrijpt, maar ook in de achterliggende informatie antwoorden kan vinden... (zoiets gaan gelukkig in opdracht 2 maken)

 

Deze introductie geeft je wel de mogelijkheid om na te denken over verdere toepassingen.
En wat andere bedrijven zoal doen geeft wellicht ook nog extra ideeën.

 Wat doen andere bedrijven met deze technologie?

  • Chatbot voor schade melden
    • Je kunt een chatbot inzetten om een proces te volgen, bijvoorbeeld het melden van een schade via Whatsapp (hier combineer je tekst en foto's om uiteindelijk tot een schademelding te komen). Via een chatbot kan dat interactief en snel.
  • Chatbot voor vragen over je zorgverzekering
    • Zet een chatbot in om vragen te beantwoorden over zorgverzekeringen en vergoedingen, of om algemene informatievragen te stellen kan de klantenservice ontlasten van veel voorkomende eenvoudige vragen.
  • Chatbot voor een IT-helpdesk
    • Laat de meest gestelde vragen aan een IT helpdesk beantwoorden door een chatbot (o.a. hoe kan ik mijn password resetten? ), hierdoor kunnen de call center agents zich focussen op de meer complexe problemen.

Flow.ai opdracht

We starten met een voorgedefinieerd template, kies bijvoorbeeld 'Customer Service'

Je ziet een voorbeeld flow die je kunt testen en uit kunt breiden

Test de bot en stel een aantal vragen (wel in het engels, het template is alleen engels)

Bekijk onder het menu links de opties "Intent Library", hierin Intents en voorbeeldvragen en varianten van vragen. Voeg eventueel nieuwe intents of voorbeeld vragen toe en train de bot opnieuw.

 

De voorbeeld flow is uit te breiden met nieuwe stappen of wedervragen. Speel hiervoor met de voorgedefineerde blokken in het onderdeel "Flows", voeg stappen (Triggers, of Replies) toe, train opnieuw en bekijk het resultaat