Teil 3 der Blogserie:
Lesen Sie hier die anderen Beiträge dieser Blogserie:
Wie die Reise zur gelungenen Customer Experience starten kann, haben wir im vorigen Teil unserer Blogserie gezeigt. Dort haben wir gesehen, dass sich Rasa Open Source gut eignet, um schnell mit der Umsetzung eines Chatbots zu beginnen. Der implementierte Chatbot hatte bereits einige Stärken. So erkannte er beispielsweise verschiedene Userabsichten, sogenannte Intents, und reagierte darauf wie von uns festgelegt.
Doch sind wir damit auch schon am Ziel angekommen? Erinnern wir uns doch zurück an das, was wir uns im ersten Teil der Blogserie vorgenommen hatten. Ursprünglich wollten wir keinen simplen Bot erschaffen, der mehr oder weniger stupide eine Handvoll Aufgaben erledigt. Vielmehr hatten wir ein KI-gestütztes virtuelles Assistenzsystem im Sinn, das Natural Language Understanding (NLU) beherrscht, den Kontext und vorangegangene Touchpoints miteinbezieht und so Personalisierung und semantische Suche ermöglicht. Zudem sollte der virtuelle Assistent aus all dem Wissen schöpfen können, das im Unternehmen vorhanden ist, jedoch in der Regel auf ganz verschiedene Systeme verteilt ist.
Im Folgenden werde ich auf diese Anforderungen im Einzelnen eingehen. Was können traditionelle Chatbot-Systeme wie Rasa diesbezüglich leisten und wo stoßen sie an ihre Grenzen?
Natural Language Understanding
Rasa bietet gewisse Möglichkeiten, um die Absicht des Users zu verstehen; das haben wir im vorangegangenen Teil der Blogserie bereits gesehen. So kann man etwa mehrere Beispielsätze für eine bestimmte Userabsicht hinterlegen, auf deren Basis dann ein NLU-Modell erstellt wird. User können ihre Frage oder ihren Wunsch somit auch in etwas anderen Worten formulieren. Soll das Assistenzsystem aber beispielsweise in der Lage sein, eine größere Anzahl an Fragen zu beantworten, so ist das schnell mit einem enormen manuellen Aufwand verbunden. Für all diese Fragen müssen ja verschiedene beispielhafte Formulierungen hinterlegt werden.
Semantische Suche & Personalisierung
Man kann in herkömmlichen Chatbot-Systemen per se nur die Informationen nutzen, die man im Laufe ein und derselben Unterhaltung gesammelt hat. Möchte man darüber hinaus Informationen nutzen, die man in einer früheren Unterhaltung oder an einem ganz anderen Touchpoint gesammelt hat, etwa die Kaufhistorie, dann muss man ein externes System an den Chatbot anbinden, das zur Speicherung und zum Rückbezug solcher Informationen geeignet ist. Rasa und auch andere Chatbot-Systeme sind keine Search Engine. Sollen Mitarbeiter oder Kunden in der Lage sein, mit Hilfe des virtuellen Assistenten effektiv und in natürlicher Sprache alle Wissensquellen des Unternehmens zu durchsuchen, muss man diesen mittels anderer Technologien erweitern.
Das aktuelle Wissen aus verschiedenen Contentsystemen nutzen
Es ist ein gängiges Problem, dass benötigtes Wissen zwar grundsätzlich im Unternehmen vorhanden ist, Kunden oder Mitarbeiter jedoch nicht oder nicht über einen zentralen Punkt darauf zugreifen können. Häufig befinden sich Informationen beispielsweise im CRM-System, im unternehmensinternen Wiki, in Artikelbeschreibungen oder einfach im Dateisystem.
Mit einem herkömmlichen Chatbot sind hier zwei Ansätze denkbar. Eine Möglichkeit ist, Antworten auf einzelne Fragen direkt im Chatbot zu hinterlegen. Auf diese Weise wird man jedoch in der Regel nur einen Bruchteil des im Unternehmen eigentlich verfügbaren Wissens bereitstellen können. Außerdem steht man vor der Herausforderung, die Informationen im Chatbot stets auf dem aktuellen Stand zu halten.
Auch könnte man (in der Theorie) eines oder mehrere der oben genannten „Contentsysteme“ als Backend an den virtuellen Assistenten anbinden, sodass dieser seine Antworten direkt daraus bezieht. Hier stößt man jedoch wiederum auf Hürden. Denn für viele Datenquellen wird dies aufgrund fehlender Schnittstellen oder mangelnder Durchsuchbarkeit auf direkte Weise nicht möglich sein. Auch bestände weiterhin das Problem, dass die Informationen verteilt abliegen und der virtuelle Assistent wissen müsste, für welche Frage er welches System abfragen soll.
Und jetzt: was tun?
Daher zunächst die schlechte Nachricht: Mit Rasa oder einem anderen Open Source Chatbot-Framework allein wird sich das Idealbild eines virtuellen Assistenten, das wir im ersten Blogbeitrag gezeichnet hatten, also kaum realisieren lassen.
Jedoch gleich die gute Nachricht hinterher: Man kann die Anforderungen, die herkömmliche Chatbot-Frameworks offen lassen, dennoch erfüllen. Und zwar indem man seinen Chatbot durch Smart Answers erweitert, ein Produkt unseres Partners Lucidworks.
Smart Answers ist genau dazu entwickelt worden, Chatbots und virtuelle Assistenten zu erweitern, deren Grenzen zu überwinden und so Nutzern die benötigten Informationen zu liefern – egal, in welchem System sie zu finden sind und dabei stets aktuell. Smart Answers kann die Absicht des Nutzers verstehen und Fragen in natürlicher Sprache beantworten. Die besondere Stärke von Smart Answers liegt in der Auflösung von Datensilos.
Und so funktioniert es
Lucidworks bietet über 800 sogenannte Konnektoren, um Inhalte aus ganz verschiedenen Datenquellen und Systemen in Smart Answers zu indexieren. Dieser Indexierungsprozess kann beispielsweise täglich automatisch neu erfolgen, sodass die Aktualität der Informationen stets gegeben ist. Smart Answers gleicht dann eine Frage, die es erhält, mit den geladenen Inhalten ab. Aufgrund eines Deep-Learning-Modells findet es dann die relevanteste Antwort und gibt diese zurück. Mittels sogenannter Signale lernt Smart Answers außerdem aus vorangegangenen Unterhaltungen, verbessert sich somit selbst immer weiter und bietet zudem Personalisierung.
Die Integration in Rasa oder einen anderen Chatbot sieht dann folgendermaßen aus. Der Nutzer kommuniziert mit dem Chatbot und äußert einen Wunsch oder eine Frage, die der Chatbot dann einem der konfigurierten Intents zuordnet. Handelt es sich um einen Intent, den der virtuelle Assistent selbst bedienen kann, etwa dem Abonnieren eines Newsletters, läuft alles wie im vorigen Teil der Blogreihe beschrieben. Hat der User jedoch eine Frage, die nur Smart Answers beantworten kann, leitet der Chatbot diese an Smart Answers weiter und gibt dessen Response dann an den Nutzer aus. Wir haben also in diesem Teil der Blogserie gesehen, dass herkömmliche Chatbots zwar diverse Grenzen haben, diese jedoch nicht unüberwindbar sind. Im nächsten und letzten Teil der Blogserie werden wir Ihnen einen genaueren Einblick in Smart Answers und die technische Anbindung an einen Chatbot geben.