Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

Verwenden einer Java-Anwendung zur Interaktion mit einem Amazon Lex V2-Bot

Fokusmodus
Verwenden einer Java-Anwendung zur Interaktion mit einem Amazon Lex V2-Bot - Amazon Lex

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.

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.

AWS SDK für Java 2.0 bietet eine Schnittstelle, die Sie von Ihren Java-Anwendungen aus verwenden können, um mit Ihren Bots zu interagieren. Verwenden Sie das SDK for Java, um Client-Anwendungen für Benutzer zu erstellen.

Die folgende Anwendung interagiert mit dem OrderFlowers Bot, in Übung 1: Einen Bot anhand eines Beispiels erstellen dem Sie erstellt haben. Es verwendet das LexRuntimeV2Client aus dem SDK for Java, um die RecognizeTextOperation aufzurufen, um eine Konversation mit dem Bot zu führen.

Die Ausgabe der Konversation sieht wie folgt aus:

User : I would like to order flowers Bot : What type of flowers would you like to order? User : 1 dozen roses Bot : What day do you want the dozen roses to be picked up? User : Next Monday Bot : At what time do you want the dozen roses to be picked up? User : 5 in the evening Bot : Okay, your dozen roses will be ready for pickup by 17:00 on 2021-01-04. Does this sound okay? User : Yes Bot : Thanks.

Informationen zu den JSON-Strukturen, die zwischen der Client-Anwendung und dem Amazon Lex V2-Bot gesendet werden, finden Sie unterÜbung 2: Überprüfen Sie den Gesprächsablauf.

Um die Anwendung auszuführen, müssen Sie die folgenden Informationen angeben:

  • BotID — Die Kennung, die dem Bot zugewiesen wurde, als Sie ihn erstellt haben. Sie können die Bot-ID in der Amazon Lex V2-Konsole auf der Seite mit den Bot-Einstellungen sehen.

  • botAliasId — Die Kennung, die dem Bot-Alias zugewiesen wurde, als Sie ihn erstellt haben. Sie können die Bot-Alias-ID in der Amazon Lex V2-Konsole auf der Seite Aliase sehen. Wenn Sie die Alias-ID nicht in der Liste sehen können, wählen Sie das Zahnradsymbol oben rechts und aktivieren Sie die Alias-ID.

  • LocaleID — Die Kennung des Gebietsschemas, das Sie für Ihren Bot verwendet haben. Eine Liste der Gebietsschemas finden Sie unter. Von Amazon Lex V2 unterstützte Sprachen und Gebietsschemas

  • AccessKey und secretKey — Die Authentifizierungsschlüssel für Ihr Konto. Wenn Sie nicht über einen Schlüsselsatz verfügen, erstellen Sie ihn mit der Konsole. AWS Identity and Access Management

  • sessionId — Eine Kennung für die Sitzung mit dem Amazon Lex V2-Bot. In diesem Fall verwendet der Code eine zufällige UUID.

  • Region — Wenn sich Ihr Bot nicht in der Region USA Ost (Nord-Virginia) befindet, stellen Sie sicher, dass Sie die Region ändern.

Die Anwendung verwendet eine aufgerufene FunktiongetRecognizeTextRequest, um individuelle Anfragen an den Bot zu erstellen. Die Funktion erstellt eine Anfrage mit den erforderlichen Parametern, die an Amazon Lex V2 gesendet werden soll.

package com.lex.recognizetext.sample; import software.amazon.awssdk.auth.credentials.AwsBasicCredentials; import software.amazon.awssdk.auth.credentials.AwsCredentialsProvider; import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.lexruntimev2.LexRuntimeV2Client; import software.amazon.awssdk.services.lexruntimev2.model.RecognizeTextRequest; import software.amazon.awssdk.services.lexruntimev2.model.RecognizeTextResponse; import java.net.URISyntaxException; import java.util.UUID; /** * This is a sample application to interact with a bot using RecognizeText API. */ public class OrderFlowersSampleApplication { public static void main(String[] args) throws URISyntaxException, InterruptedException { String botId = ""; String botAliasId = ""; String localeId = "en_US"; String accessKey = ""; String secretKey = ""; String sessionId = UUID.randomUUID().toString(); Region region = Region.US_EAST_1; // pick an appropriate region AwsBasicCredentials awsCreds = AwsBasicCredentials.create(accessKey, secretKey); AwsCredentialsProvider awsCredentialsProvider = StaticCredentialsProvider.create(awsCreds); LexRuntimeV2Client lexV2Client = LexRuntimeV2Client .builder() .credentialsProvider(awsCredentialsProvider) .region(region) .build(); // utterance 1 String userInput = "I would like to order flowers"; RecognizeTextRequest recognizeTextRequest = getRecognizeTextRequest(botId, botAliasId, localeId, sessionId, userInput); RecognizeTextResponse recognizeTextResponse = lexV2Client.recognizeText(recognizeTextRequest); System.out.println("User : " + userInput); recognizeTextResponse.messages().forEach(message -> { System.out.println("Bot : " + message.content()); }); // utterance 2 userInput = "1 dozen roses"; recognizeTextRequest = getRecognizeTextRequest(botId, botAliasId, localeId, sessionId, userInput); recognizeTextResponse = lexV2Client.recognizeText(recognizeTextRequest); System.out.println("User : " + userInput); recognizeTextResponse.messages().forEach(message -> { System.out.println("Bot : " + message.content()); }); // utterance 3 userInput = "next monday"; recognizeTextRequest = getRecognizeTextRequest(botId, botAliasId, localeId, sessionId, userInput); recognizeTextResponse = lexV2Client.recognizeText(recognizeTextRequest); System.out.println("User : " + userInput); recognizeTextResponse.messages().forEach(message -> { System.out.println("Bot : " + message.content()); }); // utterance 4 userInput = "5 in evening"; recognizeTextRequest = getRecognizeTextRequest(botId, botAliasId, localeId, sessionId, userInput); recognizeTextResponse = lexV2Client.recognizeText(recognizeTextRequest); System.out.println("User : " + userInput); recognizeTextResponse.messages().forEach(message -> { System.out.println("Bot : " + message.content()); }); // utterance 5 userInput = "Yes"; recognizeTextRequest = getRecognizeTextRequest(botId, botAliasId, localeId, sessionId, userInput); recognizeTextResponse = lexV2Client.recognizeText(recognizeTextRequest); System.out.println("User : " + userInput); recognizeTextResponse.messages().forEach(message -> { System.out.println("Bot : " + message.content()); }); } private static RecognizeTextRequest getRecognizeTextRequest(String botId, String botAliasId, String localeId, String sessionId, String userInput) { RecognizeTextRequest recognizeTextRequest = RecognizeTextRequest.builder() .botAliasId(botAliasId) .botId(botId) .localeId(localeId) .sessionId(sessionId) .text(userInput) .build(); return recognizeTextRequest; } }
DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.