Microsoft Azure und sein Bot Framework

Azure ist die Microsoft Cloud-Computing Plattform mit zahlreichen IT Diensten, die an Softwareentwickler gerichtet sind. Für folgende IT Produkt wird Azure verwendet:

  • SaaS: Software as a Service
  • IaaS: Infrastructure as a Service
  • PaaS: Platform as a Service

Das Bot Framework besteht hauptsächlich aus drei Schlüsselkomponenten:

  1. Bot Builder: Software Development Kit: Hier kann der Entwickler auf Basis von .Net, Node.js oder REST API seine Bots entwickeln.
  2. Developer Portal: Hier kann ein fertiger Bot mit verschiedenen Plattformen wie Skype, Facebook, oder Kik verknüpft werden.
  3. Bot Directory ist eine Sammlung von Chatbots worunter Nutzer, Chatbots suchen und finden können.

Microsoft hat mit seinem Framework den Entwicklern einfach gemacht einen Bot zu entwickeln. Sie setzen sogar auf bekannte Protokoll-Standards, so dass eine Einarbeitung nicht notwendig ist. Ein wesentlicher Vorteil ist, dass ein Bot mit Hilfe von Web Control ein API schnell entwickelt und in verschiedene Anwendungen integriert werden kann.

LUIS (Language Understanding Intelligent Service):

Dieser Service ermöglicht einen Menschen zu verstehen, der in natürlicher Sprache schreibt. Er sucht nach „intent“ (Absicht) von einem Satz und dann werden die Entitäten (Objekte wie Alter, Temperatur, Kaufartikel etc.) gesucht. Die Entitäten sind zum Teil vormodelliert und weitere werden LUIS vom Anwender beigebracht.

Ein intent ist eine Aktion, welche der Nutzer vom Bot erwartet. Möglichkeiten für Intent:  Ticket buchen. Kalendereintrag einfügen, Fehler beheben;

Entities sind reale Objekte wie Personen, Ort, Organisation oder Produkt:

Dem System kann mit Beispielsätzen die Entität beigebracht werden. Der Bot baut sich ein Muster und wird nach einer Zeit selbst die Entitäten identifizieren.

Bei diesem Beispielsatz (siehe Abbildung) wird der intent „BookFlight“ identifiziert. Zu knapp 97 % besteht Gewissheit (Confidence), dass es bei dem Satz um diesen intent geht.

Ein Typischer Bot ist wie folgt aufgebaut:

  • Bot web service (inkl. Bot Code und Bot Builder SDK)
  • ) API, SDK ruft Microsoft Cognitive Services auf
  • ) SDK Bilder kommuniziert mit dem Bot Connector Service und dieser kommuniziert mit den anderen Kanälen wie Skype, Facebook, Slack etc.
Was sagen die anderen zu der Idee?