Was passiert eigentlich im Hintergrund, wenn man einem Chatbot oder Voicebot eine Frage stellt und eine Antwort erhält? Um die technischen Zusammenhänge zu verstehen, müssen Sie zunächst wissen, was Intents, Utterances, Responses und Entitäten sind.

Die Antworten eines Bots werden in Intents organisiert

Ein Intent ist eine im System gespeicherte Nutzer:innenabsicht. Sie besteht aus dem Namen des Intents, den Fragevariationen (Utterances) und natürlich der Antwort (Response):

Utterances and a Response of an Intent

Wie Sie in der Abbildung sehen, stehen bei den Utterances mehrere Variationen der Frage „Wie ist das Wetter in Würzburg?“, bei der Response jedoch nur ein einziger Satz. Der Chatbot kann daher als Antwort immer nur denselben Satz auf die Frage ausgeben.

Das Erstellen mehrerer Utterances ist notwendig, weil jeder Nutzer und jede Nutzerin seine/ihre Frage ein wenig anders formulieren kann. Als Antwort reicht in der Regel eine Response aus. Sie können aber auch hier Variationen erstellen. Ob diese sinnvoll sind, hängt vom entsprechenden Use Case ab. Die Gesamtanzahl aller Intents bei einem Chatbot ist davon ebenso von dem Use Case abhängig.

Was für Arten von Intents gibt es?

Bei den Intents lassen sich zwei verschiedene Arten unterscheiden: Die Intents, bei denen die Antwort des Bots immer gleich ist, und die, bei denen die Antwort individuell angepasst werden muss.

So lautet die Antwort auf die Frage „Wie lange dauert ein Praktikum?“ immer „Ein Praktikum in unserem Unternehmen dauert 6 Monate“. Dabei ist es irrelevant, ob der Nutzer oder die Nutzerin sich in Berlin oder München aufhält und ob er die Frage heute oder erst morgen stellt.

Auf die Frage „Wie ist das Wetter?“ kann die Antwort aber nicht immer gleich sein. Das Wetter ist ändert sich täglich und ist darüber hinaus ortsabhängig. Der Bot muss daher erfassen können, wo sich der Nutzer oder Nutzerin befindet, um eine an die aktuelle Wetterlage angepasste Information zu präsentieren.

 

Entities helfen dem Bot die richtigen Informationen auszuspielen

Wenn wir uns nun die Utterances genauer anschauen, werden wir feststellen, dass bestimmte Wörter eine Schlüsselfunktion erfüllen. Sie ermöglichen es dem Bot in der Antwort die richtigen Informationen auszuspielen:

Diese Schlüsselwörter werden als Entities bezeichnet. Mit ihrer Hilfe kann der Chatbot erkennen, auf welche Informationen er zugreifen muss. Die erste Entity „Weather“ signalisiert dem Bot, dass er auf eine Datenbank wie Open Weather zugreifen muss, um dort die Wettervorhersage abzurufen. Die zweite Entity „Würzburg“ sagt ihm, für welchen Ort er die Vorhersage braucht.

Ablauf des Antwortprozesses bei einem Chatbot oder Voicebot

Was passiert nun, wenn Nutzer:innen dem Chatbot die Frage „Wie ist das Wetter in Würzburg?“ stellen?

Der Chatbot gleicht die Anfrage mit sämtlichen Utterances im System ab und berechnet für jeden Intent einen Confidence Score. Dieser besagt wie groß die Wahrscheinlichkeit ist, dass bei dem jeweiligen Intent die Antwort richtig ist. In unserem Fall ist der Confidence Score bei dem Intent „Weather“ am höchsten.

Dann untersucht das System die Anfrage auf mögliche Entities:

Aufgrund dieser beiden Entities weiß der Chatbot, dass er auf eine Datenbank wie Open Weather Maps zugreifen und die Vorhersage für die Stadt Würzburg abrufen muss. Diese Informationen werden dann in die Response eingebaut:

The words

Diese Antwort wird dann den Nutzer:innen angezeigt.

Bei einem Voicebot kommen am Anfang und am Ende noch ein Schritt dazu: Die von den Nutzer:innen über gesprochene Sprache eingegebene Anfrage wird über eine Spracherkennungssoftware (STT =Speech-to-Text) in geschriebenen Text umgewandelt, bevor sie analysiert werden kann. Die Antwort des Chatbots wird über eine Text-to-Speech Software in gesprochene Sprache umgewandelt.

Sie möchten noch mehr über Chatbots und Voicebots wissen? Dann laden Sie sich unsere Infografik Chat- und Voicebots für Anfänger herunter.

Download