Wie 9 NLU-Bots in 5 Tagen mit reinen Low-Code-Integrationen erstellt wurden / Sudo Null IT News

Kurze Beschreibung des Projekts

In diesem Projekt standen wir vor der Aufgabe, mit einem Chatbot das CC zu entladen, sowie Fragen von Studenten und Schülern einer Gruppe von Bildungsorganisationen zeitnah und effizient zu beantworten.

Die Gruppe besteht aus 9 Bildungseinrichtungen, von denen jede eine eigene Website mit einem Widget und einem Telegram-Bot hat. Die letzten Kommunikationskanäle sind mit der Omnichannel-Plattform von Helpdeskeddy verbunden.

Die Chat-Bot-Plattform chatme.ai wurde als Low-Code-Plattform ausgewählt, um einen Bot zu erstellen und die Integration mit Helpdeskeddy einzurichten.

Integration mit Helpdeskeddy

Die Plattform chatme.ai hat keinen integrierten Connector zu Helpdeskeddy. Daher wird die Integration mit Helpdeskeddy innerhalb des Bots über HTTP-Anforderungen implementiert, und die Regeln zum Senden von Webhooks werden auf der Seite von Helpdeskeddy konfiguriert. Die Integrationsfähigkeiten des Plattformkonstrukteurs machten es möglich, eine solche Integration auch ohne einen eingebauten Konnektor schnell zu implementieren.

Bot-Erstellung

Zu Beginn erhielten wir eine Reihe von Absichten und Trainingsbeispielen zum Trainieren des NLU-Moduls, die Antworten des Bots auf Absichten und eine Beschreibung des Verhaltens des Bots, wenn er auf bestimmte Absichten trifft. Die Trainingsmuster ließen zu wünschen übrig, aber es war nicht genug Zeit, sie zu studieren, das Projekt wurde in Eile gestartet. Gleichzeitig verstand der Auftragnehmer, dass am Anfang mit der Erkennung nicht alles sehr gut sein würde und wir in der Lage wären, den Chatbot nach dem Start in die Produktion qualitativ auf echte Daten umzuschulen.

Absicht – die Absicht des Gesprächspartners in der zum Bot gesagten Bemerkung, die er erkennen muss.

Die Hälfte der Absichten war in allen Institutionen gleich, während die andere Hälfte unterschiedlich verteilt war. Laut Vertrag könnten wir nicht 9 verschiedene Bots mit 9 verschiedenen NLU-Modellen herstellen, die in Zukunft separat betreut und weiter trainiert werden müssten. Es wurde beschlossen, ein einziges NLU-Modell zusammenzustellen und zu prüfen, ob eine bestimmte Absicht für die Organisation geeignet ist, aus der der Gesprächspartner kam, und den Gesprächspartner in den Fallback zu schicken, wenn die Absicht nicht der Institution entspricht.

Zurückfallen – ein Skriptzweig, der für das Verhalten des Bots verantwortlich ist, wenn die Absicht nicht erkannt wird.

Während des Designprozesses entschieden wir uns, den Bot auf Plattformebene in zwei Teile zu unterteilen (NLU-Bot und Bot-Konnektor) und die Antworten des Bots in einer Google-Tabelle zu speichern, um schnell auf die Textbearbeitung zugreifen zu können.

Bestandteile des Systems:

  • Der einfachste NLU-Bot, der Fragen mit dem Namen der Absicht beantwortet, die er definiert hat. Tatsächlich ist dieser Bot ein NLU-Dienst, an den Sie eine Kopie des Gesprächspartners über die API senden und den Namen einer bestimmten Absicht zurückerhalten können. Die Fähigkeiten der Plattform ermöglichten die schnelle Zusammenstellung eines solchen Bots mit einer Excel-Tabelle als Eingabedatei.

  • Ein Connector-Bot, der die gesamte Logik im Zusammenhang mit der Integration mit Helpdeskeddy enthält und HTTP-Anforderungen an die NLU des Bots sendet, um die Absicht des Gesprächspartners zu ermitteln.

Diese Lösung ermöglichte es uns, die Arbeit am Bot in Module aufzuteilen, wodurch wir in der Lage waren:

  • Behandeln Sie den NLU-Bot separat, stellen Sie ihn mit einem Tool zum Generieren von Konfigurationsdateien aus Excel-Tabellen zusammen und ändern Sie das Trainingsset schnell nach Bedarf.

  • Arbeiten Sie separat in einem anderen Szenario mit dem Skriptszenario (in einigen Absichten mussten Sie dem Gesprächspartner klärende Fragen stellen, um die Absicht genauer zu bestimmen, und auch die Replik durch reguläre Ausdrücke überprüfen, um dasselbe Ziel zu erreichen) sowie mit Integrationsteil.

  • Speichern Sie die Antworten des Bots in einer separaten Datenbank, wenn Änderungen daran vorgenommen werden, werden die Antworten automatisch in den Bot „gezogen“.

Der Hauptbot, der die Skriptlogik und die Integration mit Helpdeskeddy enthält, hat den folgenden Arbeitsalgorithmus:

  1. Erhält eine Anfrage von Helpdeskeddy über die öffentliche API von chatme.ai mit einer neuen Nachricht.

  2. Über die Helpdeskeddy-API erfährt es, von welcher Institution der Gesprächspartner kam.

  3. Überprüft das Replikat auf einen der automatischen Verbindungsauslöser des Betreibers:

  4. Sendet über die gemeinsame chatme.ai-API eine Kopie des Gesprächspartners an die NLU des Bots. Ruft den Namen einer bestimmten Absicht als Antwort ab.

  5. Sendet eine API-Anforderung an eine Tabelle, die die Korrespondenz zwischen Institutionen, Absichten und Antworten speichert. Als Antwort erhält er eine Antwort auf eine bestimmte Absicht für eine bestimmte Institution, aus der der Gesprächspartner stammt.

  6. Bei denjenigen Intents, die zusätzlich zur Textantwort die Ausführung eines komplexeren Szenarios (reguläre Ausdrücke, klärende Fragen) erforderten, enthält die Antwort des Bots eine Kontrollstruktur der Formularfunktion < --regex5-- >, oder z Beispiel: Funktion < --regex_or_operator- ->.

Wenn ein solches Konstrukt vorhanden ist, schneidet der Bot es aus der Antwort heraus, sendet die Antwort und führt das im Konstrukt angegebene Skript aus.

  1. Wenn der Intent nur eine Textantwort erfordert, sendet der Bot diese über die Helpdeskeddy-API an den Gesprächspartner.

Während des Arbeitsprozesses bestand die Hauptschwierigkeit darin, eine Lösung zu entwerfen, die es uns ermöglicht, das Problem schnell zu lösen und das vertraglich festgelegte Budget nicht zu überschreiten. Hat es innerhalb von 5 Werktagen geschafft.

Ergebnisse

Im Durchschnitt des ersten Betriebsmonats schloss der Bot 33 % der Anfragen alleine (selbst wenn man berücksichtigt, dass die anfängliche Trainingsstichprobe anfangs von sehr schlechter Qualität war). Darüber hinaus begann der Kunde, den Bot selbstständig zu trainieren und konnte noch höhere Erkennungsergebnisse erzielen als geplant.

Similar Posts

Leave a Reply

Your email address will not be published.