Se você estiver usando o Amazon Lex V2, consulte o Guia do Amazon Lex V2.
Se você estiver usando o Amazon Lex V1, recomendamos atualizar seus bots para o Amazon Lex V2. Não estamos mais adicionando novos atributos à V1 e recomendamos o uso da V2 para todos os novos bots.
As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
PutSlotType
Cria um tipo de slot personalizado ou substitui um tipo de slot personalizado existente.
Para criar um tipo de slot personalizado, especifique um nome para o tipo de slot e um conjunto de valores de enumeração, que são os valores que um slot desse tipo pode assumir. Para ter mais informações, consulte Amazon Lex: como funciona.
Se você especificar o nome de um tipo de slot existente, os campos na solicitação substituirão os valores existentes na versão $LATEST
do tipo de slot. O Amazon Lex remove campos que você não fornece na solicitação. Se você não especificar os campos obrigatórios, o Amazon Lex lançará uma exceção. Quando você atualiza a versão $LATEST
de um tipo de slot, o campo $LATEST
de qualquer bot que usa a versão status
do tipo de slot é definido como NOT_BUILT
.
Essa operação exige permissões para a ação lex:PutSlotType
.
Sintaxe da Solicitação
PUT /slottypes/name
/versions/$LATEST HTTP/1.1
Content-type: application/json
{
"checksum": "string
",
"createVersion": boolean
,
"description": "string
",
"enumerationValues": [
{
"synonyms": [ "string
" ],
"value": "string
"
}
],
"parentSlotTypeSignature": "string
",
"slotTypeConfigurations": [
{
"regexConfiguration": {
"pattern": "string
"
}
}
],
"valueSelectionStrategy": "string
"
}
Parâmetros da Solicitação de URI
A solicitação usa os seguintes parâmetros de URI:
- name
-
O nome do tipo de slot. O nome não é sensível a maiúsculas e minúsculas.
O nome não pode corresponder a um nome de tipo de slot incorporado ou a um nome de tipo de slot incorporado com “AMAZON.” removido. Por exemplo, como há um tipo de slot integrado chamado
AMAZON.DATE
, você não pode criar um tipo de slot personalizado chamadoDATE
.Para obter uma lista de tipos de slot integrados, consulte Referência do tipo de slot
no Alexa Skills Kit. Restrições de tamanho: tamanho mínimo 1. Tamanho máximo de 100.
Padrão:
^([A-Za-z]_?)+$
Exigido: Sim
Corpo da Solicitação
A solicitação aceita os dados a seguir no formato JSON.
- checksum
-
Identifica uma revisão específica da versão
$LATEST
.Ao criar um novo tipo de slot, deixe o campo
checksum
em branco. Se você especificar uma soma de verificação, obterá uma exceçãoBadRequestException
.Quando quiser atualizar um tipo de slot, defina o campo
checksum
como a soma de verificação da revisão mais recente da versão$LATEST
. Se você não especificar o campochecksum
ou se a soma de verificação não corresponder à versão$LATEST
, você receberá uma exceçãoPreconditionFailedException
.Tipo: String
Obrigatório: não
- createVersion
-
Quando configurado para
true
, uma nova versão numerada do tipo de slot é criada. Isso é o mesmo que chamar a operaçãoCreateSlotTypeVersion
. Se você não especificar acreateVersion
, o valor padrão seráfalse
.Tipo: booliano
Obrigatório: não
- description
-
Uma descrição do tipo de slot.
Tipo: String
Restrições de tamanho: tamanho mínimo 0. Tamanho máximo de 200.
Obrigatório: não
- enumerationValues
-
Uma lista de objetos
EnumerationValue
que define os valores que o tipo de slot pode ter. Cada valor pode ter uma lista desynonyms
, que são valores adicionais que ajudam a treinar o modelo de machine learning sobre os valores que ele resolve para o slot.Um tipo de slot de expressão regular não exige valores de enumeração. Todos os outros tipos de slots exigem uma lista de valores de enumeração.
Quando o Amazon Lex resolve um valor de slot, ele gera uma lista de resolução que contém até cinco valores possíveis para o slot. Se você estiver usando uma função do Lambda, essa lista de resolução será passada para a função. Se você não estiver usando uma função do Lambda, poderá optar por retornar o valor que o usuário inseriu ou o primeiro valor na lista como o valor do slot. O campo
valueSelectionStrategy
indica a opção a ser usada.Tipo: matriz de objetos EnumerationValue
Membros da Matriz: número mínimo de 0 itens. Número máximo de 10.000 itens.
Obrigatório: não
- parentSlotTypeSignature
-
O tipo de slot integrado usado como pai do tipo de slot. Quando você define um tipo de slot pai, o novo tipo de slot tem todas as mesmas configurações do pai.
Somente
AMAZON.AlphaNumeric
é suportado.Tipo: String
Restrições de tamanho: tamanho mínimo 1. Tamanho máximo de 100.
Padrão:
^((AMAZON\.)_?|[A-Za-z]_?)+
Obrigatório: não
- slotTypeConfigurations
-
Informações de configuração que estendem o tipo de slot integrado principal. A configuração é adicionada às configurações do tipo de slot principal.
Tipo: matriz de objetos SlotTypeConfiguration
Membros da Matriz: número mínimo de 0 itens. Número máximo de 10 itens.
Obrigatório: não
- valueSelectionStrategy
-
Determina a estratégia de resolução de slots que o Amazon Lex usa para retornar valores de tipo de slot. O campo pode ser definido com os dos seguintes valores:
-
ORIGINAL_VALUE
- Retorna o valor inserido pelo usuário, se o valor do usuário for semelhante ao valor de um slot. -
TOP_RESOLUTION
- Se houver uma lista de resolução para o slot, retornará o primeiro valor na lista como o valor do tipo de slot. Se não houver uma lista de resolução, retornará o valor “null”.
Se
valueSelectionStrategy
não for especificado, o valor padrão seráORIGINAL_VALUE
.Tipo: String
Valores Válidos:
ORIGINAL_VALUE | TOP_RESOLUTION
Obrigatório: Não
-
Sintaxe da Resposta
HTTP/1.1 200
Content-type: application/json
{
"checksum": "string",
"createdDate": number,
"createVersion": boolean,
"description": "string",
"enumerationValues": [
{
"synonyms": [ "string" ],
"value": "string"
}
],
"lastUpdatedDate": number,
"name": "string",
"parentSlotTypeSignature": "string",
"slotTypeConfigurations": [
{
"regexConfiguration": {
"pattern": "string"
}
}
],
"valueSelectionStrategy": "string",
"version": "string"
}
Elementos de Resposta
Se a ação tiver êxito, o serviço enviará de volta uma resposta HTTP 200.
Os dados a seguir são retornados no formato JSON pelo serviço.
- checksum
-
Soma de verificação da versão
$LATEST
do tipo de slot.Tipo: String
- createdDate
-
A data em que o tipo de slot foi criado.
Tipo: Timestamp
- createVersion
-
True
se uma nova versão do tipo de slot tiver sido criada. Se o campocreateVersion
não tiver sido especificado na solicitação, o campocreateVersion
será definido como falso na resposta.Tipo: booliano
- description
-
Uma descrição do tipo de slot.
Tipo: String
Restrições de tamanho: tamanho mínimo 0. Tamanho máximo de 200.
- enumerationValues
-
Uma lista de objetos
EnumerationValue
que define os valores que o tipo de slot pode ter.Tipo: matriz de objetos EnumerationValue
Membros da Matriz: número mínimo de 0 itens. Número máximo de 10.000 itens.
- lastUpdatedDate
-
A data em que o tipo de slot foi atualizado. Quando você cria um tipo de slot, a data de criação e a data da última atualização são as mesmas.
Tipo: Timestamp
- name
-
O nome do tipo de slot.
Tipo: String
Restrições de tamanho: tamanho mínimo 1. Tamanho máximo de 100.
Padrão:
^([A-Za-z]_?)+$
- parentSlotTypeSignature
-
O tipo de slot integrado usado como pai do tipo de slot.
Tipo: String
Restrições de tamanho: tamanho mínimo 1. Tamanho máximo de 100.
Padrão:
^((AMAZON\.)_?|[A-Za-z]_?)+
- slotTypeConfigurations
-
Informações de configuração que estendem o tipo de slot integrado principal.
Tipo: matriz de objetos SlotTypeConfiguration
Membros da Matriz: número mínimo de 0 itens. Número máximo de 10 itens.
- valueSelectionStrategy
-
A estratégia de resolução de slot que o Amazon Lex usa para determinar o valor do slot. Para ter mais informações, consulte PutSlotType.
Tipo: String
Valores Válidos:
ORIGINAL_VALUE | TOP_RESOLUTION
- version
-
A versão do tipo de slot. Para um novo tipo de slot, a versão é sempre
$LATEST
.Tipo: string
Restrições de tamanho: tamanho mínimo 1. Comprimento máximo de 64.
Padrão:
\$LATEST|[0-9]+
Erros
- BadRequestException
-
A solicitação não está bem formada. Por exemplo, um valor é inválido ou um campo obrigatório está faltando. Verifique os valores dos campos e tente novamente.
Código de Status HTTP: 400
- ConflictException
-
Houve um conflito ao processar a solicitação. Tente sua solicitação novamente.
Código de Status HTTP: 409
- InternalFailureException
-
Ocorreu um erro interno do Amazon Lex. Tente sua solicitação novamente.
Código de Status HTTP: 500
- LimitExceededException
-
A solicitação excedeu um limite. Tente sua solicitação novamente.
Código de Status HTTP: 429
- PreconditionFailedException
-
A soma de verificação do atributo que você está tentando alterar não corresponde à soma de verificação na solicitação. Verifique a soma de verificação e tente novamente.
Código de status HTTP: 412
Consulte também
Para obter mais informações sobre como usar essa API em um dos AWS SDKs específicos da linguagem, consulte o seguinte: