O que é Reconhecimento Vocal (LUIS)?What is Language Understanding (LUIS)?

Importante

Agora o TLS 1.2 é obrigatório para todas as solicitações HTTP a este serviço.TLS 1.2 is now enforced for all HTTP requests to this service. Para saber mais, confira Segurança nos Serviços Cognitivos do Azure.For more information, see Azure Cognitive Services security.

O Reconhecimento Vocal (LUIS) é um serviço de API baseado em nuvem que aplica inteligência de aprendizado de máquina personalizado em um texto de linguagem natural de conversação do usuário prever o significado geral, e extrair informações detalhadas relevantes.Language Understanding (LUIS) is a cloud-based API service that applies custom machine-learning intelligence to a user's conversational, natural language text to predict overall meaning, and pull out relevant, detailed information.

Um aplicativo cliente para LUIS é qualquer aplicativo que se comunica com um usuário em linguagem natural para completar uma tarefa.A client application for LUIS is any conversational application that communicates with a user in natural language to complete a task. Exemplos de aplicativos clientes incluem aplicativos de mídia social, chatbots e aplicativos para área de trabalho habilitados para fala.Examples of client applications include social media apps, chat bots, and speech-enabled desktop applications.

Imagem conceitual de três aplicativos cliente trabalhando com Reconhecimento vocal de serviços cognitivos (LUIS)Conceptual image of 3 client applications working with Cognitive Services Language Understanding (LUIS)

Usar o LUIS em um chatbotUse LUIS in a chat bot

Depois que o aplicativo LUIS for publicado, um aplicativo cliente envia expressões (texto) para a API do ponto de extremidade de processamento da linguagem natural do LUIS e recebe os resultados como respostas em JSON.Once the LUIS app is published, a client application sends utterances (text) to the LUIS natural language processing endpoint API and receives the results as JSON responses. Um aplicativo cliente comum para LUIS é um chatbot.A common client application for LUIS is a chat bot.

Imagens conceituais do LUIS trabalhando com o Chat bot para prever o texto do usuário com NLP (reconhecimento de linguagem natural)Conceptual imagery of LUIS working with Chat bot to predict user text with natural language understanding (NLP)

EtapaStep AçãoAction
11 O aplicativo cliente envia a expressão do usuário (texto em suas próprias palavras), “Eu quero chamar meu representante de RH”.The client application sends the user utterance (text in their own words), "I want to call my HR rep." para o ponto de extremidade do LUIS como uma solicitação HTTP.to the LUIS endpoint as an HTTP request.
22 O LUIS permite que você crie seus modelos de linguagem personalizados para adicionar inteligência ao seu aplicativo.LUIS enables you to craft your custom language models to add intelligence to your application. Os modelos de idioma aprendidos pela máquina pegam o texto de entrada não estruturado do usuário e retornam uma resposta formatada em JSON, com uma das principais intenções, HRContact.Machine learned language models take the user's unstructured input text and returns a JSON-formatted response, with a top intent, HRContact. A resposta mínima do ponto de extremidade JSON, contém a expressão de consulta e a intenção de maior pontuação.The minimum JSON endpoint response contains the query utterance, and the top scoring intent. Ele também pode extrair dados, como a entidade do Tipo de contato.It can also extract data such as the Contact Type entity.
33 O aplicativo cliente usa a resposta JSON para tomar decisões sobre como atender às solicitações do usuário.The client application uses the JSON response to make decisions about how to fulfill the user's requests. Essas decisões podem incluir algumas árvores de decisão no código do Bot Framework e chamadas para outros serviços.These decisions can include decision tree in the bot framework code and calls to other services.

O aplicativo LUIS fornece inteligência, para que o aplicativo cliente possa fazer escolhas inteligentes.The LUIS app provides intelligence so the client application can make smart choices. O LUIS não oferece essas escolhas.LUIS doesn't provide those choices.

Processamento de idioma naturalNatural language processing

Um aplicativo LUIS contém um modelo de linguagem natural de domínio específico.Your LUIS app contains a domain-specific natural language model. Você pode iniciar o aplicativo LUIS com um modelo de domínio predefinido, criar seu próprio modelo ou combinar partes de um domínio predefinido com suas próprias informações personalizadas.You can start the LUIS app with a prebuilt domain model, build your own model, or blend pieces of a prebuilt domain with your own custom information.

  • Modelo predefinido LUIS tem muitos modelos de domínio que incluem intenções, expressões e entidades predefinidas.Prebuilt model LUIS has many prebuilt domain models including intents, utterances, and prebuilt entities. Você pode usar as entidades predefinidas sem a necessidade de usar as intenções e expressões do modelo predefinido.You can use the prebuilt entities without having to use the intents and utterances of the prebuilt model. Modelos de domínio predefinidos incluem todo o design para você e são uma ótima maneira de começar a usar o LUIS rapidamente.Prebuilt domain models include the entire design for you and are a great way to start using LUIS quickly.

  • O modelo personalizado LUIS oferece várias maneiras de identificar seus próprios modelos personalizados, incluindo intenções e entidades.Custom model LUIS gives you several ways to identify your own custom models including intents, and entities. As entidades incluem entidades de aprendizado de máquina, entidades específicas ou literais e uma combinação de aprendizado de máquina e literal.Entities include machine-learning entities, specific or literal entities, and a combination of machine-learning and literal.

Criar o modelo LUISBuild the LUIS model

Criar o modelo com as APIs de criação ou com o portal do LUIS.Build the model with the authoring APIs or with the LUIS portal.

O modelo LUIS começa com categorias de intenções de usuário chamadas intenções .The LUIS model begins with categories of user intentions called intents. Cada intenção precisa de exemplos de expressões do usuário.Each intent needs examples of user utterances. Cada expressão pode fornecer vários dados que precisam ser extraídos.Each utterance can provide data that needs to be extracted.

Expressão de usuário de exemploExample user utterance IntencionalIntent Data da extraçãoExtracted data
Book a flight to Seattle? BookFlightBookFlight SeattleSeattle
When does your store open? StoreHoursAndLocationStoreHoursAndLocation Abriropen
Schedule a meeting at 1pm with Bob in Distribution ScheduleMeetingScheduleMeeting 13h, Bob1pm, Bob

Ponto de extremidade de previsão da consultaQuery prediction endpoint

Depois que o aplicativo é treinado e publicado no ponto de extremidade, o aplicativo cliente envia expressões à API de ponto de extremidade da previsão publicada.After your app is trained and published to the endpoint, the client application sends utterances to the prediction endpoint API. A API aplica o modelo ao enunciado para análise e responde com os resultados da previsão em um formato JSON.The API applies the model to the utterance for analysis and responds with the prediction results in a JSON format.

A resposta mínima do ponto de extremidade JSON, contém a expressão de consulta e a intenção de maior pontuação.The minimum JSON endpoint response contains the query utterance, and the top scoring intent. Ele também pode extrair dados, como a entidade e o sentimento geral do Tipo de contato seguinte.It can also extract data such as the following Contact Type entity and overall sentiment.

{
    "query": "I want to call my HR rep",
    "prediction": {
        "normalizedQuery": "i want to call my hr rep",
        "topIntent": "HRContact",
        "intents": {
            "HRContact": {
                "score": 0.8582669
            }
        },
        "entities": {
            "Contact Type": [
                "call"
            ]
        },
        "sentiment": {
            "label": "negative",
            "score": 0.103343368
        }
    }
}

Melhorar a previsão do modeloImprove model prediction

Depois que o aplicativo LUIS for publicado e receber expressões de usuário real, LUIS fornecerá aprendizado ativo de expressões do ponto de extremidade para melhorar a precisão da previsão.After your LUIS app is published and receives real user utterances, LUIS provides active learning of endpoint utterances to improve prediction accuracy.

Ciclo de vida de desenvolvimentoDevelopment lifecycle

O LUIS fornece ferramentas, controle de versão e colaboração com outros autores do LUIS para integrar ao ciclo de vida de desenvolvimento completo.LUIS provides tools, versioning, and collaboration with other LUIS authors to integrate into the full development life cycle.

Implementando o LUISImplementing LUIS

O LUIS, como uma API REST, pode ser usado com qualquer produto, serviço ou estrutura que faz uma solicitação HTTP.Language Understanding (LUIS), as a REST API, can be used with any product, service, or framework with an HTTP request. A lista a seguir contém os principais produtos e serviços da Microsoft usados com o LUIS.The following list contains the top Microsoft products and services used with LUIS.

O principal aplicativo cliente para o LUIS é:The top client application for LUIS is:

  • Bot de aplicativo Web que cria rapidamente um chatbot habilitado para LUIS para conversar com um usuário por meio de entrada de texto.Web app bot quickly creates a LUIS-enabled chat bot to talk with a user via text input. Usa o Bot Framework versão 4.x para uma experiência de bot completa.Uses Bot Framework version 4.x for a complete bot experience.

Ferramentas para usar o LUIS com um bot de modo rápido e fácil:Tools to quickly and easily use LUIS with a bot:

  • CLI do LUIS O pacote NPM fornece criação e previsão como uma ferramenta de linha de comando autônoma ou como uma importação.LUIS CLI The NPM package provides authoring and prediction with as either a stand-alone command-line tool or as import.
  • LUISGen O LUISGen é uma ferramenta para gerar código-fonte typescript e C# fortemente tipado de um modelo do LUIS exportado.LUISGen LUISGen is a tool for generating strongly typed C# and typescript source code from an exported LUIS model.
  • Expedição permite que vários aplicativos LUIS e QnA Maker sejam usados em um aplicativo pai usando o modelo de dispatcher.Dispatch allows several LUIS and QnA Maker apps to be used from a parent app using dispatcher model.
  • LUDown O LUDown é uma ferramenta de linha de comando que ajuda a gerenciar modelos de linguagem para o bot.LUDown LUDown is a command-line tool that helps manage language models for your bot.
  • Bot Framework – Composer – uma ferramenta de desenvolvimento integrada para desenvolvedores e equipes multidisciplinares destinada a criar bots e experiências de conversa com o Microsoft Bot FrameworkBot framework - Composer - an integrated development tool for developers and multi-disciplinary teams to build bots and conversational experiences with the Microsoft Bot Framework

Outros Serviços Cognitivos usados com o LUIS:Other Cognitive Services used with LUIS:

  • QnA Maker permite que vários tipos de texto sejam combinados em uma base de conhecimento de perguntas e respostas.QnA Maker allows several types of text to combine into a question and answer knowledge base.
  • Serviço de Fala converte as solicitações de linguagem falada em texto.Speech service converts spoken language requests into text.
  • Aprendiz de conversa permite que você crie conversas de bot mais rapidamente com o LUIS.Conversation learner allows you to build bot conversations quicker with LUIS.

Exemplos usando o LUIS:Samples using LUIS:

Próximas etapasNext steps