답변:
사용자 정의 기술 은 텍스트를 캡처하여 기술의 API로 보낼 수 있습니다.
Alexa Skills의 작동 방식에 익숙하지 않은 경우 간단한 요약은 다음과 같습니다.
먼저 인 텐트 스키마 및 샘플 발언을 제공 하여 기술을 Amazon에 등록합니다 . 인 텐트 스키마는 수행 할 수있는 조치 및 사용자 정의 데이터를 API로 전송할 슬롯 을 정의합니다. 샘플 발언은 사용자가 각 의도를 트리거 할 수있는 방법의 예를 제공합니다.
사용자가 기술을 활성화하면 Alexa는 자신이 말한 내용을 기술의 샘플 발화 중 하나와 일치 시키려고 시도합니다. 이 경우 않는 일치, 그것은 응답을 요청하는 서버에 HTTPS 요청을 보냅니다.
서버가 응답을 제공하면 (모두 잘 진행되는 경우) Alexa는 기술을 트리거 한 사용자에게 피드백을 제공합니다.
AMAZON.LITERAL
슬롯 은 거의 모든 입력을 허용 할 수 있습니다. 현재 영어 (미국) 지역에서만 지원되며 영어 (영국)는 사용할 수 없으며 독일어 기술은 사용할 수 없습니다 AMAZON.LITERAL
.
의도 스키마는 다음과 같습니다.
{
"intents": [
{
"intent": "SaveTodo",
"slots": [
{
"name": "Todo",
"type": "AMAZON.LITERAL"
}
]
}
]
}
샘플 발언은 다음과 같습니다.
SaveTodo remind me to {fetch the shopping|Todo}
SaveTodo remind me to {write my English essay|Todo}
SaveTodo remind me to {buy some dog food tomorrow|Todo}
를 사용할 때는 가능한 한 입력 길이마다 하나 이상의 샘플 AMAZON.LITERAL
을 제공해야 하지만 이상적으로 는 많은 샘플 발화 를 제공해야합니다 . Amazon 설명서는 다양한 유형의 입력을 수용 할 수있는 슬롯에 수백 개의 샘플을 목표로 삼아야한다고 제안합니다.
약간 지루한 것처럼 보이지만 그렇게하지 않으면 기술이 텍스트를 잘 인식하지 못할 수 있습니다. 고객 데이터에서 샘플 발화를 생성 할 수 있습니다 (개인 정보가 미리 제거되어있는 한!).
그러나 Amazon 은 AMAZON.LITERAL
슬롯을 사용 하지 않으며 가능한 입력을 나열해야하는 사용자 정의 슬롯 유형을 선호합니다 . 다음을 기억하는 것이 중요합니다.
사용자 정의 슬롯 유형은 열거와 동일하지 않습니다. 언어 이해 시스템에서 인식하는 경우 목록 외부의 값이 계속 반환 될 수 있습니다. 사용자 정의 슬롯 유형에 대한 입력은 목록의 값에 가중치가 적용되지만 목록의 항목에만 제한되지는 않습니다. 슬롯 값을 사용할 때 코드에는 여전히 유효성 검사 및 오류 검사가 포함되어야합니다.