RecognizeText - Amazon Lex

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

RecognizeText

Amazon Lex V2에 사용자 입력을 보냅니다. 클라이언트 애플리케이션은 이 API를 사용하여 런타임 시 Amazon Lex V2로 요청을 보냅니다. 그런 다음 Amazon Lex V2는 봇용으로 빌드된 머신 러닝 모델을 사용하여 사용자 입력을 해석합니다.

이에 대한 응답으로 Amazon Lex V2는 사용자에게 전달하기 위해 다음 메시지와 표시할 응답 카드 (옵션) 를 반환합니다.

선택적 사후 주문 처리 응답을 지정하면 다음과 같이 메시지가 반환됩니다. 자세한 내용은 단원을 참조하십시오.사후 주문 처리 상태사양.

  • 성공 메시지- Lambda 함수가 성공적으로 완료되고 인텐트 상태가 이행되거나 메시지가 있는 경우 이행 준비가 된 경우 반환됩니다.

  • 실패한 메시지- Lambda 함수가 예외를 throw하거나 Lambda 함수가 메시지 없이 실패한 인텐트 상태를 반환하는 경우 실패한 메시지가 반환됩니다.

  • Timeout 메시지- 제한 시간 메시지와 제한 시간을 구성하지 않고 Lambda 함수가 30초 이내에 반환되지 않으면 제한 시간 메시지가 반환됩니다. 시간 초과를 구성하면 기간이 초과되면 시간 초과 메시지가 반환됩니다.

자세한 내용은 단원을 참조하십시오.완료 메시지.

요청 구문

POST /bots/botId/botAliases/botAliasId/botLocales/localeId/sessions/sessionId/text HTTP/1.1 Content-type: application/json { "requestAttributes": { "string" : "string" }, "sessionState": { "activeContexts": [ { "contextAttributes": { "string" : "string" }, "name": "string", "timeToLive": { "timeToLiveInSeconds": number, "turnsToLive": number } } ], "dialogAction": { "slotElicitationStyle": "string", "slotToElicit": "string", "type": "string" }, "intent": { "confirmationState": "string", "name": "string", "slots": { "string" : { "shape": "string", "value": { "interpretedValue": "string", "originalValue": "string", "resolvedValues": [ "string" ] }, "values": [ "Slot" ] } }, "state": "string" }, "originatingRequestId": "string", "runtimeHints": { "slotHints": { "string" : { "string" : { "runtimeHintValues": [ { "phrase": "string" } ] } } } }, "sessionAttributes": { "string" : "string" } }, "text": "string" }

URI 요청 파라미터

요청은 다음의 URI 파라미터를 사용합니다.

botAliasId

요청을 처리하는 봇에 사용 중인 별칭 식별자입니다.

: 필수 예

botId

요청을 처리하는 봇의 식별자입니다.

길이 제약 조건: 고정 길이 10입니다.

Pattern: ^[0-9a-zA-Z]+$

: 필수 예

localeId

세션이 사용 중인 로캘입니다.

길이 제약 조건: 최소 길이는 1이고,

: 필수 예

sessionId

대화에 사용되는 사용자 세션의 식별자입니다.

길이 제약 조건: 최소 길이는 2이고, 최대 길이는 100입니다.

Pattern: [0-9a-zA-Z._:-]+

: 필수 예

요청 본문

요청은 JSON 형식의 다음 데이터를 받습니다.

requestAttributes

클라이언트 애플리케이션과 Amazon Lex V2 간에 전달되는 요청별 정보

네임스페이스x-amz-lex:는 특수 속성용으로 예약되어 있습니다. 접두사를 사용하여 요청 속성을 생성하지 마십시오.x-amz-lex:.

Type: 문자열 간 맵

키 길이 제약 조건: 최소 길이는 1이고,

: 필수 아니요

sessionState

사용자와 봇 간의 대화 상자의 현재 상태.

유형: SessionState 객체

: 필수 아니요

text

사용자가 입력한 텍스트입니다. Amazon Lex V2에서 이 텍스트를 해석합니다.

Type: 문자열

길이 제약 조건: 최소 길이는 1이고, 최대 길이는 1,024입니다.

: 필수 예

응답 구문

HTTP/1.1 200 Content-type: application/json { "interpretations": [ { "intent": { "confirmationState": "string", "name": "string", "slots": { "string" : { "shape": "string", "value": { "interpretedValue": "string", "originalValue": "string", "resolvedValues": [ "string" ] }, "values": [ "Slot" ] } }, "state": "string" }, "nluConfidence": { "score": number }, "sentimentResponse": { "sentiment": "string", "sentimentScore": { "mixed": number, "negative": number, "neutral": number, "positive": number } } } ], "messages": [ { "content": "string", "contentType": "string", "imageResponseCard": { "buttons": [ { "text": "string", "value": "string" } ], "imageUrl": "string", "subtitle": "string", "title": "string" } } ], "requestAttributes": { "string" : "string" }, "sessionId": "string", "sessionState": { "activeContexts": [ { "contextAttributes": { "string" : "string" }, "name": "string", "timeToLive": { "timeToLiveInSeconds": number, "turnsToLive": number } } ], "dialogAction": { "slotElicitationStyle": "string", "slotToElicit": "string", "type": "string" }, "intent": { "confirmationState": "string", "name": "string", "slots": { "string" : { "shape": "string", "value": { "interpretedValue": "string", "originalValue": "string", "resolvedValues": [ "string" ] }, "values": [ "Slot" ] } }, "state": "string" }, "originatingRequestId": "string", "runtimeHints": { "slotHints": { "string" : { "string" : { "runtimeHintValues": [ { "phrase": "string" } ] } } } }, "sessionAttributes": { "string" : "string" } } }

응답 요소

작업이 성공하면 서비스가 HTTP 200 응답을 다시 전송합니다.

다음 데이터는 서비스에 의해 JSON 형식으로 반환됩니다.

interpretations

Amazon Lex V2가 결정한 인텐트 목록은 사용자의 발언을 만족시킬 수 있습니다.

각 해석에는 의도, Amazon Lex V2가 해석이 올바른지 확신함을 나타내는 점수, 발언으로 표현된 감정을 나타내는 선택적 감정 응답이 포함됩니다.

Type: 배열Interpretation사물

배열 멤버: 최대 항목 수는 5개입니다.

messages

사용자에게 마지막으로 전송된 메시지 목록입니다. 메시지는 Lambda 함수에서 메시지를 반환한 순서 또는 메시지가 봇에 정의된 순서에 따라 정렬됩니다.

Type: 배열Message사물

배열 멤버: 최대 항목 수는 10개입니다.

requestAttributes

요청에서 보낸 속성입니다.

Type: 문자열 간 맵

키 길이 제약 조건: 최소 길이는 1이고,

sessionId

사용 중인 세션의 식별자입니다.

Type: 문자열

길이 제약 조건: 최소 길이는 2이고, 최대 길이는 100입니다.

Pattern: [0-9a-zA-Z._:-]+

sessionState

사용자와 봇 사이의 대화 상자의 현재 상태를 나타냅니다.

이 옵션을 사용하여 대화의 진행 상황과 다음 작업을 결정할 수 있습니다.

유형: SessionState 객체

오류

모든 작업에 공통적인 오류에 대한 자세한 내용은 단원을 참조하십시오.일반적인 오류.

AccessDeniedException

HTTP 상태 코드: 403

BadGatewayException

HTTP 상태 코드: 502

ConflictException

HTTP 상태 코드: 409

DependencyFailedException

HTTP 상태 코드: 424

InternalServerException

HTTP 상태 코드: 500

ResourceNotFoundException

HTTP 상태 코드: 404

ThrottlingException

HTTP 상태 코드: 429

ValidationException

HTTP 상태 코드: 400

참고 항목

이 API를 언어별 AWS SDK 중 하나로 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.