Intenções

Importante

O LUIS será reformado a 1 de outubro de 2025 e a partir de 1 de abril de 2023 não poderá criar novos recursos LUIS. Recomendamos migrar as suas aplicações LUIS para a compreensão da linguagem de conversação para beneficiar do suporte contínuo do produto e das capacidades multilingues.

Uma intenção representa uma tarefa ou ação que o utilizador quer realizar. É um propósito ou objetivo expresso na expressão de um utilizador.

Defina um conjunto de intenções que corresponda às ações que os utilizadores querem ter na sua aplicação. Por exemplo, uma aplicação de viagem teria várias intenções:

Intenções de aplicativo de viagem Expressões de exemplo
ReservarBilhete "Reserve-me um voo para o Rio na próxima semana" "Voe-me para o Rio no dia 24" "Preciso de um bilhete de avião no próximo domingo para o Rio de janeiro"
Saudação "Olá" "Olá" "Bom dia"
CheckWeather "Como está o tempo em Boston?" "Mostre-me a previsão para este fim de semana"
Nenhuma "Arranja-me uma receita de bolachas" "Os Lakers ganharam?"

Todas as aplicações vêm com a intenção predefinida, "Nenhuma", que é a intenção de recuo.

Intenções pré-construídas

A LUIS fornece intenções pré-construídas e as suas expressões para cada um dos seus domínios pré-construídos. As intenções podem ser adicionadas sem adicionar todo o domínio. Adicionar uma intenção é o processo de adicionar uma intenção e suas declarações à sua app. Tanto o nome da intenção como a lista de expressões podem ser modificados.

Devolver todas as pontuações de intenções

Atribua uma expressão a uma única intenção. Quando LUIS recebe uma expressão, por defeito devolve a intenção máxima para essa expressão.

Se quiser as pontuações para todas as intenções para a expressão, pode fornecer uma bandeira na cadeia de consulta da API de previsão.

Versão API de previsão Sinalizador
V2 verbose=true
V3 show-all-intents=true

Intenção comparada com entidade

A intenção representa a ação que a aplicação deve tomar para o utilizador, com base em toda a expressão. Uma expressão pode ter apenas uma intenção de pontuação superior, mas pode ter muitas entidades.

Crie uma intenção quando a intenção do utilizador desencadearia uma ação na aplicação do seu cliente, como uma chamada para a função checkweather () a partir da tabela acima. Em seguida, crie entidades para representar os parâmetros necessários para executar a ação.

Intenção Entidade Expressão de exemplo
CheckWeather { "tipo": "localização", "entidade": "Seattle" } { "tipo": "builtin.datetimeV2.date","entidade": "amanhã","resolução":"2018-05-23" } Como está o tempo Seattletomorrow?
CheckWeather { "tipo": "date_range", "entidade": "este fim de semana" } Mostre-me a previsão para this weekend

Intenção None (Nenhuma)

A intenção de Ninguém é criada, mas deixada vazia de propósito. A intenção de Nenhum é uma intenção necessária e não pode ser apagada ou renomeada. Preencha-a com expressões que estejam fora do seu domínio.

A intenção de Nenhum é a intenção de recuo, e deve ter 10% do total de declarações. É importante em todas as aplicações, porque é usado para ensinar expressões DE LUIS que não são importantes no domínio da aplicação (área de assunto). Se não adicionar nenhuma expressão para a intenção de Ninguém , LUIS força uma expressão que está fora do domínio em uma das intenções de domínio. Isto irá distorcer as notas de previsão ensinando a LUIS a intenção errada para a expressão.

Quando uma expressão é prevista como a intenção de Zero, a aplicação do cliente pode fazer mais perguntas ou fornecer um menu para direcionar o utilizador para escolhas válidas.

Intenções negativas

Se quiser determinar intenções negativas e positivas, como " Quero um carro" e " não quero um carro", pode criar duas intenções (uma positiva e uma negativa) e acrescentar expressões apropriadas para cada um. Ou pode criar uma única intenção e marcar os dois termos positivos e negativos diferentes como entidade.

Intenções e padrões

Se tiver palavras de exemplo, que podem ser definidas em parte ou no seu conjunto como uma expressão regular, considere usar a entidade de expressão regular emparelhada com um padrão.

A utilização de uma entidade de expressão regular garante a extração de dados de modo a que o padrão seja igualado. A correspondência de padrões garante que uma intenção exata é devolvida.

Equilíbrio de intenção

As intenções de domínio da aplicação devem ter um equilíbrio de declarações em todas as intenções. Por exemplo, não tenha a maioria das suas intenções com 10 palavras e outra intenção com 500 expressões. Isto não é equilibrado. Nesta situação, você gostaria de rever a intenção com 500 expressões para ver se muitas das intenções podem ser reorganizadas em um padrão.

A intenção de Nenhum não está incluída na balança. Essa intenção deve conter 10% do total de declarações na app.

Limites de intenção

Reveja os limites para entender quantas intenções pode adicionar a um modelo.

Dica

Se precisar de mais do que o número máximo de intenções, considere se o seu sistema está a usar demasiadas intenções e determine se várias intenções são combinadas numa única intenção com entidades. As intenções que são demasiado semelhantes podem dificultar a distinção entre eles. As intenções devem ser variadas o suficiente para capturar as principais tarefas que o utilizador está a pedir, mas não precisam de capturar todos os caminhos que o seu código toma. Por exemplo, duas intenções: BookFlight() e FlightCustomerService() podem ser intenções separadas numa aplicação de viagem, mas BookInternationalFlight() e BookDomesticFlight() são demasiado semelhantes. Se o seu sistema precisar de os distinguir, utilize entidades ou outra lógica em vez de intenções.

Pedir ajuda para apps com número significativo de intenções

Se reduzir o número de intenções ou dividir as suas intenções em várias aplicações não funcionar para si, contacte o suporte. Se a sua subscrição Azure incluir serviços de suporte, contacte o suporte técnico da Azure.

Melhores Práticas para Intenções:

Definir intenções distintas

Certifique-se de que o vocabulário para cada intenção é apenas para essa intenção e não sobrepondo-se a uma intenção diferente. Por exemplo, se quiser ter uma app que trate de acordos de viagem como voos de companhias aéreas e hotéis, pode optar por ter estas áreas temáticas como intenções separadas ou a mesma intenção com entidades para dados específicos dentro da expressão.

Se o vocabulário entre duas intenções for o mesmo, combine a intenção e use entidades.

Considere as seguintes palavras de exemplo:

  1. Reserve um voo
  2. Reserve um hotel

"Reserve um voo" e "reserve um hotel" use o mesmo vocabulário de "reservar um <substantivo>". Este formato é o mesmo, pelo que deve ser a mesma intenção com as diferentes palavras de voo e hotel que entidades extraídas.

Adicionar funcionalidades a intenções

As características descrevem conceitos para uma intenção. Uma característica pode ser uma lista de frases de palavras que são significativas para essa intenção ou uma entidade que é significativa para essa intenção.

Encontre um ponto doce para intenções

Utilize dados de previsão da LUIS para determinar se as suas intenções estão sobrepostas. As intenções sobrepostas confundem LUIS. O resultado é que a intenção de pontuação superior está muito perto de outra intenção. Como o LUIS não usa exatamente o mesmo caminho através dos dados para treinar cada vez, uma intenção sobreposta tem a chance de ser o primeiro ou o segundo no treino. Queres que a pontuação da expressão para cada intenção seja mais distante, para que esta variância não aconteça. Uma boa distinção para as intenções deve resultar sempre na intenção esperada de topo.

Equilibrar declarações através de intenções

Para que as previsões do LUIS sejam precisas, a quantidade de palavras de exemplo em cada intenção (com exceção da intenção de Ninguém), deve ser relativamente igual.

Se tiver uma intenção com 500 palavras de exemplo e todas as suas outras intenções com 10 palavras de exemplo, a intenção de 500 palavras terá uma taxa de previsão mais elevada.

Adicionar palavras de exemplo a nenhuma intenção

Esta intenção é a intenção de recuo, indicando tudo fora da sua aplicação. Adicione um exemplo de intenção ao None intenção por cada 10 palavras de exemplo no resto da sua app LUIS.

Não adicione muitos exemplos de declarações às intenções

Após a publicação da app, apenas adicione expressões de aprendizagem ativa no processo de ciclo de vida de desenvolvimento. Se as expressões forem muito semelhantes, adicione um padrão.

Não misture a definição de intenções e entidades

Crie uma intenção para qualquer ação que o seu bot irá tomar. Use as entidades como parâmetros que tornem essa ação possível.

Por exemplo, para um bot que irá reservar voos de companhias aéreas, crie uma intenção bookFlight . Não crie uma intenção para todas as companhias aéreas ou destinos. Utilize esses dados como entidades e marque-os nas declarações de exemplo.

Passos seguintes

Como usar as intenções