BOTfriends Preview

Trainings Phrasen / Utterances

--> zum BOTwiki - Das Chatbot Wiki

Trainings Phrasen sind ein Hauptbestandteil von Intents. Sie dienen dazu die vorher definierten Nutzerabsichten bestmöglich zu erkennen. Dabei werden pro Intent verschiedene Fragevariationen in einer Wissensbasis hinterlegt. [1][2][3]

Beispiele für Trainings Phrasen / Utterances

Die folgenden Beispiele zeigen unterschiedliche Formulierungen, die alle auf dieselbe Absicht, das Wetter, abzielen:

“Wie wird das Wetter morgen”,

“Brauche ich morgen einen Regenschirm?”,

“Ist morgen in Würzburg Badewetter?”

Umfang von Trainings Phrasen / Utterances

Wie viele Training Phrases pro Intent empfohlen werden, hängt stark von der eingesetzten Technologie ab. Die folgende Tabelle zeigt Erfahrungswerte, die BOTfriends mit dem Tool Dialogflow gemacht hat.

Anzahl Trainings Phrasen/Erkennung durch Dialogflow Intenterkennung
< 5 Schlecht
< 15 in Ordnung
< 50 Gut
< 100 Sehr gut*

*Es wird angemerkt, dass bei Dialogflow mehr Utterances zu einer besseren Intenterkennung führen. Bei anderen Anbietern wurde festgestellt, dass bei zu vielen Utterances die Qualität der Intenterkennung wieder abnimmt.

Natürlich hängt die Anzahl der Fragevariationen auch stark vom Use Case ab. Grundsätzlich sollte darauf geachtet werden, dass möglichst verschiedene Fragevariationen enthalten sind und sich dennoch die Utterances nicht mit anderen Intents überschneiden, um somit eine Intent Correlation zu vermeiden.

> Zurück zum BOTwiki - Das Chatbot Wiki

Quellen

[1] https://dialogflow.com/docs/intents

[2] https://docs.microsoft.com/en-us/azure/cognitive-services/luis/luis-concept-utterance

[3] https://cloud.ibm.com/docs/services/assistant?topic=assistant-intents


BOTfriends Preview

Human Handover

--> zum BOTwiki - Das Chatbot Wiki

Unter einem Human Handover (auch Human Takeover, Human Handoff) bezeichnet man die Weiterleitung einer Konversation von einem Chatbot an einen realen Menschen.

Der Begriff Human Takeover wird meist verwendet, wenn die Konversation nicht übergeben wird, sondern der Mensch eine Konversation aktiv übernimmt.

Auslöser für den Human Handover

Ein Human Handover kann durch unterschiedlichen Szenarien ausgelöst werden:

  • Explizite Frage der Nutzenden nach einem Menschen
  • Der Chatbot kennt die Antwort auf eine bestimmte Frage nicht (Default Fallback Intent wird getroffen)
  • Der Chatbot ist sich nicht sicher genug (niedriges Confidence Level)
  • Die Gefühlslage der Nutzenden weist einen negativen Wert auf (Sentiment Score)
  • Ein bestimmter Intent wird getroffen, bei dem ein menschliches Eingreifen erwünscht oder gefordert ist
  • Bestimmte Metriken wie beispielsweise der Warenkorb eines Online Shops enthält Produkte im Wert von > 1.000 €

Warm/ Cold Human Handover

Ein Warm Handover bezeichnet die sofortige Weiterleitung des Nutzers an einen Mitarbeiter. Die Antwort des Menschen wird zeitnah und im selben Kanal an den User ausgespielt.

Beim Cold Handover dagegen wird der Konversationsfluss unterbrochen und/oder der Kanal gewechselt. Ein gängiges Beispiel dafür ist ein Handover aus dem Facebook Messenger in den Kanal Email.

Tools für den Human Handover

Ein Handover kann in verschiedene Tools integriert werden:

> Zurück zum BOTwiki - Das Chatbot Wiki


BOTfriends Preview

Tonalität von Chatbots

--> zum BOTwiki - Das Chatbot Wiki

Bei der Chatbot Tonalität handelt es sich um den Ton bzw. die Ausdrucksweise des Chatbots. Bei Chatbots, als auch bei Voice-Bots bestimmt die Tonalität den Stil der Kommunikationsweise mit einem Nutzer. Die Tonalität stellt einen sehr wichtigen Teil des Conversational Designs dar und spielt ebenfalls für die User Experience bei Chatbots eine wichtige Rolle.

Relevanz der Chatbot Tonalität

Der Chatbot ist meist Teil einer gesamtheitlichen Kommunikationsstrategie. Aus diesem Grund ist es sehr wichtig ein konsistentes Bild abzugeben. Da es sich bei Chatbots um Conversational User Interfaces handelt, die in Dialogform aufgebaut sind, müssen einige andere Komponenten im Vergleich zu Graphical User Interfaces (Apps, Websites) betrachtet werden. Chatbots sind häufig mit Charakteren ausgestattet, die das Unternehmen bzw. die Organisation repräsentieren sollen. Neben der visuellen Komponente sollten Conversational UIs auch eine besondere Tonalität und Ausdrucksweise besitzen.

Anhaltspunkte einer guten Tonalität

  • Wie findet die Kommunikation mit Kunden aktuell auf anderen Kanälen statt?
  • Wie werden die Kunden meines Unternehmens angesprochen? (Du/Sie)
  • Welche Ausdrucksweise passt zu meinem Chatbot Use Case?
  • Welche Zielgruppe möchte ich mit dem Chatbot ansprechen?
  • Welche Werte, Überzeugungen und Ethik verkörpert mein Unternehmen hinsichtlich der Kommunikation?
  • Welche Richtlinien und Leitfäden gibt es bereits hinsichtlich Außendarstellung?
  • Soll der Chatbot Emojis verwenden?

Letztendlich ist es für jedes Unternehmen individuell wichtig einen Weg zu finden, wie zukünftig in weiteren Kanälen kommuniziert werden soll. Zum einen kann natürlich die aktuelle Kommunikation beibehalten und ergänzt werden oder zum anderen natürlich auch ganz neue Wege gegangen werden und somit sein Unternehmen oder seine Marke kommunikativer und innovativer aufzustellen.

> Zurück zum BOTwiki - Das Chatbot Wiki


BOTfriends Preview

(Default) Fallback Intent

--> zum BOTwiki - Das Chatbot Wiki

Der Fallback Intent (auch Default Fallback Intent, Fallback Message, Fallback Nachricht, Error Message, Fallback Interaction) wird ausgespielt, wenn der Chatbot die Anfrage des Nutzers oder der Nutzerin keinem bestehenden Intent zuordnen kann oder der Confidence Score der zugeordneten Intents zu niedrig ist.

Empfohlener Aufbau von Fallback Intents

Da der Fallback Intent potenziell einer der am häufigsten ausgespielten Nachrichten ist, sollte ein besonderes Augenmerk auf den Aufbau und das Conversational Copywriting der Fallback Nachricht geachtet werden:

  • Das Missverständnis aufklären
  • Den/Die Nutzer/Nutzerin an die Fähigkeiten und Grenzen des Chatbots erinnern
  • Call to action: Was kann der Nutzer oder die Nutzerin als nächstes tun (Vorschläge machen)

Ebenso wichtig ist es, die Fallback Nachricht zu variieren, damit der Nutzer oder die Nutzerin nicht wiederholt dieselbe Nachricht erhält.

> Zurück zum BOTwiki - Das Chatbot Wiki


BOTfriends Preview

Events (Dialogflow)

--> zum BOTwiki - Das Chatbot Wiki

Normalerweise werden Intents anhand von Nutzereingaben in Form von natürlicher Sprache ausgelöst. Durch die Verwendung von Events können Intents auch aus dem Backend ausgelöst werden. Bei Dialogflow lassen sich Events in plattformabhängige Events und Custom Events aufteilen.

Ein Beispiel für Events

Für einen News & Media Chatbot mit Push-Nachricht Funktion kann ein Intent mit einem Event hinterlegt werden, der täglich um 18:00 Uhr neue Artikel versendet. Der Intent wird demnach nicht nach einer Nachricht des Nutzers ausgelöst, sondern wenn das Backend-System einen neuen Artikel zum abonnierten Thema anzeigt.

Plattformabhängige Events

Diese Art von Events werden durch Aktivitäten des Users auf dem jeweiligen Output Kanal, der mit Dialogflow verbunden ist, ausgelöst. Ein gängiges Beispiel ist das Welcome Event, dass bei Facebook nach dem Betätigen des Los geht’s Buttons aktiviert wird.

Custom Events

Custom Events werden selbst für einen bestimmten Use Case definiert und sind nicht von dem Output Kanal abhängig.

> Zurück zum BOTwiki - Das Chatbot Wiki


BOTfriends Preview

Voice Bot / Assistant

--> zum BOTwiki - Das Chatbot Wiki

Ein Voice Bot ist eine spezielle Form eines Conversational User Interfaces und bildet das Gegenstück zu einem Chatbot. Conversational User Interfaces ermöglichen es mit Computersystemen in natürlicher Sprache zu kommunizieren. Die Ein- und Ausgabe wird bei einem Voice Bot über die gesprochene Sprache realisiert.

Die Technologie von Voice Bots

Der Computer ist mittels eines Speech-To-Text Converter in der Lage die eingehende Sprache in Text umzuwandeln. Der umgewandelte Text wird dann mittels Natural Language Processing vom System interpretiert und verarbeitet. Die Ausgabe der Sprache geschieht über eine Speech-To-Text Technologie.

Zur Umwandlung der gesprochenen Sprache in Text können zum Beispiel die Cloud Services Speech-To-Text und Text-To-Speech von Google und weiteren Anbietern verwendet werden.[1]

Anwendungsbereiche von Voice Bots

Klassische Voice Bots sind die Virtual Assistants Alexa von Amazon, Siri von Apple und der Google Assistant, welche überwiegend mit Sprache bedient werden. Jedoch können diese auch durch Texteingabe angesprochen werden. Weiterhin sind Voice Bots auch im Smart Home Bereich zu finden um dort z.B. über Sprachbefehle die Lampen oder die Heizung zu steuern. [2]

> Zurück zum BOTwiki - Das Chatbot Wiki

Quellen

[1] https://cloud.google.com/speech-to-text/
[2] Gartner IT Glossary, 2019, „Virtual Assistant“.


BOTfriends Preview

Conversational Map / Conversational Flow

--> zum BOTwiki - Das Chatbot Wiki

Bei einer Conversational Map handelt es sich um eine visuelle Darstellung einer Chatbot-Konversation. In den darin enthaltenen Konversationssträngen wird aufgezeigt, wie der Nutzer die einzelnen Stufen der Kommunikation durchlaufen kann. Die Map dient als Unterstützung in der Konzeptionsphase und der Entwicklung, indem sie die einzelnen Schritte des Chatverlaufs abbildet.

Warum ist eine Conversational Map hilfreich?

Durch die Konzeptionierung einer erhalten alle, am Projekt beteiligten Stakeholder, einen Überblick über alle möglichen Chatbot-Ausprägungen und -szenarien. Dies ist zum einen gut, um zu prüfen, ob noch inhaltliche Komponenten vergessen wurden und zum anderen können Schwachstellen in der Konversationsstruktur sehr schnell erkannt werden, die aufzeigen, wo der Nutzer eventuell nicht weiterkommen würde. Man spricht bei den verschiedenen Kommunikationsverläufen entweder von Happy Paths oder Edge Cases. Des Weiteren hilft eine Conversational Map eine klassische User Journey eines Nutzer durchzuspielen und gegebenenfalls Anpassungen vorzunehmen.

Aufbau einer Conversational Map 

Der Aufbau einer kann sehr gut in Stufen aufgeteilt werden, die einem schon einen Überblick über die Komplexität und Granularität geben. Es gibt wichtige Komponenten, die stufenübergreifend bedacht werden müssen. Beispielsweise: Wo setze ich welche Medien ein (Bilder, Buttons, Cards etc.) oder welche Features gehören zu diesem Konversationsschritt (z.B. Senden einer E-Mail)? Des Weiteren muss man sich zu Beginn Gedanken über den Stil des Chatbots machen. Soll der Chatbot ein reiner Klick-Bot werden oder soll es möglich sein, eine Freitext-Konversation zu führen oder ein Mix aus beidem?

In allen Fällen ist es wichtig, sich in den einzelnen Stufen Gedanken über die Antworten des Chatbots zu machen und diese auch in der Conversational Map einzubauen.

Wichtige Stufen einer Conversational Map 

  • Welcome Message / Start Message (Begrüßung, Ansprache, Avatar)
  • Onboarding (Aufklärung der Funktionsweise und des zu erwartenden Inhaltes)
  • Contentstufen (Abhängig der Tiefe und Granularität des Inhalts)
  • Error Message (Wie reagiert der Chatbot, wenn etwas schief gelaufen ist?)
  • Back Message (Wie kann der/die Nutzende sich zurück navigieren?)

Conversational Map

> Zurück zum BOTwiki - Das Chatbot Wiki


BOTfriends Preview

Intents

--> zum BOTwiki - Das Chatbot Wiki

Chatbot Technologien nutzen Machine Learning, um die Natürliche Sprache der Nutzer einer vorher definierten Absicht (Intent) zuzuordnen.

Grundprinzip von Intents

Gängige Systeme wie beispielsweise Google Dialogflow [1], IBM Watson Assistant [2] und Microsoft LUIS [3] arbeiten meist nach dem Prinzip von Intents.

Dabei werden im Voraus für den Use Case des Chatbots relevante Nutzerabsichten/Intents definiert. Dies geschieht durch das Hinterlegen von möglichen Nutzereingaben und einer dazugehörigen Antwort. Anfragen der Nutzer werden anhand der Nutzeräußerung einem oder mehreren der bereits definierten Intents zugeordnet (Intent Matching). Dabei wird von den NLP Services meist ein Confidence Level angegeben, das aussagt, wie sicher sich das System bei der Zuordnung der Nutzeräußerung zu einem Intent ist.

Bestandteile eines Intents

Hauptsächlich besteht ein Intent aus den folgenden Komponenten:

  1. Intentname
  2. Utterances
  3. Response

Des weiteren können je nach eingesetzter Technologie noch weitere Bestandteile hinzukommen:

  1. Context
  2. Events
  3. Actions
  4. Parameter / enthaltene Entities
  5. Fulfillment

Beispiel Intent

Intent:

Telefonnummer

Utterances:

"Wie ist Ihre Telefonnummer?",

"Wo kann ich euch telefonisch erreichen?",

"Gib mir bitte die Telefonnumer",

"Ich konnte leider Ihre Nummer nirgendwo finden. Können Sie mir diese bitte mitteilen?"

Response:

"Klar! Unsere Telefonnummer lautet 0931 123456789"

Wichtige Intents

  • Default Fallback Intent
  • Welcome Intent

> Zurück zum BOTwiki - Das Chatbot Wiki

Quellen

[1] https://dialogflow.com/docs/intents

[2] https://docs.microsoft.com/en-us/azure/cognitive-services/luis/luis-concept-utterance

[3] https://cloud.ibm.com/docs/services/assistant?topic=assistant-intents


BOTfriends Preview

Entity

--> zum BOTwiki - Das Chatbot Wiki

Entities dienen dazu, Nutzerinformationen aus natürlicher Sprache zu extrahieren.

Dabei wird meist zwischen System Entities und Custom Entities unterschieden. System Entities sind bereits im System enthaltene Entities für beispielsweise Adressen, Uhrzeiten und Zahlen.

Custom Entities können dagegen selbst definiert werden und enthalten je nach Use Case beispielsweise Produktinformationen oder ein Mitarbeiterverzeichnis.

Entities in NLP Services

Bei den gängigen NLP Services [1][2][3] ist die Entity Recognition bereits integriert und zählt neben dem Intent Matching zum Hauptbestandteil des Natural Language Processing für Chatbots.

Beispiel für eine Entity Extraktion

Ich möchte eine kleine Pizza Margherita in die Berliner Straße 1 bestellen.

Entities:

kleine (Custom Entity pizza_size)

Margherita (Custom Entity pizza_type)

Berliner Straße 1 (System Entity street_address)

 

> Zurück zum BOTwiki - Das Chatbot Wiki

Quellen

[1] https://dialogflow.com/docs/intents

[2] https://docs.microsoft.com/en-us/azure/cognitive-services/luis/luis-concept-utterance

[3] https://cloud.ibm.com/docs/services/assistant?topic=assistant-intents


BOTfriends Preview

Confidence Score / Confidence Level

--> zum BOTwiki - Das Chatbot Wiki

Der Confidence Score, oder auch Classification Threshhold, gibt an, wie sicher sich der NLP Service / das Machine Learning Model ist, dass der jeweilige Intent richtig zugeordnet wurde. Der Score kann einen Wert zwischen 0 und 1 besitzen, abhängig davon, wie die neuronalen Netze arbeiten. Generell wird bei jeder Benutzereingabe ein Score für jeden Intent berechnet und der, mit dem höchsten Wert, als Ergebnis zurückgegeben. Fällt das Confidence Level unter eine vorher festgelegte Grenze, wird ein Fallback Intent ausgegeben.

Ein Beispiel für die Berechnung des Confidence Score bei Google Dialogflow:

Für den Intent "Burger_bestellen" wurden folgende vier Trainingsphrasen eingepflegt:

"Burger Bestellung",

"Burger bestellen",

"Ich möchte einen Burger in Bestellung geben",

"Ich will einen Burger bestellen"

Bei der Nutzer-Eingabe von "Ich würde gerne einen Burger bei Ihnen bestellen" hat Dialogflow einen Confidence Score von 0,8 berechnet. Der NLP Service Dialogflow ist sich also 80 % sicher, dass die ausgegebene Antwort aus dem Intent "Burger_bestellen" richtig war. Aufgrund dieser Datenlage und anhand vorher definierter Regeln wird nun kein Fallback Intent ausgegeben.

> Zurück zum BOTwiki - Das Chatbot Wiki