Wissensbots

Quellknoten: 837393

Anfang dieses Jahres hatte ich die Aufgabe, ein Wissen zu schaffen bot für eine Plattform auf Unternehmensebene. Die Benutzer waren in erster Linie die Mitarbeiter der Organisation und beabsichtigten, das Wissen zu nutzen bot das Angebot und die Nutzung der Plattform zu teilen.

Es gibt eine ganze Reihe von Frameworks auf dem Markt (jedes mit seinen eigenen Vor- und Nachteilen), daher ist es sehr wichtig, dass man das richtige Framework auswählt, abhängig von der Art des Bots, den Sie erstellen möchten. Im Falle der Erstellung der Wissensbots sind die typischen Anforderungen -

1. Der Hauptzweck des Wissens bot ist es, die Informationen über das Angebot über einen geführten Chat bereitzustellen. Wenn der Benutzer dies wünscht, sollte er in der Lage sein, aus dem geführten Chat herauszukommen und Ad-hoc-Fragen zum Angebot zu stellen und zum geführten Chat zurückzukehren.

2. Der Wissensbot sollte in der Lage sein, einfache Aufgaben wie das Buchen einer Demo des Produkts auszuführen.

3. Der Knowledge Bot sollte beim ersten Mal die richtigen Informationen über die ausgewählte Domain (in diesem Fall das Plattformangebot) korrekt bereitstellen, anstatt eine sehr breite Domain mit Antworten abzudecken, die zu ~ 70–80% korrekt sind.

4. Es sollte zwar die Möglichkeit bieten, NLU durchzuführen und Benutzeranfragen zu verstehen, aber die allgemeine Kritikalität dieser Anfragen ist begrenzt. Als solches gibt es im Allgemeinen wenig Bedarf an kontextbezogenem Chatten für den Fall eines Wissensbot.

Ich begann mit der Bewertung der auf dem Markt verfügbaren Chatbot-Frameworks hinsichtlich der Parameter Kosten, Flexibilität, Benutzerfreundlichkeit, Wartbarkeit, Skalierbarkeit, Entwicklungsfreundlichkeit, zukünftige Erweiterbarkeit, Integration, Community-Unterstützung und konzentrierte mich auf unter 2 Plattformen.

i) Rasa - „Rasa ist die führende KI-Plattform für Konversationen für personalisierte Konversationen in großem Maßstab. Mit Rasa können alle Teams in großem Maßstab personalisierte, automatisierte Interaktionen mit Kunden erstellen. Rasa bietet Infrastruktur und Tools, die für den Aufbau der besten Assistenten erforderlich sind - solche, die die Kommunikation der Kunden mit Unternehmen entscheidend verändern. “ - Von Rasas Seite.

- Zu den herausragenden Merkmalen gehören -

  • Die NLU-basierte Standard-NLU-Engine ist Open Source.
  • Kommt mit Open Source (eingeschränkte Funktionen) und kostenpflichtiger Unternehmenslizenz (mehr Funktionen).
  • Erstellung von Chatbots, die eher auf Entwickler ausgerichtet sind.
  • Unterstützt erweiterte Funktionen wie das Aufrufen einer externen API, die Identifizierung von Absichten, das Füllen von Steckplätzen usw.
  • Kann in die Website eingebettet werden. On-Prem / Cloud-Bereitstellung. Die Erstellung von Chatbots mithilfe von Storys und Trainingsdaten (entwicklerorientiert) erfolgt nicht über ein webbasiertes GUI-Framework.
  • Gute Community-Unterstützung.
  • Die Plattform basiert auf KI, wobei Trainingsdaten der Schlüssel zur Verbesserung der Leistung sind. Kein Flow-basiertes Stück Black Box.

ii) Botpress - „Botpress ist eine Open-Source-Plattform für Entwickler, um hochwertige digitale Assistenten zu erstellen. Wir haben den Boilerplate-Code und die Infrastruktur zusammengestellt, die Sie benötigen, um einen Chatbot zum Laufen zu bringen. Wir schlagen Ihnen eine vollständige dev-freundliche Plattform vor, die alle Tools enthält, die Sie zum Erstellen, Bereitstellen und Verwalten von Chatbots in Produktionsqualität in Rekordzeit benötigen. “ - von der Botpress-Site.

- Zu den herausragenden Merkmalen gehören –-

  • Die NLU-basierte Standard-NLU-Engine ist Open Source.
  • Kommt mit Open Source (eingeschränkte Funktionen) und kostenpflichtiger Unternehmenslizenz (mehr Funktionen).
  • GUI-basierte Erstellung von Chatbots.
  • Unterstützt erweiterte Funktionen wie das Aufrufen einer externen API, die Identifizierung von Absichten und Entitäten, das Füllen von Steckplätzen usw.
  • Kann in die Website eingebettet werden. On-Prem / Cloud-Bereitstellung, aber Bereitstellung einer Weboberfläche.
  • Gute Community-Unterstützung.
  • Hauptsächlich Flow-basiert mit Unterstützung für NLU-Funktionen. Debugger-Unterstützung und -Kontrolle.

Die Hauptstärke von Rasa liegt in seiner NLU-Engine und dem damit verbundenen kontextbezogenen Chat-Erlebnis. Mit Kontext meine ich, dass jede Eingabe vom Benutzer im Kontext der laufenden Konversation genommen und dann beantwortet wird. Das Trainieren des Bots, um diese Konversationen richtig zu machen, erfordert jedoch viel Aufwand, Rechenaufwand und Fähigkeiten. Mit zunehmender Konversationsdomäne steigt die Gesamtzahl der zu schreibenden Geschichten exponentiell an.

Auf der anderen Seite verwendet Botpress eine Mischung aus KI und regelbasierter Engine, um das Chat-Erlebnis für den Benutzer zu schaffen. Es ist nicht so stark in der kontextbezogenen Konversation, verfügt jedoch über ein umfangreiches GUI-Angebot für die Bereitstellung von geführten Informationen.

Als Senior Data Scientist hatte ich zunächst das Gefühl, mich für Rasa zu entscheiden (Sie wissen, dass das kontextbezogene KI-Angebot attraktiv klingt), aber nachdem ich die Vor- und Nachteile in Bezug auf die jeweilige Aufgabe bewertet hatte, fand ich, dass Botpress besser für die Erstellung geeignet ist Wissensbot mit Kombination aus regelbasierter Führung und NLU-basierten Ad-hoc-Fragen (QnA-Funktion von Botpress) angesichts der Zeit- und Ressourcenbeschränkungen, die wir normalerweise in IT-Projekten haben.

Im Folgenden finden Sie die Funktionen, die Knowledge-Bot-Entwickler im Bot-Framework beachten sollten. Ich habe auch erwähnt, wie Botpress diese erfüllt.

1. Chatbot-Trendbericht 2021

2. 4 DOs und 3 DON'Ts zum Trainieren eines Chatbot-NLP-Modells

3. Concierge-Bot: Behandeln Sie mehrere Chatbots von einem Chat-Bildschirm aus

4. Ein Expertensystem: Conversational AI Vs Chatbots

Einfache Entwicklung - Wie schnell können Sie eine Basisversion Ihres Wissensbot in Betrieb nehmen? Benötigt es sehr spezielle Fähigkeiten oder können sogar die Bürgerdatenwissenschaftler damit arbeiten? Wie einfach ist es, den Bot umzubenennen?

Mit Botpress können Sie einen Bot mit Grundkenntnissen über die grafische Benutzeroberfläche in ein paar Wochen ohne jegliche Codierung zum Laufen bringen. Es bietet auch eine einfache Möglichkeit, den Bot zu brandmarken, indem Sie einfach das Stylesheet ändern. Es bietet Widgets wie Karten und Karussells, um die Informationen auf eine GUI-reiche Weise zu teilen.

Integration - Bots müssen immer in das Hauptportal integriert sein und auch andere Kanäle (z. B. Microsoft Team) unterstützen. Bei der Auswahl des Bot-Frameworks sollten wir prüfen, ob diese Integrationen nativ bereitgestellt werden und mit minimalem Aufwand durchgeführt werden können.

In Botpress ist die Integration mit der Hauptsite mit nur einem einzigen Skript sehr einfach, um den Bot in einem Iframe zu öffnen. Es bietet auch die Integration mit anderen Kanälen wie Facebook, Telegramm, Microsoft Teams und Slack, um nur einige zu nennen.

Zukünftige Erweiterbarkeit - Während der anfängliche Wissensbot möglicherweise mit einem begrenzten Umfang beginnt, wird der Umfang weiter zunehmen, sobald das Management seine Vorteile erkennt. Der Bot ist möglicherweise nicht mehr auf die Bereitstellung von Informationen beschränkt, sondern erwartet auch einfachere Aufgaben wie das Buchen einer Demo usw. Daher ist es wichtig, dass das ausgewählte Bot-Framework diese Funktionen unterstützt.

Botpress bietet Erweiterungen zum Schreiben von benutzerdefiniertem Code zum Aufrufen von Backend-APIs zur Ausführung komplexer Aufgaben. Die Funktionen wie Absicht, Entität und Slots werden verwendet, um die Absicht des Benutzers zu erfassen, bestimmte Aufgaben auszuführen, indem die richtige Entität identifiziert wird, die erforderlichen Werte mithilfe von Slots erfasst werden und Ihr benutzerdefinierter Code die Back-End-API aufruft, um die Aufgaben auszuführen. Diese Aufgaben können vom Senden einer E-Mail über die Buchung eines Konferenzraums oder eines Flugtickets bis hin zur Bestellung einer Pizza reichen.

Skalierbarkeit - Oft müssen Sie den Wissensbot für den Internetverkehr erstellen. Daher ist es sehr wichtig, dass das von Ihnen ausgewählte Bot-Framework skaliert werden kann.

Botpress verfügt über eine Cluster-basierte horizontal skalierbare Architektur. Man kann einen Load Balancer nutzen, um den Datenverkehr auf Bots zu verteilen.

Wartbarkeit - Wie bei allen IT-Projekten handelt es sich nie um ein Bereitstellungs- und Vergessensszenario. Wir leben in der Welt von DevOps, in der die Anwendung kontinuierlich in der Produktion bereitgestellt wird. Daher ist es von größter Bedeutung, dass das Bot-Framework über ein Modell verfügt, das sich mit Skalierung und Komplexität befasst, insbesondere wenn Sie nach einer GUI-basierten Entwicklung suchen.

In Botpress erfolgt die Entwicklung durch Erstellen eines Flussdiagramms, der Aufbau ist modular. Es können Unterflüsse mit für den Unterfluss definiertem Eintritts- und Austrittspunkt erstellt werden. Auf diese Weise können wir die Wissensbots mit vielen einfacheren, kleineren Flows anstelle eines großen Flows erstellen.

NLU - Während der geführte Fluss gut für die Bereitstellung der Informationen ist, reicht dies allein nicht aus. Die Hauptabsicht der Bereitstellung eines Bots besteht darin, dass der Benutzer in der Lage sein sollte, so zu chatten, als ob sich eine Person hinter dem Bot befindet. Dies bedeutet, dass der Bot in der Lage sein sollte, die Nuancen der Sprache zu verstehen und eine angemessene Antwort zu geben.

In Botpress gibt es ein QnA-Modul, mit dem Sie zufällige Fragen beantworten können, die der Benutzer möglicherweise zu dem Produkt stellt. Sie können mehrere Fragen gegen eine Antwort stellen und die Botpress NLU-Engine trainieren, um die Fragen gegen Semantik und Grammatik zu neutralisieren. Obwohl die NLU-Engine nicht so leistungsstark ist wie die von Rasa, habe ich festgestellt, dass sie dem Zweck entspricht. Wir hatten ungefähr 110 Antworten, die wir gegen ~ 1100 Fragen trainieren konnten. Nach dem Training stellte ich fest, dass die NLU-Engine gute Arbeit geleistet hat und uns in mehr als 97% der Fälle die richtigen Antworten gegeben hat. Botpress NLU-Engines nutzen 2 Dienste -

a) Entlein - Zum Extrahieren von Systementitäten, die es bei der Ausführung von Aufgaben, die auf Entitäten und Zeitnischen basieren, robuster machen (z. B. Bestellung einer Pizza oder Buchung eines Flugtickets).

b) Sprachserver - Hiermit werden die Worteinbettungen bereitgestellt und mehrere Sprachen unterstützt.

Kontextwechsel - Der Übergang zwischen Adhoc-Fragen und einem geführten Ablauf sollte nahtlos sein. Die Flows sollten nicht sehr lang sein, dem Benutzer Haltepunkte bieten, an denen er die Fragen stellen und dann bei Bedarf wieder zum Flow zurückkehren kann.

Mit der in Botpress bereitgestellten Funktion "Flow Wide Transitions" kann der Kontextwechsel zwischen einer geführten Tour und zufälligen Fragen einfach implementiert werden. Im Frage- und Antwortbereich bietet Botpress außerdem die Möglichkeit, zu einem Knoten zurückzukehren, der Teil der geführten Tour ist, und den Benutzer zur geführten Tour zurückzubringen.

Es gibt andere Funktionen von Botpress, wie z. B. Mehrsprachigkeit, Dockerisierung, Human In the Loop, Verwendung von NLU von Drittanbietern, SSO-Integrationen, Clustering, Überwachung und Änderung sowie starke Community-Unterstützung, die das Gesamterlebnis robuster machen kann.

Zusammenfassung - Wenn Sie das nächste Mal in kurzer Zeit einen Wissensbot erstellen möchten, sollten Sie ein Bot-Framework in Betracht ziehen, das sowohl die regelbasierten als auch die NLU-basierten Engines nutzt. Botpress ist ein starker Anwärter auf dasselbe, insbesondere wenn Kosten und ROI ein entscheidender Faktor sind.

Abhinav Ajmera

Leitender Datenwissenschaftler, Atos

Die Meinung des Autors ist persönlich und der Autor ist in keiner Weise mit Botpress verbunden.

Source: https://chatbotslife.com/knowledge-bots-5536c16b8d32?source=rss—-a49517e4c30b—4

Zeitstempel:

Mehr von Chatbots Leben - Mittel