Consulting box

Microsoft 365 Power Virtual Agents

Intelligente Chat Bots erstellen

Power Virtual Agents – die Idee

Bots sind mittlerweile in Hype beim Bau von Mensch-Maschine-Schnittstellen. Nicht ganz zu unrecht, denn in der Tat kann ein gut gemachter Bot den Anwender sehr schnell und effizient zum Ergebnis führen. Er muss „nur“ die richtigen Fragen stellen und die Antworten der Anwender sinnvoll verarbeiten.

Power Virtual Agents sind ein Mitglied der Microsoft Power Platform. Gemeinsam mit den anderen Komponenten, zu nennen wären hier vor allem Microsoft Power Automate, Microsoft Power Apps und Microsoft Dataverse, lassen sich mit recht geringem Aufwand wirklich spannende Lösungen aufbauen.

Banner Schulung Power Platform

Erstellen eines Bots mit Power Virtual Agents

Um einen neuen Power Virtual Agent zu erstellen, navigieren Sie in Ihrem Microsoft 365-Tenenat in die Power Apps-Seite.

Achten Sie darauf, dass Sie sich in der richtigen Umgebung befinden. Dies können Sie rechts oben kontrollieren und ggf. umschalten. Um einen neuen Bot zu erstellen, rufen Sie einfach den entsprechenden Menüeintrag auf – und schon geht es los.

Erstellung eines neunen Power Virtual Agents aus der Power Apps-Umgebung

Erstellung eines neunen Power Virtual Agents aus der Power Apps-Umgebung

Abschließend wählen Sie das Erstellen des neuen Chatbots. Zu dem nachfolgend gezeigten Dialog ist im Grunde genommen nicht viel zu sagen: Namen eintragen, Sprache des Bots (in dieser Sprache wird mit dem Benutzer kommuniziert) festlegen und die Umgebung, in der er erstellt werden soll, auswählen – schon geht es los.

Dialog zum Erstellen eines neuen Power Virtual Agents

Dialog zum Erstellen eines neuen Power Virtual Agents

 

Banner Consulting

Von Themen und Entitäten

Ist der neue Power Virtual Agent erstellt (das kann übrigens durchaus schonmal eine halbe Minute dauern), gelangen Sie zu der nachfolgend gezeigten Übersichtsseite.

Startseite der Entwicklungsumgebung für einen Bot

Startseite der Entwicklungsumgebung für einen Bot

Im Menü auf der linken Seite ist auch schon der wichtigste Abschnitt für die Entwicklungsarbeit zu sehen. nämlich die Themen. Kurz gesagt entwickelt man ein oder mehrere Themen, über die der Anwender später mit dem Bot „sprechen“ kann. In diesem Beispiel werden wir zunächst ein Thema entwickeln, nämlich zur Reservierung eines Firmen-Kfz, um eine Dienstfahrt zu machen.

Es lohnt sich aber, schonmal einen Blick auf die vorhandenen Themen zu werfen (nächstes Bild). Dort ist bereits einiges zu erkennen, nämlich:

  • Es sind bereits diverse Themen vorhanden
  • Es gibt Systemthemen (ab Position 5), die nicht ausgeschaltet werden können
  • Vier Benutzerthemen sind vorhanden, die deaktiviert werden können
Etliche Systemthemen und vier Benutzerthemen sind bereits vorhanden

Etliche Systemthemen und vier Benutzerthemen sind bereits vorhanden

Weiterhin möchte ich auf die Entitäten verweisen. Wie Sie auf der nachstehenden Abbildung sehen können, sind standardmäßig jede Menge Entitäten vorhanden, weitere können natürlich selbst ergänzt werden. Kurz gesagt definiert man mit Entitäten bestimmte Inhalte, die vom Anwender erfragt werden sollen. Ein Beispiel wäre beispielsweise die E-Mail-Adresse, ein anderes die Farbe.

Viele Entitäten sind bereits standardmäßig vorhanden

Viele Entitäten sind bereits standardmäßig vorhanden

 

Erstellen einer neuen Entität

Da der Benutzer in dem hier vorgeführten Beispiel die Reservierung eines Fahrzeugs durchführen soll, macht es auf jeden Fall Sinn, eine Entität anzulegen, die die verschiedenen zur Verfügung stehenden Kategorien enthält.

Zu den vier Kategorien habe ich jeweils Synonyme hinzugefügt. Der Dialog ist selbsterklärend.

Hinzufügen einer benutzerdefinierten Entität nebst Synonymen

Hinzufügen einer benutzerdefinierten Entität nebst Synonymen

 

Erstellung eines Themas

Jetzt wird es wirklich ernst: Wir erstellen ein Thema, also das sozusagen das „Drehbuch“ für den Bot, auf Basis dessen die Kommunikation des Power Virtual Agents mit dem Benutzer stattfindet – zumindest, wenn er ein Fahrzeug reservieren möchte.

Bei der Erstellung des Themas wird, neben den üblichen Angaben wie dem Namen, vor allem eine Liste der Triggerausdrücke abgefragt. Der Ablauf funktioniert so, dass das System auf eine Eingabe des Benutzers wartet und wenn diese beispielsweise „Auto“ tippt, wird entsprechend das Thema gestartet, das diesen Triggerausdruck enthält. Es macht Sinn, zu überlegen, womit die Benutzer starten könnten. Zu bedenken ist, dass der simple Triggerausdruck „Auto“ nicht auf die Benutzereingabe „Auto reservieren“ anspricht. Die Situation auf dem nachfolgenden Screenshot (nur 3 Triggerausdrücke, jeweils bestehend aus nur einem Substantiv) reicht so ganz bestimmt und definitiv nicht.

Erstellung eines Themas mit Triggerausdrücken

Erstellung eines Themas mit Triggerausdrücken

 

Wenn Sie die ersten Triggerausdrücke erfasst haben (kann man jederzeit noch erweitern), speichern Sie das Thema (entsprechende Schaltfläche am oberen Rand) und können dann „Zur Canvaserstellung wechseln“ – da geht es dann um die eigentliche No-Code-Programmierung.

Die eigentliche Entwicklung des Power Virtual Agents findet in der nachstehend gezeigten Entwicklungsoberfläche statt. Sie fügen dort Nachrichten, Fragen und Aktionen hinzu und konfigurieren diese.

Die Entwicklungsumgebung für das Thema

Die Entwicklungsumgebung für das Thema

 

Arbeit am Thema

Die Aufgabe ist es jetzt, den Dialog, den der Microsoft Power Virtual Agent mit dem Benutzer führen soll, zu konfigurieren. Dabei gibt es verschiedene Objekte, die beispielsweise eine Nachricht ausgeben oder eine Antwort beim Anwender erfragen.

Nachricht

Das einfachste Objekt ist die Nachricht. Der nachstehenden Abbildung sind glaube ich keine weiteren Erläuterungen hinzuzufügen.

Konfiguration einer Nachricht. Darüber zu sehen ist das Trigger-Element

Konfiguration einer Nachricht. Darüber zu sehen ist das Trigger-Element

 

Eine Frage stellen

So ziemlich die wichtigste Aktion ist das Stellen einer Frage. Auf der nachfolgenden Abbildung sind zwei Frage-Aktionen gezeigt, wobei sich die erste Frage auf die zuvor entwickelte Entität bezieht, die zweite fragt Datum und Uhrzeit ab. In beiden Fällen wird das Ergebnis in eine Variable gepeichert, auf die später verwiesen werden kann – und wird.

 

Definition von Fragen, die dem Benutzer gestellt werden sollen

Definition von Fragen, die dem Benutzer gestellt werden sollen

Wenn man später feststellt, dass man eine Aktion hinzufügen möchte, kann man einfach auf den Verbinder zwischen den Elementen klicken, woraufhin ein Plus-Zeichen erscheint. So kann dann leicht die benötigte Aktion eingefügt werden.

EInfügen einer zusätzlichen Aktion

Einfügen einer zusätzlichen Aktion

 

Bedingung hinzufügen

In dem Beispiel, das ich gerade bearbeite, soll der Anwender nach Eingabe eines Fahrzeugtyps gefragt werden, ob er eine gültige Fahrerlaubnis für die gewählte Fahrzeugklasse hat. Das Ergebnis soll diesmal nicht „nur“ in eine Variable geschrieben werden, vielmehr ändert sich die weitere Verarbeitung – je nach Auswahl.

Die Umsetzung ist einfach: Hinter das „Frage-Objekt“ fügen Sie ein Objekt vom Typ „Eine Bedingung hinzufügen“ ein. Wie auf der folgenden Abbildung zu erkennen, verzweigt der Ablauf je nach gewählter Eingabe.

Mit Bedingungen kann der Dialogverlauf beeinflusst werden

Mit Bedingungen kann der Dialogverlauf beeinflusst werden

 

Ende hinzufügen

Ein Dialogvorgang mit einem Kunden kann nicht so einfach aufhören, Sie müssen ihn beenden. Dazu gibt es vier Möglichkeiten:

  • Sie können die Unterhaltung mit einer Befragung beenden (siehe Konfiguration auf dem nachfolgenden Bild)
  • Sie können an einen (menschlichen) Agenten übergeben, dazu sind einige Einrichtungs- und Konfigurationsschritte erforderlich
  • Sie können das derzeit aktive Thema wiederholen, also sozusagen neu starten
  • Sie können in ein anderes Thema springen
Das Thema muss ordnungsgemäß beendet werden.

Das Thema muss ordnungsgemäß beendet werden.

Power Automate mit Power Virtual Agents verwenden

Mit den Standard-Aktivitäten kann man zwar bereits einen umfangreichen Dialog mit einem Benutzer aufbauen, allerdings reicht das nicht für eine komplette Lösung. Da ist es erforderlich, beispielsweise einen Eintrag in eine Datenbank oder eine SharePoint-Liste zu schreiben. Oder auch andersherum: In dem Dialogvorgang mit dem Benutzer werden eventuell Daten benötigt, die aus einem Drittsystem geholt werden müssen. Oder es muss eine E-Mail gesendet werden. Oder oder oder….

Diese Anforderungen können recht einfach und sehr flexibel erledigt werden, weil Power Automate aus der Power Virtual Agents-Umgebung aufgerufen werden kann. Und da man mit Power Automate bekanntlich sehr flexibele Abläufe implementieren kann und es weiterhin eine riesige Menge von Connectoren gibt, lassen sich viele Anforderungen sogar recht einfach umsetzen.

Power Automate aufrufen

Power Automate aufzurufen, ist verblüffend einfach, wie man auf der folgenden Abbildung sehen kann. Wählen Sie, an der Position, wo Sie ihn brauchen, die Erstellung eines neuen Flows (siehe nächste Abbildung).

Vermutlich wird Ihnen sofort durch den Kopf die Frage durch den Kopf schießen, wie man Werte, die om Benutzer abgefragt worden sind, an den Flow übergibt. Oder aus dem FLow sozusagen wieder herausbekommt. Machen Sie sich da zunächst keine Sorgen, das löst sich gleich.

Aufrufen von Power Autoamte aus Power Virtual Agents

Aufrufen von Power Automate aus Power Virtual Agents

 

Arbeit am Flow in der Power Automate-Umgebung

Wenn Sie das Erstellen des Flows inittiert haben, ist kurze Zeit später Power Automate geöffnet und Sie befinden sich in der Situation, wie auf dem nächsten Bild gezeigt:

Zu sehen ist eine Aktion für den Eingang (Trigger) und beide für den Ausgang. In beiden Fällen geht es darum, die Variablen zu definieren, die bei Aufruf des Flows Werte übergeben bzw. für die Rückgabe von Werten aus dem Flow an den Power Virtual Agent.

Alles, was „dazwischen“ ist, wird Ihre Business-Logik, beispielsweise eben Interkationen mit einer Datenbank oder mit einer SharePoint-Liste.

Erstellung eines Flows mit Power Automate

Erstellung eines Flows mit Power Automate

Das Erstellen von Variablen für die Entgegennahme oder das Übergeben an Power Virtual Agents ist wirklich unkompliziert, wie Sie auf den nächsten beiden Bildern erkennen können. Datentyp auswählen und den Namen eingeben.

Erstellen von Variablen für die Interaktion mit Power Automate

Erstellen von Variablen für die Interaktion mit Power Automate

Die benötigten Variablen sind definiert

Die benötigten Variablen sind definiert

 

Konfiguration in Power Virtual Agents

Nachdem Sie den Flow in Power Automate erstellt und insbesondere die Variablen für die Werte, die zwischen Power VIrtual Agents und Flow ausgetauscht werden sollen, angelegt haben, kehren Sie in den Power Virtual Agents-Editor zurück. Sie werden zunächst keine Veränderung erkennen können, aber: Ruhe bewahren, das wird!

Rufen Sie nun einfach nochmal das Einfügen eines Flows auf (Menüoption: „Handlungsaufforderung“) – der neu erstellte Flow wird in der Auswahl erscheinen. Wenn Sie ihn jetzt hinzufügen, wird Ihnen die Aktivität mit allen Variablen, die im Flow definiert sind, angezeigt. Sie brauchen diese jetzt nur noch mit Variablen aus dem Flow zu verbinden.

Auf dem nachstehend gezeigten Screenshot können Sie einerseits, wie gerade angekündigt, die im Flow definierten Variablen sehen. Außerdem ist zu erkennen, dass Sie auch mit Bedingungen arbeiten, Sie können also den Ablauf in Abhängigkeit von den Rückgabewerden aus dem Flow-Aufruf anpassen. Auf der Abbildung wird von Flow ein „Status“ (also Variable diesen Namens) übergeben. Je nach dem, ob „True“ oder „False“ wird der linke oder der rechte Zweig ausgeführt,

Konfiguration des Aufruf des Flows

Konfiguration des Aufruf des Flows

Testen

Wenn das Thema des Power Virtual Agents erstellt ist, muss getestet werden. Für meine Begriffe ist das ganz schön umgesetzt. Links neben dem Bereich, in dem letztendlich die Entwicklung stattfindet, ist der „Testbot“ zu sehen. Sie können dort einfach das Trigger-Wort (in diesem Fall „auto“ reinschreiben. Daraufhin wird das entsprechende Thema geladen – und Sie sind schon mitten drin. Im Editor, also auf der rechten Seite, sehen Sie die Poition, die gerade von dem Testbot verarbeitet wurde. Die Aktivitäten, die verarbeitet wurden, werden grün eigefärbt, so dass sich recht einfach kontrollieren lässt, welchen „Weg“ der Testanwender gegangen ist. Bei vielen verschachtelten Bedinungen ist das durchaus hilfreich

Testen des Themas

Testen des Themas

 

Veröffentlichen

Wenn Sie mit der Entwicklungsarbeit fertig sind und auch hinreichend getestet haben, muss der neue Power Virtual Agents-Bot veröffentlicht werden.

Der erste Schritt ist die Auswahl der gewünschten Kanäle. Wie auf der nachfolgenden Abbildung zu sehen, gibt es überraschend viele Auswahlmöglichkeiten von Umgebungen, in die Ihr Bot eingebettet werden kann – und nicht nur Microsoft-Technologien.

Bei der Aktivierung der einzelnen Kanäle müssen eventuell noch Eingaben vorgenommen werden – hängt vom Kanal ab.

Auswahl der Kanäle zur Veröffentlichung

Auswahl der Kanäle zur Veröffentlichung

 

Demowebsite

Im einfachsten Fall kann die Veröffentlichung auf einer Demowebsite erfolgen. Wenn man auf den entsprechenden Link klickt, erhält man die individuelle Url. Wenn dann der neue Bot veröffentlicht worden ist (im Menü links auf den gleichnamigen Eintrag klicken), können Sie einfach diese Url aufrufen und schon können Sie IHren Bot mit dem neuen Thema testen.

Power Virtual Agents-Bot auf der Demowebsite

Power Virtual Agents-Bot auf der Demowebsite

 

Teams

Mit der zunehmenden Verbreitung von Microsoft Teams ist auch die Einbinung des Bots in diese Applikation eine häufig gewünschte Aufgabenstellung. Das ist ebenfalls nicht wirklich kompliziert.

Zunächst rufen Sie in der Konfiguration der Kanäle den Dialog für den Teams-Kanal auf, Sie sehen ihn auf der nachfolgenden Abbildung. Zunächst bearbeiten Sie am besten die Details – dabei werden beispielsweise der Titel, eine Beschreibung oder der Name des Entwicklers eingetragen.

Konfiguration der Veröffentlichung in Teams

Konfiguration der Veröffentlichung in Teams

Wenn Sie direkt ausprobieren möchten, wie der Bot in Microsoft Teams aussieht und funktioniert, können Sie einfach auf „Bot öffnen“ klicken – und schon geht der Teams-Client auf und bittet Sie, die Installation durchzuführen (folgende Abbildung)

 

Installation des Bots in MIcrosoft Teams

Installation des Bots in Microsoft Teams

Auf der nächsten Abbildung sehen Sie den Power Virtual Agents-Bot in Micosoft Teams im Einsatz. Die Idee ist also, dass Sie Dialogfunktionen, die Sie Ihren Anwendern zur Verfügung stelleen möchten, bequem in der Teams-Umgebung zugänglich machen.

Die Erfahrung der letzten Jahre zeigt ja, dass trotz der immensen Verbreitung web-basierter Anwendungen, „echte Applikationen“ bei den Benutzern sehr beliebt sind – das beste Beispiel ist ja eben Microsoft Teams. Viele Aufgaben lassen sich mit dem chat-basierten Ansatz wirklich gut und sehr komfortabel erledigen. 

Power Virtual Agents in Teams

Power Virtual Agents in Teams

 

Administratorgenehmigung für Microsoft Teams

Wir sind aber mit der Teams-Bereitstellung noch nicht ganz fertig. Vermutlich möchten Sie ja allen Benutzern ermöglichen, den Power Virtual Agents-Bot zu verwenden und möchten vermutlich auch in einem automatisierten Provisioning-Prozess den Bot verteilen. Dazu muss für den Bot eine „Administratorgenehmigung“ eingeholt werden (siehe Screenshot weiter vorn, Konfiguration des Teams-Kanals). Diese Administratorgenehmigung einzuholen, ist angenehmer Weise nur ein Mausklick.

Auf der folgenden Abbildung zeige ich Ihnen, wie und wo der Administrator aktiv werden muss. Im Teams Admin-Center navigieren Sie zu „Teams Apps/Manage apps“. Sie werden dort bereits die Anzeige erhalten, dass es „Pending approvals“ gibt. Dann suchen Sie einfach die Power Virtual Agents-Bot-App heraus und genehmigen Sie. Um das zu tun, klicken Sie auf die App, worauf hin sich ein Dialog öffnent, in dem die Einstellung vorgenommen werden kann.

Administratorgenehmigung für die organisationsweise Bereitstellung

Administratorgenehmigung für die organisationsweite Bereitstellung

 Wenn die Administratorgenehmigung erfolgt ist, wird die App mit dem Power Virtual Agents-Bot nach einiger Zeit (das dauert – und zwar nicht nur ein paar wenige Minuten) in den Teams-Clients erscheinen – und zwar im Abschnitt „Erstellt von Ihrer Organisation“.

Die genehmigte Power Virtual Agents-App erscheint nach einiger Zeit in dem Abschnitt

Die genehmigte Power Virtual Agents-App erscheint nach einiger Zeit in dem Abschnitt „Erstellt von Ihrer Organisation“

 

Weitere Schritte mit den Power Virtual Agents

Ich möchte noch darauf hinweisen, dass diverse weitere Aufgaben auf Sie warten. In diesem kleinen Tutorial werden sie zwar nicht weiter besprochen, dennoch hier ein paar Stichwörter:

  • Berechtigungen: Sie können festlegen, wer bearbeiten darf, aber auch, wer den Bot verwenden können soll
  • Übergabe an menschlichen Agent: Eine wichtige Aufgabe ist in vielen Fällen auch, dass Sie eine direkte Chat-Möglichkeit mit einem menschlichen Agent ermöglichen
  • Sie können „Fertigkeiten“ erstellen, um den Power Virtual Agents bestimmte komplexe Fähigkeiten beizubringen. Das ist sozusagen der „große Bruder“ der Erweiterung mittels Power Automate, die ich Ihnen in diesem Artikel gezeigt habe. Das ist eine Aufgabe für Entwickler/Programmierer, Grundlage ist das Bot Framework SDK 4.7 (und höher)
  • Es gibt diverse Analyse-Funktionen, die Ihnen statistische Details zur Nutzung des Bots liefern

Lizenzierung der Power Virtual Agents

Nicht vergessen werden darf natürlich, dass die Power Virtual Agents kostenpflichtig sind. Im Admin Center unter „Abrechnung/Dienste kaufen“ kann die Nutzung lizenziert werden. Wie auf der Abbildung zu sehen, erwerben Sie zunächst ein Paket mit 2.000 Sitzungen pro Monat. Wenn das nicht genügt, können weitere Sitzungen hinzugefügt werden. Es existiert ein Dokument, in dem die genaue Definition einer Sitzung beschrieben ist: https://go.microsoft.com/fwlink/?linkid=2085130 

 

Lizenzierung der Power Virtual Agents

Lizenzierung der Power Virtual Agents

Banner Schulung Power Platform

Artikel, Termine, Produkte

Wenn ich Sie über neue ConsultingBox-Artikel, neue Schulungen bzw. Schulungstermine und neue Versionen meiner Produkte informieren darf, hinterlassen Sie mir bitte Ihre Email-Adresse. Einen verantwortungsvollen Umgang sichere ich zu.

Danke für Ihr Interesse!