

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Bot-Beispiele


Dieser Abschnitt enthält Beispiele für Amazon Lex Lex-Bots, die Sie als Ausgangspunkt für Ihre eigenen Anwendungen verwenden können.

**Topics**
+ [

# Assistentin eines Call-Center-Agenten
](example-call-center.md)

# Assistentin eines Call-Center-Agenten


In diesem Tutorial verwenden Sie Amazon Lex V2 mit Amazon Kendra, um einen Agent Assist Bot zu erstellen, der Kundenbetreuer unterstützt, und ihn als Webanwendung zu veröffentlichen. Amazon Kendra ist ein Suchdienst für Unternehmen, der maschinelles Lernen nutzt, um Dokumente nach Antworten zu durchsuchen. Weitere Informationen zu Amazon Kendra finden Sie [im *Amazon Kendra Developer Guide*](https://docs.aws.amazon.com/kendra/latest/dg/what-is-kendra.html). 

Amazon Lex V2-Bots werden in Call Centern häufig als erste Anlaufstelle für Kunden eingesetzt. Ein Bot ist oft in der Lage, Kundenfragen zu lösen. Wenn ein Bot eine Frage nicht beantworten kann, leitet er die Konversation an einen Mitarbeiter des Kundensupports weiter. 

In diesem Tutorial erstellen wir einen Amazon Lex V2-Bot, mit dem Agenten Kundenanfragen in Echtzeit beantworten. Durch das Lesen der Antworten, die der Bot liefert, wird dem Agenten das manuelle Nachschlagen von Antworten erspart. 

Der Bot und die Webanwendung, die Sie in diesem Tutorial erstellen, helfen Agenten dabei, Kunden effizient und präzise zu antworten, indem sie schnell die richtigen Ressourcen bereitstellen. Das folgende Diagramm zeigt, wie die Webanwendung funktioniert. 

![\[alt text not found\]](http://docs.aws.amazon.com/de_de/lexv2/latest/dg/images/agent-tutorial.png)






Wie das Diagramm zeigt, wird der Amazon Kendra Kendra-Dokumentenindex in einem Amazon Simple Storage Service (Amazon S3) -Bucket gespeichert. Wenn Sie noch keinen S3-Bucket haben, können Sie einen einrichten, wenn Sie den Amazon Kendra Kendra-Index erstellen. Zusätzlich zu Amazon S3 werden Sie Amazon Cognito für dieses Tutorial verwenden. Amazon Cognito verwaltet die Berechtigungen für die Bereitstellung des Bots als Webanwendung.

In diesem Tutorial erstellen Sie einen Amazon Kendra Kendra-Index, der Antworten auf Kundenfragen bietet, erstellen den Bot und fügen Intents hinzu, die es ihm ermöglichen, Antworten auf der Grundlage der Konversation mit dem Kunden vorzuschlagen, richten Amazon Cognito zur Verwaltung von Zugriffsberechtigungen ein und stellen den Bot als Webanwendung bereit.

**Geschätzte Zeit:** 75 Minuten

**Geschätzte Kosten:** 2,50 USD pro Stunde für einen Amazon Kendra Kendra-Index und 0,75 USD für 1000 Amazon Lex V2-Anfragen. Ihr Amazon Kendra Kendra-Index läuft weiter, nachdem Sie mit dieser Übung fertig sind. Achten Sie darauf, ihn zu löschen, um unnötige Kosten zu vermeiden. 

**Hinweis:** Stellen Sie sicher, dass Sie für alle in diesem Tutorial verwendeten Services dieselbe AWS-Region auswählen.

**Topics**
+ [

# Schritt 1: Erstellen Sie einen Amazon Kendra Kendra-Index
](agent-step-1.md)
+ [

# Schritt 2: Erstellen Sie einen Amazon Lex V2-Bot
](agent-step-2.md)
+ [

# Schritt 3: Fügen Sie eine benutzerdefinierte und integrierte Absicht hinzu
](agent-step-3.md)
+ [

# Schritt 4: Amazon Cognito einrichten
](agent-step-4.md)
+ [

# Schritt 5: Stellen Sie Ihren Bot als Webanwendung bereit
](agent-step-5.md)
+ [

# Schritt 6: Verwenden Sie den Bot
](agent-step-6.md)

# Schritt 1: Erstellen Sie einen Amazon Kendra Kendra-Index


Erstellen Sie zunächst einen Amazon Kendra Kendra-Index mit Dokumenten, die Kundenfragen beantworten. Ein Index bietet eine Such-API für Kundenanfragen. Sie erstellen den Index aus Quelldokumenten. Amazon Kendra gibt Antworten, die es in indizierten Dokumenten findet, an den Bot zurück, der sie dem Agenten anzeigt.

Die Qualität und Genauigkeit der von Amazon Kendra vorgeschlagenen Antworten hängen von den Dokumenten ab, die Sie indexieren. Dokumente sollten Dateien enthalten, auf die der Agent häufig zugreift und die in einem S3-Bucket gespeichert werden müssen. Sie können unstrukturierte und halbstrukturierte Daten in den Formaten HTML, Microsoft Office (.doc, .ppt), PDF und Text indizieren. 

Informationen zum Erstellen eines Amazon Kendra-Index finden Sie unter [Erste Schritte mit einem S3-Bucket (Konsole)](https://docs.aws.amazon.com/kendra/latest/dg/gs-console.html) im *Amazon Kendra Developer Guide*.

Informationen zum Hinzufügen von Fragen und Antworten (FAQs) zur Beantwortung von Kundenanfragen finden Sie unter [Hinzufügen von Fragen und Antworten](https://docs.aws.amazon.com/kendra/latest/dg/in-creating-faq.html) im *Amazon Kendra Developer Guide*. Verwenden Sie für dieses Tutorial die [Datei ML\$1FAQ.csv auf GitHub](https://github.com/awsdocs/amazon-lex-developer-guide/blob/master/example_apps/agent_assistance_bot/ML_FAQ.csv).

## Nächster Schritt


[Schritt 2: Erstellen Sie einen Amazon Lex V2-Bot](agent-step-2.md)

# Schritt 2: Erstellen Sie einen Amazon Lex V2-Bot


Amazon Lex V2 bietet eine Schnittstelle zwischen dem Call Center-Agenten und dem Amazon Kendra Kendra-Index. Es verfolgt die Konversation zwischen dem Agenten und dem Kunden und ruft die `AMAZON.KendraSearchIntent` Absicht auf der Grundlage der vom Kunden gestellten Fragen an. Eine *Absicht* ist eine Aktion, die der Benutzer ausführen möchte.

Amazon Kendra durchsucht die indizierten Dokumente und gibt eine Antwort an Amazon Lex V2 zurück, die im Bot angezeigt wird. Diese Antwort ist nur für den Agenten sichtbar.

**Um einen Agent-Assistent-Bot zu erstellen**

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon Lex Lex-Konsole unter [https://console.aws.amazon.com/lex/](https://console.aws.amazon.com/lex/).

1. Wählen Sie im Navigationsbereich **Bots**.

1. Wählen Sie **Erstellen** aus.

1. Wählen Sie **Benutzerdefinierter Bot** und konfigurieren Sie den Bot.

   1. **Bot-Name** — Geben Sie einen Namen ein, der den Zweck des Bots angibt, z. **AgentAssistBot** B.

   1. **Stimme ausgeben** — Wählen Sie „**Keine**“.

   1. **Sitzungs-Timeout** — Geben Sie ein**5**.

   1. **COPPA** **— Wählen Sie Nein.**

1. Wählen Sie **Erstellen** aus. Nach der Erstellung des Bots zeigt Amazon Lex V2 die Registerkarte Bot-Editor an.

## Nächster Schritt


[Schritt 3: Fügen Sie eine benutzerdefinierte und integrierte Absicht hinzu](agent-step-3.md)

# Schritt 3: Fügen Sie eine benutzerdefinierte und integrierte Absicht hinzu


Eine *Absicht* steht für eine Aktion, die der Call-Center-Agent vom Bot ausführen lassen möchte. In diesem Fall möchte der Agent, dass der Bot auf der Grundlage der Konversation des Agenten mit dem Kunden Antworten und hilfreiche Ressourcen vorschlägt. 

Amazon Lex V2 hat zwei Arten von Absichten: benutzerdefinierte Absichten und integrierte Absichten. `AMAZON.KendraSearchIntent`ist eine integrierte Absicht. Der Bot verwendet die `AMAZON.KendraSearchIntent` Absicht, um den Index abzufragen und die von Amazon Kendra vorgeschlagenen Antworten anzuzeigen. 

Der Bot in diesem Beispiel benötigt keine benutzerdefinierte Absicht. Um den Bot zu erstellen, müssen Sie jedoch mindestens eine benutzerdefinierte Absicht mit mindestens einer Beispieläußerung erstellen. Diese Absicht ist nur erforderlich, um Ihren Agent Assistant-Bot zu erstellen. Er erfüllt keine andere Funktion. Die Äußerung der Absicht darf keine der Fragen beantworten, die der Kunde möglicherweise stellt. Dadurch wird sichergestellt, dass der zur Beantwortung von Kundenanfragen angerufen `AMAZON.KendraSearchIntent` wird. Weitere Informationen finden Sie unter [AMAZON.KendraSearchIntent](built-in-intent-kendra-search.md).

**Um die erforderliche benutzerdefinierte Absicht zu erstellen**

1. Wählen Sie auf der Seite **Getting started with your bot (Erste Schritte mit Ihrem Bot)** die Option **Create intent (Absicht erstellen)**.

1. Wählen Sie unter **Add intent (Absicht hinzufügen)** die Option **Create intent (Absicht erstellen)**.

1. Geben **Sie im Dialogfeld „Absicht erstellen**“ einen aussagekräftigen Namen für die Absicht ein, z. B. **RequiredIntent**

1. Geben Sie für **Beispieläußerungen** eine beschreibende Äußerung ein, z. B. **Required utterance**

1. Wählen Sie **Absicht speichern**.

**Um die `AMAZON.KendraSearchIntent` Absicht und die Antwortnachricht hinzuzufügen**

1. Wählen Sie im Navigationsbereich das Pluszeichen (\$1) neben **Intents** aus.

1. Wählen Sie **Vorhandene Absichten durchsuchen** aus.

1. Geben Sie **AMAZON.KendraSearchIntent** in das Feld **Suchabsichten** den Text ein und wählen Sie ihn dann aus der Liste aus.

1. **Geben Sie der Absicht einen aussagekräftigen Namen, z. B.**AgentAssistSearchIntent**, und wählen Sie dann Hinzufügen.**

1. Wählen Sie im Absichtseditor **Amazon Kendra query (Amazon Kendra-Abfrage)**, um die Abfrageoptionen zu öffnen.

1. Wählen Sie den Index aus, in dem die Absicht suchen soll,

1. Fügen Sie im Abschnitt **Antwort** die folgenden drei Nachrichten zu einer Nachrichtengruppe hinzu.

   ```
   I found an answer for the customer query: ((x-amz-lex:kendra-search-response-question_answer-question-1)) and the answer is ((x-amz-lex:kendra-search-response-question_answer-answer-1)).
   I found an excerpt from a helpful document: ((x-amz-lex:kendra-search-response-document-1)).
   I think this answer will help the customer: ((x-amz-lex:kendra-search-response-answer-1)).
   ```

1. Wählen Sie **Absicht speichern**. 

1. Wählen Sie **Build**, um den Bot zu erstellen.

## Nächster Schritt


[Schritt 4: Amazon Cognito einrichten](agent-step-4.md)

# Schritt 4: Amazon Cognito einrichten


Um Berechtigungen und Benutzer für die Webanwendung zu verwalten, müssen Sie Amazon Cognito einrichten. Amazon Cognito stellt sicher, dass die Webanwendung sicher ist und über eine Zugriffskontrolle verfügt. Amazon Cognito verwendet Identitätspools, um AWS-Anmeldeinformationen bereitzustellen, die Ihren Benutzern Zugriff auf andere AWS-Services gewähren. Für dieses Tutorial bietet es Zugriff auf Amazon Lex V2.

Bei der Erstellung eines Identitätspools stellt Ihnen Amazon Cognito AWS Identity and Access Management (IAM) -Rollen für authentifizierte und nicht authentifizierte Benutzer zur Verfügung. Sie ändern die IAM-Rollen, indem Sie Richtlinien hinzufügen, die Zugriff auf Amazon Lex V2 gewähren. 

**So richten Sie Amazon Cognito ein**

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon Cognito Cognito-Konsole unter [https://console.aws.amazon.com/cognito/](https://console.aws.amazon.com/cognito).

1. Klicken Sie auf **Manage Identity Pools (Identitäten-Pools verwalten)**.

1. Wählen Sie **Neuen Identitätspool erstellen**.

1. Konfigurieren Sie den Identitätspool.

   1. **Name des Identitätspools** — Geben Sie einen Namen ein, der den Zweck des Pools angibt, z. **BotPool** B.

   1. Wählen Sie im Abschnitt **Nicht authentifizierte Identitäten** die Option **Zugriff auf nicht authentifizierte Identitäten aktivieren** aus.

1. Wählen Sie **Pool erstellen**.

1. **Wählen Sie auf der Seite **Identifizieren Sie die IAM-Rollen, die mit Ihrem neuen Identitätspool verwendet werden sollen**, die Option Details anzeigen aus.**

1. Notieren Sie sich die IAM-Rollennamen. Sie werden sie später ändern.

1. Wählen Sie **Zulassen**.

1. Wählen Sie auf der Seite **Erste Schritte mit Amazon Cognito** für **Plattform** die Option **JavaScript**.

1. Suchen **Sie im Abschnitt AWS-Anmeldeinformationen abrufen** die **Identitätspool-ID** und notieren Sie sie.

1. Um den Zugriff auf Amazon Lex V2 zu ermöglichen, ändern Sie die authentifizierten und nicht authentifizierten IAM-Rollen.

   1. Melden Sie sich in der AWS-Managementkonsole an und öffnen Sie die IAM-Konsole unter [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

   1. **Wählen Sie im Navigationsbereich unter **Access Management** die Option Rollen aus.**

   1. Geben Sie in das Suchfeld den Namen der authentifizierten IAM-Rolle ein und aktivieren Sie das Kontrollkästchen daneben. 

      1. Wählen Sie **Richtlinien anfügen**.

      1. Geben Sie im Suchfeld das Feld ein **AmazonLexRunBotsOnly** und wählen Sie das Kästchen daneben aus.

      1. Wählen Sie **Richtlinie anfügen** aus.

   1. Geben Sie den Namen der nicht authentifizierten IAM-Rolle in das Suchfeld ein und aktivieren Sie das Kontrollkästchen daneben. 

      1. Wählen Sie **Richtlinien anfügen**.

      1. Geben Sie im Suchfeld das Feld ein **AmazonLexRunBotsOnly** und markieren Sie es.

      1. Wählen Sie **Richtlinie anfügen** aus.

## Nächster Schritt


[Schritt 5: Stellen Sie Ihren Bot als Webanwendung bereit](agent-step-5.md)

# Schritt 5: Stellen Sie Ihren Bot als Webanwendung bereit


**Um Ihren Bot als Webanwendung bereitzustellen**

1. Laden Sie das Repository unter [https://github.com/awsdocs/amazon-lex-developer-guideblob/master/example\$1apps/agent/\$1assistance\$1bot/](https://github.com/awsdocs/amazon-lex-developer-guide/blob/master/example_apps/agent_assistance_bot/) auf Ihren Computer herunter.

1. Navigieren Sie zum heruntergeladenen Repository und öffnen Sie die Datei index.html in einem Editor.

1. Nehmen Sie die folgenden Änderungen vor.

   1. Geben Sie in dem `AWS.config.credentials` Abschnitt Ihren Regionsnamen und Ihre Identitätspool-ID ein.

   1. Geben Sie in dem ` Amazon Lex V2 runtime parameters` Abschnitt den Bot-Namen ein.

   1. Speichern Sie die Datei.

# Schritt 6: Verwenden Sie den Bot


Zu Demo-Zwecken geben Sie dem Bot als Kunde und als Agent Input. Um zwischen den beiden zu unterscheiden, beginnen die vom Kunden gestellten Fragen mit „Kunde:“ und die Antworten des Agenten beginnen mit „Agent:“. Sie können aus einem Menü mit Eingabevorschlägen wählen. 

Führen Sie Ihre Webanwendung aus, indem Sie `index.html` sie öffnen, um eine Konversation mit Ihrem Bot wie folgt zu führen:.

![\[Ein Beispiel für eine Konversation zwischen einem Callcenter-Bot und dem Agent Assistant.\]](http://docs.aws.amazon.com/de_de/lexv2/latest/dg/images/agent-tutorial-ss.png)


Die `pushChat()` Funktion in der Datei index.html wird unten erklärt.

```
            
            var endConversationStatement = "Customer: I have no more questions. Thank you." 
            // If the agent has to send a message, start the message with 'Agent'
            var inputText = document.getElementById('input');
            if (inputText && inputText.value && inputText.value.trim().length > 0 && inputText.value[0]=='Agent') {               
                showMessage(inputText.value, 'agentRequest','conversation');
                inputText.value = "";
            }
            // If the customer has to send a message, start the message with 'Customer'
            if(inputText && inputText.value && inputText.value.trim().length > 0 && inputText.value[0]=='Customer') {  
                // disable input to show we're sending it
                var input = inputText.value.trim();
                inputText.value = '...';
                inputText.locked = true;
                customerInput = input.substring(2);

                // Send it to the Lex runtime
                var params = {
                    botAlias: '$LATEST',
                    botName: 'KendraTestBot',
                    inputText: customerInput,
                    userId: lexUserId,
                    sessionAttributes: sessionAttributes
                };

                showMessage(input, 'customerRequest', 'conversation');
                if(input== endConversationStatement){
                    showMessage('Conversation Ended.','conversationEndRequest','conversation');
                }
                lexruntime.postText(params, function(err, data) {
                    if (err) {
                        console.log(err, err.stack);
                        showMessage('Error:  ' + err.message + ' (see console for details)', 'lexError', 'conversation1')
                    }

                    if (data &&input!=endConversationStatement) {
                        // capture the sessionAttributes for the next cycle
                        sessionAttributes = data.sessionAttributes;
                        
                            showMessage(data, 'lexResponse', 'conversation1');
                    }
                    // re-enable input
                    inputText.value = '';
                    inputText.locked = false;
                });
            }
            // we always cancel form submission
            return false;
```

 Wenn Sie als Kunde Eingaben machen, sendet die Amazon Lex V2-Runtime-API diese an Amazon Lex V2.

Die `showMessage(daText, senderRequest, displayWindow)` Funktion zeigt die Konversation zwischen dem Agenten und dem Kunden im Chat-Fenster an. Von Amazon Kendra vorgeschlagene Antworten werden in einem angrenzenden Fenster angezeigt. Die Konversation endet, wenn der Kunde sagt **“I have no more questions. Thank you.”**

**Hinweis:** Bitte löschen Sie Ihren Amazon Kendra Kendra-Index, wenn Sie ihn nicht verwenden.