Funktionsweise von Azure Bot Service

Abgeschlossen

In dieser Lektion erfahren Sie, wie Bot Framework Composer Sie dabei unterstützt, Bots in einem interaktiven visuellen Designer zu entwerfen. Sie erfahren, wie Sie in Bot Framework Composer Ihren Bot mit KI- und Sprachfunktionen erweitern. Außerdem erhalten Sie grundlegende Kenntnisse darüber, wie Sie einen Bot erstellen, Botfunktionen erweitern und einen Bot in Azure Bot Service veröffentlichen.

Wie sieht die Architektur eines Botpakets aus?

Azure Bot Service und Bot Framework unterstützen den gesamten Boterstellungsprozess. Hierzu gehören Entwurfs-, Erstellungs-, Test- und Veröffentlichungsaufgaben.

Botentwickler verwenden Bot Framework Composer, um ein Botpaket zu erstellen. Dieses Paket enthält die Botlogik sowie Details zu Botintegrationen und -verbindungen, einschließlich Eingabekanälen und Authentifizierung. Darüber hinaus enthält das Botpaket sämtlichen benutzerdefinierten Botcode Azure Bot Service hostet das Botpaket. Sie können sich eine Azure Bot-Instanz als Azure-Web-App mit einigen zusätzlichen Features vorstellen, die den primären Endpunkt für die Botinteraktion bereitstellt. Über Bot Service können Benutzer mit dem Bot interagieren. Gleichzeitig kann der Dienst eingehende und ausgehende REST-Interaktionen für externe Kanäle und andere Integrationen verwalten.

Hinweis

Das Botpaket kann auch mithilfe des Bot Framework-SDK über Visual Studio oder Visual Studio Code gewartet werden.

Diagramm der Azure Bot Service-Architektur.

Berücksichtigung der Art von Bot, die erstellt werden soll

Vor dem Entwickeln Ihres Bots müssen Sie entscheiden, welche Art von Bot Sie erstellen. Berücksichtigen Sie bei Ihrer Entscheidung die folgenden Fragen:

  • Wofür wird Ihr Bot verwendet? Legen Sie fest, welche Art von Bot Sie erstellen möchten. Das Planen hilft Ihnen dabei, die Funktionalitäten zu definieren, die Sie implementieren möchten.

  • Welche Probleme soll Ihr Bot lösen? Geben Sie eine klare Antwort. Das Lösen von Problemen für Kunden ist einer der Hauptaspekte, die bei der Erstellung von Bots von Bedeutung sind. Sie sollten z. B. auch darüber nachdenken, wie Sie das Problem des Benutzers besser, einfacher oder schneller als mit alternativen Möglichkeiten beheben können.

  • Wer verwendet Ihren Bot? Wenn Sie einen Bot entwerfen, werden Sie wohl auch erwarten, dass er von Benutzern verwendet wird. Verschiedene Kunden haben unterschiedliche Erwartungen an die Benutzerfreundlichkeit. Kenntnisse über Ihre Zielgruppe helfen Ihnen dabei, zu ermitteln, wie komplex Ihr Bot sein sollte. Denken Sie darüber nach, welche Sprachen Sie für den Bot implementieren sollten.

    Tipp

    Eine hohe Benutzerfreundlichkeit sollte beim Entwerfen eines Bots oberste Priorität haben.

  • Wo wird Ihr Bot verwendet? Sie müssen entscheiden, auf welchen Plattformen Ihr Bot ausgeführt werden soll. Beispielsweise können bei einem Bot, der für die Ausführung auf mobilen Geräten konzipiert ist, Features wie das Senden von SMS-Nachrichten (Short Message Service) erforderlich sein.

    Wichtig

    Die Veröffentlichung unterscheidet sich je nach Plattform.

Entwickeln der Kernfunktionalität von Bots in Bot Framework Composer

Sie können Composer zum Entwerfen, Erstellen, Erweitern und Testen von Bots verwenden. Composer ist eine Canvas für visuelle Bearbeitung bei der Erstellung von Bots. Dieses Tool ist in der Regel der Ausgangspunkt für den Erstellungsprozess in Azure Bot Service.

Mit dem visuellen Designer von Composer können Sie die Kernfunktionalität Ihres Bots auf intuitive Weise entwickeln. Sie können damit:

  • Fügen Sie Ihrem Bot mit QnA Maker Funktionen zum Verstehen natürlicher Sprache hinzu. Sie können Funktionen wie LUIS (Language Understanding Intelligence Service), QnA oder FAQ verwenden.
  • Erstellen von Text- und Sprachvariationsantworten für Ihren Bot mithilfe von Language-Generation-Vorlagen
  • Erstellen von Bots in mehreren Sprachen
  • Testen Ihres Bots direkt in Composer mithilfe eines eingebetteten Webchats
  • Veröffentlichen Sie Bots in Azure App Service und Azure Functions.
  • Integrieren Sie externe Dienste wie LUIS-Apps und QnA Maker-Wissensdatenbanken.

Erstellen von Dialogen und Konversationsabläufen

Dialoge steuern die Unterhaltungen zwischen einem Bot und den Benutzern. Dialogfelder enthalten Vorlagen für Language-Generation-Antworten, die Botantworten und Anweisungen dafür definieren, wie Aufgaben durch einen Bot ausgeführt werden. Beispiel: Das Reservieren eines Tischs für ein Abendessen im Restaurant oder das Erstellen eines Outlook-Kalenderelements.

Viele Dialoge sind linear aufgebaut und bestehen aus einer einfachen Abfolge von Fragen und Antworten. Einige Dialoge verfügen jedoch auch über eine komplexere Konversationslogik. Diese Logik kann Verzweigungen, Schleifen sowie kontextbasierte dynamische und adaptive Dialoge enthalten. Bei diesen Arten von Dialogen werden in der Regel externe Daten verwendet und zustandsbehaftete Konversationsdaten beibehalten, und sie enthalten erforderliche Unterbrechungen der Unterhaltung.

Einschließen externer Flows mit Skills und anderen Bots

Sie können komplexere Konversationsabläufe erstellen, indem Sie Composer-Skills, NuGet-Pakete und sogar andere Azure Bot Service-Bots in Ihren Bot importieren. Sie können eine geschachtelte Reihe von Bots erstellen, um die Sammlung von Botfunktionalitäten modularer und wiederverwendbarer zu gestalten. Diese kleineren modularen Komponenten können Sie dann verschieden miteinander kombinieren, um eine Reihe von Funktionen für verschiedene übergeordnete Bots bereitzustellen. Sie könnten beispielsweise einen Bot für einen Konversationsablauf rund um die Verwaltung von Kalendereinträgen mit Eingaben und Antworten wie „Wann ist mein nächstes Meeting?“ oder „Benötigen Sie einen Meetingraum?“ erstellen. Indem Sie den Bot als Skill packen, können Sie den Skill (und die zugehörige Funktion für die Unterhaltung zum Thema Kalender) problemlos in jeden anderen Bot integrieren, den Sie erstellen.

Verwenden von Karten, Bildern und Schaltflächen zur Verbesserung der Konversation

Sie können verschiedene visuelle und interaktive Methoden verwenden, um die Konversation für die Benutzer Ihres Bots zu verbessern. Verwenden Sie Karten, um umfangreiche text-, bild- und schaltflächenbasierte Inhalte zu erstellen und den Benutzern eine interaktivere Oberfläche zu bieten als bei reinem Text. Composer bietet verschiedene Kartentypen, einschließlich Miniaturansicht, Anmeldung, Audio und Video.

Erweitern von Language Understanding und Intelligence mit LUIS und QnA Maker

LUIS bietet die Verarbeitung von natürlicher Sprache mit einem vollständigen Absichts- und Entitätsverwaltungssystem. Sie können entweder zuvor erstellte LUIS-Apps integrieren oder neue Apps in Composer erstellen, um Ihrem Bot stabile Funktionen zum Verstehen natürlicher Sprache hinzuzufügen.

QnA Maker ist ein cloudbasierter Dienst, mit dem Sie Frage-Antwort-Paare aus bestehenden Dokumenten und Websites im FAQ-Stil extrahieren können. Diese Informationen können Sie dann in eine Wissensdatenbank importieren, die von Wissensexperten manuell kuratiert werden kann. Anschließend können Sie Ihren Bot mit einer Frage-Antwort-Wissensdatenbank integrieren. Diese Integration ermöglicht es Ihnen, für eine beliebige Eingabe in natürlicher Sprache die am besten geeignete Antwort zu finden.

Testen Ihres Bots mit dem Webchat

Mit dem Webchat können Sie die Funktionalität Ihres Bots direkt in Composer testen. Der Webchat führt Ihren Bot in einer lokalen Botruntime aus. Dies bedeutet, dass Sie Ihren Bot lokal auf Ihrem Entwicklungscomputer testen können, ohne ihn in Azure veröffentlichen zu müssen. Der Webchat verfügt über Funktionen zum vollständigen Debuggen, Aufzeichnen von Transkripten und Überprüfen des Botstatus zum Testen aller Aspekte von Botfunktionen.

Hinzufügen von Middleware und Erweitern der Botfunktionalität mit dem Bot Framework-SDK

Um Botquellcode zu bearbeiten und die Botfunktionalität zu erweitern, können Sie Visual Studio, Visual Studio Code oder die unterstützte IDE Ihrer Wahl mit dem Bot Framework-SDK verwenden. Packen und veröffentlichen Sie Bots als NuGet-Pakete. Importieren Sie diese Pakete für eine einfache Integration in Composer. Während des gesamten Bot-Entwicklungslebenszyklus können Sie nahtlos zwischen Composer und dem Bot Framework-SDK wechseln. Durch diese Mobilität wird sichergestellt, dass Sie für Entwicklungsaufgaben immer das effektivste Tool verwenden.

Veröffentlichen Ihres Bots in Azure

Azure Bot Service hostet Botfunktionalitäten in Azure. Veröffentlichen Sie Bots direkt über die Composer-Schnittstelle, und erstellen Sie so eine vollständige Entwicklungsumgebung in Composer.

Azure Bot Service hostet einen Bot in einer Azure-Web-App-Ressource. Diese Ressource enthält den Code, die Logik und die grundlegenden HTTP-REST-Endpunkte für die Konnektivität mit externen Ressourcen. Azure Bot Service stellt auch vorgefertigte Bot Service-Kanäle bereit. Bot Service-Kanäle bieten eine Adapterebene, die die Botinteraktion an ein anderes Chatdienstprotokoll wie Facebook, Slack, Teams oder Telefonie anpasst.

Wenn Sie Ihren Bot über Composer veröffentlichen, können während des Veröffentlichungsprozesses auch abhängige Azure-Ressourcen erstellt oder importiert werden. Zu diesen Ressourcen gehören LUIS, der QnA Maker, Azure Cosmos DB, Application Insights und der Blob Storage.