Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Utilizzo di un'applicazione Java per interagire con un bot Amazon Lex V2

Modalità Focus
Utilizzo di un'applicazione Java per interagire con un bot Amazon Lex V2 - Amazon Lex

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

La AWS SDK per Java versione 2.0 fornisce un'interfaccia che puoi usare dalle tue applicazioni Java per interagire con i tuoi bot. Utilizzate l'SDK for Java per creare applicazioni client per gli utenti.

La seguente applicazione interagisce con il OrderFlowers bot in cui hai creato. Esercizio 1: Creare un bot da un esempio Utilizza l'LexRuntimeV2ClientSDK for Java per richiamare RecognizeTextl'operazione per condurre una conversazione con il bot.

L'output della conversazione è simile al seguente:

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.

Per le strutture JSON inviate tra l'applicazione client e il bot Amazon Lex V2, consulta. Esercizio 2: Rivedi il flusso di conversazione

Per eseguire l'applicazione, devi fornire le seguenti informazioni:

  • botID: l'identificatore assegnato al bot al momento della sua creazione. Puoi visualizzare l'ID del bot nella console Amazon Lex V2 nella pagina delle impostazioni del bot.

  • botAliasId — L'identificatore assegnato all'alias del bot al momento della creazione. Puoi visualizzare l'ID alias del bot nella console Amazon Lex V2 nella pagina Alias. Se non riesci a visualizzare l'ID dell'alias nell'elenco, scegli l'icona a forma di ingranaggio in alto a destra e attiva l'ID alias.

  • localeID: l'identificatore del locale che hai usato per il tuo bot. Per un elenco delle impostazioni locali, consulta. Lingue e impostazioni locali supportate da Amazon Lex V2

  • AccessKey e SecretKey: le chiavi di autenticazione per il tuo account. Se non disponi di un set di chiavi, creale utilizzando la AWS Identity and Access Management console.

  • SessionID: un identificatore per la sessione con il bot Amazon Lex V2. In questo caso, il codice utilizza un UUID casuale.

  • regione: se il tuo bot non si trova nella regione degli Stati Uniti orientali (Virginia settentrionale), assicurati di cambiare la regione.

L'applicazione utilizza una funzione chiamata getRecognizeTextRequest per creare richieste individuali al bot. La funzione crea una richiesta con i parametri richiesti da inviare ad Amazon Lex V2.

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; } }
PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.