Wie Bots, AI und Microsoft Cognitive Services die moderne Kollaboration verändern

Collaboration 3.0: Bots, AI und Cognitive Services
Keine Kommentare

Wir leben in einer Zeit, in der sich die Art und Weise der Kommunikation zwischen Menschen und Computern rasant verändert. Und auch für die zwischenmenschliche Kommunikation ergeben sich durch Maschinen ganz neue Möglichkeiten. Microsoft bietet eine Reihe an Services wie Bots, AI und Cognitive Services an, die die Transformation der Kommunikation zwischen Mensch und Maschine unterstützen.

Zurzeit laufen Microsofts Bemühungen bezüglich der Cloud auf Hochtouren. Sprüche wie „Cloud and mobile first“ und „Consumption is the new currency“ deuten auf eine klare Strategie von Microsoft hin: Die Zukunft liegt buchstäblich in den Wolken. Was hat das nun für einen Einfluss auf die Art und Weise, wie wir arbeiten? Die Power der Cloud kann für neue Arten von Zusammenarbeit und vor allem Effizienz in Zusammenarbeitsmethoden eingesetzt werden:

  1. Microsoft Cognitive Services
  2. Microsoft Bot Framework
  3. Microsoft Flow
  4. Microsoft Teams
  5. Modern SharePoint Communication Sites

Die schöne neue Welt von „Collaboration 3.0“

Mit den soeben genannten Themen bietet uns Microsoft eine umfangreiche Palette an Technologien an, die Businessapplikationen und Prozesse einen Quantensprung vorantreibt. Das Beste daran ist, dass diese Technologien auch von Nichtentwicklern eingesetzt werden können. Heutzutage spricht man von sogenannten „Citizen Developers“. Das bedeutet, dass technisch versierte User oder Super User intelligente Businessapplikationen bauen können, ohne eine Zeile Code schreiben zu müssen. Dies eröffnet natürlich eine ganz neue Welt von Möglichkeiten innerhalb eines Unternehmens.

Wenn Benutzer plötzlich selbst in der Lage sind, Businessapplikationen zu erstellen, ändert dies die Art und Weise, wie wir arbeiten. In der 1.0-Welt wurden Businessapplikationen und Inhalte dem Benutzer von einer zentralen Stelle aus zur Verfügung gestellt. In der 2.0-Welt wurden den Benutzern Werkzeuge zur Verfügung gestellt, mit denen sie Inhalte selbst erstellen konnten. Die 3.0-Welt wird sich in Richtung Applikationen und Services bewegen: Benutzer können anderen Benutzern intelligente Services oder Applikationen zur Verfügung stellen, um die Arbeit effizienter zu gestalten. Microsoft ist schon heute bereit, Unternehmen diese Möglichkeiten zur Verfügung zu stellen. Allerdings stellt sich an dieser Stelle die Frage: Sind die Benutzer und Unternehmen überhaupt schon soweit? Zwar wird dieser Wandel innerhalb der Unternehmen meiner Meinung nach noch einige Jahre in Anspruch nehmen, dennoch befinden wir uns in einer sehr spannenden Zeit, in der wir künstliche Intelligenz buchstäblich per Mausklick in unsere Applikation einbinden können.

Wie Cognitive Services die Businessapplikationen transformieren

Cognitive Services sind ein Dienst von Microsoft, der es erlaubt, unsere Applikationen „intelligenter“ zu machen. Über ein öffentlich zugängliches API werden dabei Funktionalitäten angeboten, deren Nutzung ab einer gewissen Anzahl von Aufrufen (Consumption) kostenpflichtig werden. Zur reinen Entwicklung und zum Testen kann man den vollen Umfang der Dienste nutzen. Cognitive Services sind in sechs Hauptkategorien unterteilt (Abb. 1):

  1. Vision – Erkennung von Bildern
  2. Knowledge – Erkennung von Kontext aus Text
  3. Speech – Verstehen und übersetzen gesprochener Sprache
  4. Language – Verstehen und übersetzen geschriebener Sprache
  5. Search – Intelligente Suchfunktion von Inhalten, kontextbasiert
  6. Labs – Zukünftige APIs in Entwicklung
Abb. 1: Übersicht der Microsoft Cognitive Services

Abb. 1: Übersicht der Microsoft Cognitive Services

Mithilfe von Cognitive Services können Szenarien realisiert werden, in denen Applikationen die Umgebung des Benutzers identifizieren oder sogar seine Emotionen erkennen können. Anhand der dadurch gewonnenen Erkenntnisse können gewisse weitere Prozesse angestoßen werden, dazu später mehr.

Ein weiteres Beispiel für die Möglichkeiten von Cognitive Services ist das Erkennen von Textinhalten und Sentiments, was wiederum ebenfalls Prozesse anstoßen kann. Man stelle sich ein Szenario vor, in dem zwei Benutzer sich in Teams oder Yammer darüber unterhalten, wie ein gewisser Prozess funktioniert. Cognitive Services könnte das Thema erkennen und den Benutzern proaktiv eine Hilfestellung anbieten.

Vision – Erkennung von Bildern

Mit den verschiedenen Vision-APIs hat man die Möglichkeit, Inhalte von Bildern und Videos zu erkennen. Die Möglichkeiten reichen von Gesichtserkennung in Bildern bis zur automatischen Moderation von Text- und Videoinhalten sowie der Erkennung von Personen. Auch kann auf ihrer Grundlage ein eigenes Computer-Vision-Modell entwickelt werden, sofern die vorhandenen nicht ausreichen. So können gewisse Erkennungsmerkmale für spezifische Applikationen genau angepasst werden.

Knowledge – Erkennung von Kontext aus Text

Klassische Anwendungen für dieses API sind Q&A-Bot-Konversationen oder Vorschläge von Informationen basierend auf bereits gesammelten Informationen. Zum Beispiel können Knowledge-APIs in klassischen Knowledge-Management-Szenarien verwendet werden. Lerninhalte können dem Benutzer anhand seines Verhaltens im Intranet bereits vorgeschlagen werden. Mithilfe des Custom-Decision-Service können kontextbasierte Entscheidungsmechanismen eingebaut werden, die sich ständig weiterentwickeln, je mehr Informationen von den Benutzern eingegeben werden.

Speech – Verstehen und übersetzen gesprochener Sprache

Spracherkennung gewinnt seit Siri, Cortana und Alexa auch im Enterprise-Umfeld immer mehr an Bedeutung. Das Speech-API bietet Funktionalitäten wir Spracherkennung und Echtzeitübersetzungsdienste. Mit dem Bing-Speech-API kann Text in Sprache und umgekehrt auch Sprache in Text umgewandelt werden. Dadurch kann es einfacher werden, die Absicht eines Benutzers zu erkennen.

Language – Verstehen und übersetzen geschriebener Sprache

Mit der Hilfe von Language Understanding Intelligent Service (LUIS) ist man in der Lage, die Absichten eines Benutzers zu erkennen. LUIS wird in der Regel mit Bots verknüpft. Die Interaktion mit dem System und den Usern findet über diese Bots statt, und mit der Hilfe von LUIS lernt das System die Absichten des Benutzers kennen und wird so immer besser darin, die Benutzer des Systems zu verstehen. Wir reden hier also von Machine-Learning-Szenarien.

Search – Intelligente Suchfunktion in Inhalten, kontextbasiert

Suche ist heutzutage immer eine zentrale Funktion in jeder Applikation oder Lösung. Damit sie eine hohe Akzeptanz bei den Benutzern erhält, muss die Qualität der Resultate entsprechend hoch sein. Die Suchservices und -APIs werden von Bing zur Verfügung gestellt. Zu den durchsuchbaren Inhalten gehören verschiedene Arten von News, Entitäten, Bilder oder Videos. Mit Bing Custom Search können spezifische Suchroutinen implementiert werden, die dem Benutzer entsprechend Resultate zur Verfügung stellen. Zum Beispiel: „Zeige nur News mit den Inhalten <Cognitive Services>“.

Labs – Zukünftige APIs in Entwicklung

Dies sind Cognitive-Services-APIs, die zurzeit noch von Microsoft entwickelt werden. Lab-APIs können zu Testzwecken verwendet werden. Im Moment werden neue APIs in Gestenerkennung, Routenberechnung und Standortkontext entwickelt.

Zurzeit stellt Microsoft Entwicklern dreißig offizielle APIs zur Verfügung. Dabei handelt es sich bei sechzehn von ihnen aktuell noch um Preview-Versionen. Neue APIs kommen hinzu, existierende APIs werden ständig weiterentwickelt. Die Funktionalität in eine Applikation einzubinden, ist sehr einfach; mithilfe von Flow lassen sich Cognitive Services heute schon aufrufen, ohne dass eine Zeile Code geschrieben werden müsste.

Das Bot Framework als Schnittstelle zwischen Maschine und Mensch

Microsoft Flow ist die offizielle Ablösung von SharePoint Workflows. Obwohl Flow zurzeit im Detail noch nicht so viele Funktionalitäten wie SharePoint Workflows bietet, ist das Potenzial dieser Technologie bereits heute enorm, da Flow plattformunabhängig funktioniert. Das heißt, mit Flow sind wir in der Lage, verschiedene Systeme miteinander zu verknüpfen. Beispielsweise könnte das Erstellen eines Dokuments in einer SharePoint-Bibliothek einen Prozess auslösen, der dann in Dynamics 365 einen weiteren Prozess anstößt. Dies war bis heute nur mithilfe von Schnittstellen möglich, nun geht das bereits mit Flow out of the box. Über sogenannte „Connectors“ können verschiedene Systeme miteinander verknüpft werden (Abb. 2). Microsoft unterscheidet hier zwischen Free Connections und kostenpflichtigen Premium Connections. Flows sind immer persönlich, d. h. die Lizenzierung von Flow basiert auf der Anzahl an Usern, die mit Flow arbeiten sollen. Es gibt auch eine Gratisversion, in der allerdings der Zeitrahmen, in dem Flows angestoßen werden können, zeitlich begrenzt ist. Und wiederum bedeutet, dass mit der Gratisversion von Flow keine Echtzeitdateninteraktionen abgebildet werden können.

Abb. 2: Microsoft Flow

Abb. 2: Microsoft Flow

Flow dient hier buchstäblich als die „Spinne im Netz“ im Hintergrund aller Applikationen und ist der Service schlechthin, um Daten von A nach B zu bringen und sie zu transformieren.

Das Bot Framework

Im Unterschied zu Flow, das mehr im Hintergrund agiert, ist das Bot Framework an vorderster Front beim Enduser aktiv. Bots sollen die Interaktion zwischen Mensch und Maschine menschlicher machen. Das heißt, die Interaktion, die ich mit einer Applikation habe, basiert auf Konversationen anstatt der Eingabe von Befehlen, die die Applikation dann ausführt. Heutzutage werden Bots oft bei Suchzsenarien eingesetzt: Mithilfe des Bots kann ich mich durch verschiedene Suchresultate „durchfragen“. Wie man in Abbildung 3 sehen kann, interagiert der User durch einen Channel mit dem Bot. Channels sind klassischerweise Applikationen wie Skype, Teams, Cortana usw. Der Benutzer „unterhält“ sich mithilfe des Bots mit der Applikation. Heutzutage genießen Chat-Bots bei öffentlichen Websites immer mehr an Ansehen, da Benutzer meistens viel schneller an die gewünschten Informationen kommen. Weiterhin ist es für uns als Menschen natürlicher, nach Informationen zu fragen, statt ein System explorativ zu durchsuchen.

Abb. 3: Microsoft Bot Framework

Abb. 3: Microsoft Bot Framework

Nun haben wir uns einige Technologien angeschaut, die die Collaboration 3.0 – oder nennen wir sie „Smart Application Collaboration“ – ermöglichen. Der zweite Teil des Artikels wird sich einem Szenario zuwenden, in dem eine Vielzahl der besprochenen Technologien eingesetzt werden und das im realen Leben funktionieren könnte.

Superkräfte für Enduser dank Collaboration 3.0 – ein Beispiel aus der Praxis

Man stelle sich folgendes Szenario vor: Ein neuer Mitarbeiter im Key-Account-Management-Team hat von seinem Vorgesetzten die Aufgabe bekommen, ein Salesprojekt mit einem Kunden in Paris durchzuführen. Dazu muss der Account-Manager dem Kunden ein Dokument zur Verfügung stellen, auf dessen Basis der Kunde entscheiden soll, ob das Projekt mit dem Unternehmen durchgeführt werden soll oder nicht.

Der Account-Manager ist technisch nicht sehr versiert, seine Stärken befinden sich eher im zwischenmenschlichen Bereich. Nichtsdestotrotz muss der Mitarbeiter die ganze Abwicklung vom Verkaufsprozess bis zur Projekterstellung bei Zusage des Kunden durchführen. Mithilfe aktueller Technologie von Microsoft kann dies beinahe vollautomatisch bewerkstelligt werden:

  • Erkennung eines Problems mit dem Benutzer: In unserem Beispiel haben wir mithilfe des Face-API erkannt, dass der Benutzer frustriert ist. Dadurch wurde ein Bot „Alfred the Butler“ angestoßen, der den Benutzer fragt, ob er Hilfe benötigt (Abb. 4). In einem realen Szenario wäre ein anderer Trigger notwendig. Ständig die Kamera laufen zu lassen, um die Emotionen des Benutzers zu verfolgen, wäre nicht tragbar. Alternativ könnte man Sentiment-Analysen von Unterhaltungen in Channels durchführen, in denen sich zwei Kollegen darüber unterhalten, wie mit Dokumenten gearbeitet werden soll.
  • Echtzeitunterstützung des Benutzers: Nachdem der Bot das Problem des Benutzers erkannt hat, bietet der Bot verschiedene Vorschläge zur Hilfe an. In diesem Szenario fragt der User, wie Dokumente hochgeladen werden sollen. Der Bot fragt zurück, um welche Art von Dokumenten es geht und der User gibt an, dass es sich um das Salesdokument handelt. In einem weiteren Schritt bietet der Bot eine Echtzeitschulung für den Benutzer an, die den Benutzer Schritt für Schritt durch den Prozess, ein Salesdokument gleich in die richtige Bibliothek hochzuladen, führt. In diesem Beispiel wurde die Software TrainEngage verwendet.
Abb. 4: Bot-Konversation in Microsoft Teams

Abb. 4: Bot-Konversation in Microsoft Teams

Nachdem das Dokument erfolgreich in die richtige Dokumentenbibliothek hochgeladen wurde, läuft eine Reihe von Aktionen im Hintergrund ab: Zunächst wird das Dokument mithilfe von Flow an einen Cognitive Service geschickt, der das Dokument von Englisch nach Französisch übersetzt, den Inhalt analysiert und Metadaten extrahiert. Im Anschluss wird das übersetzte Dokument in einer anderen Bibliothek gespeichert. Zugehörige Metadaten werden automatisch erkannt und dem Dokument angehängt (Abb. 5). Mithilfe von Sentiment Analysis erkennt das System, dass es sich um ein „Growth Potential“-Projekt in Paris handelt. Dementsprechend wird ein neuer Salesfall in Dynamics 365 CRM zu diesem Kunden eröffnet. Daraufhin wird das übersetzte Dokument per E-Mail an den Kunden geschickt, der direkt in der E-Mail das Projekt annehmen oder ablehnen kann. Der Key-Account-Manager sowie das Salesteam werden im entsprechenden Saleschannel in Microsoft Teams benachrichtigt, sobald der Fall in CRM angelegt und das Dokument dem Kunden geschickt wurde.

Abb. 5: Automatisch generierte Metadaten

Abb. 5: Automatisch generierte Metadaten

Nun wird darauf gewartet, dass der Kunde das Projekt annimmt. Sobald dies per E-Mail geschieht, wird es automatisch in Dynamics 365 CRM erfasst. Das Salesteam kann nun den Fall abschließen und der Key-Account-Manager wird wieder im entsprechenden Teams-Channel informiert.

In unserem Szenario gehen wir nun einen Schritt weiter: Nachdem der Fall angenommen wurde, meldet sich ein weiterer Bot (Vesa Juvonen – The SharePoint Manager) beim Key-Account-Manager und fragt nach, ob der Benutzer eine Projektkommunikationsseite eröffnen möchte (Abb. 6).

Abb. 6: Automatisches Erstellen von Modern Communication Sites

Abb. 6: Automatisches Erstellen von Modern Communication Sites

Mit der Hilfe des Bots kann der Benutzer entscheiden, welche Communication-Sites-Vorlage verwendet werden soll und welche Web Parts bereits in die Seite integriert werden sollen. Weiterhin fragt der Bot nach, wer alles Zugriff auf die Seite haben soll. In diesem Beispiel erstellt der Bot die Modern SharePoint Site dynamisch anhand der Eingaben des Benutzers im Bot. Im Hintergrund wird eine Azure Function aufgerufen, die die SharePoint-Site mithilfe des PnP-Frameworks dynamisch erstellt.

Zusammenfassung

Zusammenfassend haben wir in diesem Szenario folgende Technologien verwendet:

  • Flow, um SharePoint und Dynamics 365 zu verbinden und Prozesse anzustoßen
  • PowerApps, um ein Bild des Benutzers zu machen
  • Cognitive Services, um das Bild zu erkennen, das Dokument zu übersetzen und den Inhalt zu erkennen
  • Drittanbieteranwendung für die Echtzeitschulung des Benutzers
  • Bot Framework für die Interaktion mit dem Benutzer in Microsoft Teams (Alfred the Butler und Vesa Juvonen SP Admin Bot);
  • Azure Functions und SharePoint-PnP-Framework für das automatische Erstellen der SP Modern Communication Sites mithilfe der Parametereingabe via Bot

Die Kombination all dieser Technologien hat dazu geführt, dass der Benutzer das Dokument in der eigenen Sprache des Kunden versenden konnte, der ganze Salesprozess im Hintergrund angestoßen wurde und bei erfolgreichem Abschluss die Kommunikation im Projekt mit dem Kunden gewährleistet werden konnte.

 

API Summit 2018

Moderne APIs mit ASP.NET Core MVC und SignalR – End-to-End

mit Sebastian Gingter und Manuel Rauber (Thinktecture AG)

Azure in Action: Pragmatische Cloud-Lösungen für alle

mit Thorsten Hans und Christian Weyer (Thinktecture AG)

Unsere Redaktion empfiehlt:

Relevante Beiträge

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu:
X
- Gib Deinen Standort ein -
- or -