Was ist das Bot Framework SDK?

GILT FÜR: SDK v4

Microsoft Bot Framework und Azure KI Bot Service sind eine Sammlung von Bibliotheken, Tools und Diensten, mit denen Sie intelligente Bots erstellen, testen, bereitstellen und verwalten können. Das Bot Framework enthält ein modulares und erweiterbares SDK zum Erstellen von Bots und zum Herstellen einer Verbindung mit AI-Diensten. Mit diesem Framework können Entwickler Bots erstellen, die Sprache verwenden, natürliche Sprache verstehen, Fragen beantworten und vieles mehr.

Tipp

Eine Liste der Microsoft-Produkte und -Dienste zum Erstellen von Bots, deren Unterstützung sie unterstützen, und eine kurze Beschreibung der einzelnen Produkte finden Sie unter Auswählen der richtigen Chatbot-Lösung für Ihren Anwendungsfall.

Was ist ein Bot?

Bots bieten eine Benutzeroberfläche, die weniger an die Verwendung eines Computers und mehr an den Umgang mit einer Person erinnern – oder einem intelligenten Roboter. Bots eignen sich für einfache, wiederkehrende Aufgaben, wie etwa die Annahme von Essensreservierungen oder das Sammeln von Profilinformationen, die von automatisierten Systemen ohne direktes menschliches Eingreifen ausgeführt werden können. Benutzer kommunizieren mit einem Bot mithilfe von Text, interaktiven Karten und Spracheingabe/-ausgabe. Bei einer Botinteraktion kann es sich um eine kurze Frage und Antwort oder auch um eine komplexe Konversation handeln, die auf intelligente Weise den Zugriff auf Dienste bereitstellt.

Eine Möglichkeit, einen Bot zu betrachten, ist eine Webanwendung mit einer unterhaltungsbasierten Schnittstelle. Ihre Benutzer stellen über einen Kanal, z. B. Facebook, Slack, Microsoft Teams oder eine benutzerdefinierte Anwendung, eine Verbindung mit Ihrem Bot her.

  • Je nachdem, wie der Bot konfiguriert ist und wie er beim Kanal registriert wird, können Interaktionen text- oder sprachabhängig sein und Bilder und Videos enthalten.
  • Der Bot verarbeitet die Eingabe des Benutzers, um zu interpretieren, was der Benutzer gefragt oder gesagt hat.
  • Der Bot wertet Eingaben aus und führt relevante Aufgaben aus, z. B. den Benutzer um zusätzliche Informationen oder Zugriffsdienste im Namen des Benutzers bitten.
  • Der Bot antwortet auf den Benutzer, um sie darüber zu informieren, was der Bot tut oder was getan hat.

A remote bot interacts with a user on a device via text, speech, images, or video.

Bots werden häufig als Webanwendung implementiert, in Azure gehostet und mit APIs zum Senden und Empfangen von Nachrichten verwendet. Der Inhalt eines Bots fällt je nach Art und Zweck des Bots sehr unterschiedlich aus. Ein Bot kann Nachrichten empfangen und sie wieder an den Benutzer senden, mit wenig Code. Ein komplexerer Bot kann sich auf verschiedene Tools und Dienste verlassen, um umfangreichere Erfahrungen auf einer Vielzahl von Plattformen bereitzustellen.

Bots sind zu denselben Dingen wie andere Arten von Software in der Lage – Lesen und Schreiben von Dateien, Verwenden von Datenbanken und APIs und Durchführen von regulären Berechnungsaufgaben. Was Bots einzigartig macht, ist die Verwendung von Mechanismen, die in der Regel auf die Kommunikation zwischen Menschen beschränkt sind.

Azure KI Bot Service und Bot Framework beinhalten:

  • Bot Framework-SDKs für die Entwicklung von Bots in C#, JavaScript, Python oder Java. (Das Java SDK wird ab November 2023 mit endgültiger langfristiger Unterstützung eingestellt.)
  • CLI-Tools zur Unterstützung bei der End-to-End-Bot-Entwicklung.
  • Bot-Konnektor-Dienst zum Senden und Empfangen von Nachrichten und Ereignissen zwischen Bots und Kanälen
  • Azure-Ressourcen für die Bot- und Konfigurationsverwaltung.

Darüber hinaus können Bots andere Azure-Dienste verwenden, beispielsweise:

  • Azure KI Services zum Erstellen intelligenter Anwendungen
  • Azure Storage für Cloudspeicherlösungen

Erstellen eines Bots

Azure KI Bot Service und Microsoft Bot Framework bieten eine integrierte Reihe von Tools und Diensten, mit denen Sie Bots über alle Phasen des Bot-Lebenszyklus entwerfen und erstellen können. Es sind SDKs für C#, Java, JavaScript, TypeScript und Python verfügbar. Wählen Sie Ihre bevorzugte Entwicklungsumgebung oder Befehlszeilentools, um Ihren Bot zu erstellen.

Illustration of the steps in the bot life cycle.

Planen

Wie bei jeder Art von Software ist ein umfassendes Verständnis der Ziele, Prozesse und Benutzeranforderungen für das Erstellen eines erfolgreichen Bots wichtig. Sie können einen einfachen Bot erstellen oder komplexere Funktionen wie Spracheingabe, Verständnis natürlicher Sprache oder Beantwortung von Fragen hinzufügen.

Machen Sie sich vor dem Schreiben von Code mit den Entwurfsrichtlinien für Bots vertraut, um Informationen zu bewährten Methoden und Anforderungen für Ihren Bot zu erhalten.

Erstellen

In der Regel ist ein Bot ein in Azure gehosteter Webdienst. In Azure können Sie Ihren Bot so konfigurieren, dass Nachrichten und Ereignisse aus verschiedenen Kanälen gesendet und empfangen werden. Sie können Bots in einer beliebigen Anzahl von Umgebungen und Sprachen erstellen. Sie können einen Bot für die lokale Entwicklung erstellen.

Mit Azure KI Bot Service und Bot Framework können Sie andere Bibliotheken und Dienste verwenden, um die Funktionalität Ihres Bots zu erweitern. In dieser Tabelle werden einige der vom SDK unterstützten Features beschrieben.

Funktion BESCHREIBUNG Weitere Informationen
Arbeitsspeicher und Speicher Konsistenter Benutzer- und Konversationsstatus Verwalten des Zustands
Natürliches Sprachverständnis Interpretieren und Extrahieren von Informationen aus Benutzereingaben Sprachverständnis
Rich Cards Kombinieren von Text und anderen Medien, z. B. Bilder, Audio, Video und Schaltflächen Hinzufügen von Medien und Karten

Befehlszeilentools, mit denen Sie Bot-Ressourcen erstellen, verwalten und testen können. Weitere Informationen finden Sie unter Azure CLI und Bot Framework-Tools.

Vollständige Codebeispiele finden Sie im Bot Framework-Beispiel-Repository. In den Beispielen werden viele Funktionen des SDK veranschaulicht.

Testen

Bots sind komplexe Apps, bei denen viele verschiedene Komponenten zusammenarbeiten. Wie bei jeder komplexen App kann dies zu einigen interessanten Fehlern führen oder bei Ihrem Bot ein anderes Verhalten als das erwartete verursachen. Testen Sie Ihren Bot vor der Veröffentlichung. Wir bieten mehrere Methoden zum Testen von Bots, bevor sie zur Verwendung freigegeben werden:

  • Lokales Testen des Bots mit dem Bot Framework Emulator. Bot Framework Emulator ist eine eigenständige App, die nicht nur über eine Chatschnittstelle, sondern auch über Debug- und Abfragetools verfügt. Mit diesen Tools können Sie ermitteln, wie Ihr Bot funktioniert und warum bestimmte Vorgänge durchgeführt werden. Der Emulator kann neben Ihrer in der Entwicklung befindlichen Botanwendung lokal ausgeführt werden.

  • Testen Sie Ihren Bot im Web. Nachdem er über das Azure-Portal konfiguriert wurde, ist Ihr Bot auch über eine Webchat-Schnittstelle erreichbar. Die Webchat-Schnittstelle eignet sich sehr gut, um Testern und anderen Personen, die nicht direkt auf den ausgeführten Code zugreifen können, Zugriff auf Ihren Bot zu gewähren.

  • Unittesten Sie Ihren Bot mit dem aktuellen Bot Framework SDK.

Veröffentlichen

Wenn Sie bereit sind, Ihren Bot im Web verfügbar zu machen, veröffentlichen Sie ihn in Azure oder in Ihrem eigenen Webdienst oder Rechenzentrum. Für das Aktivieren Ihres Bots auf Ihrer Website oder in Chatkanälen benötigen Sie zuerst eine Adresse im öffentlichen Internet.

Verbinden

Verbinden Sie Ihren Bot mit Kanälen wie Facebook, Messenger, Kik, Slack, Microsoft Teams, Telegram, Text/SMS, Twilio und Cortana. Bot Framework übernimmt den Großteil der erforderlichen Aufgaben für das Senden und Empfangen von Nachrichten über alle diese verschiedenen Plattformen. Ihre Botanwendung empfängt unabhängig von Anzahl und Typ der Kanäle, mit denen sie verbunden ist, einen einheitlichen, normalisierten Nachrichtenstrom. Informationen zum Hinzufügen von Kanälen finden Sie im Thema Kanäle.

Evaluieren

Verwenden Sie die im Azure-Portal gesammelten Daten, um Möglichkeiten zur Verbesserung der Funktionen und der Leistung Ihres Bots zu ermitteln. Sie können einen Servicelevel und Instrumentierungsdaten wie Datenverkehr, Latenz und Integrationen abrufen. Analytics bietet außerdem Berichterstellung zu Benutzer, Nachricht und Kanaldaten auf Konversationsebene. Weitere Informationen hierzu finden Sie im Artikel zum Erfassen von Analysen.

Nächste Schritte