Projete um reconhecimento de linguagem eficaz

O NLU (reconhecimento de linguagem natural) está no cerne de como os agentes do Copilot Studio entendem as consultas dos usuários e fornecem respostas relevantes e contextuais. Uma abordagem bem definida para reconhecimento de intenções, extração de entidades e tratamento de fallback garante que os agentes entreguem conversas eficientes e naturais que estejam alinhadas com as necessidades do negócio.

Quando um usuário envia uma mensagem a um agente, isso é conhecido como um enunciado. O agente precisa decompor esse enunciado em intenção e entidades, para que a resposta seja natural e eficiente.

O que é o reconhecimento vocal?

Reconhecimento de linguagem (LU) é um subcampo do Processamento de Linguagem Natural (PLN) focado em capacitar máquinas a compreender o significado, a intenção e o contexto por trás da linguagem humana.

Diagrama Ilustrando o processamento do reconhecimento de linguagem.

Diagrama mostrando como a mensagem do usuário é dividida em intenção e entidades. Uma pessoa digita: "Quero reservar um voo para Paris na próxima semana." A mensagem é rotulada como um enunciado. A frase "Quero reservar um voo" é identificada como a intenção, e "Paris" e "próxima semana" são identificados como entidades. O sistema então pede mais detalhes, como cidade de partida e classe de viagem. O diagrama ilustra como o agente usa intenção, entidades e contexto para determinar a melhor resposta.

O reconhecimento de linguagem envolve:

  • Reconhecimento de intenção: identificar o que o usuário deseja alcançar (por exemplo, "Reservar um voo para Paris na próxima semana" corresponde à intenção de reservar um voo).
  • Extração de entidades: extrair detalhes importantes, como datas, locais ou nomes (por exemplo, "Paris" como destino, "próxima semana" como data de viagem).
  • Consciência de contexto: manter a continuidade e resolver ambiguidades na conversa (por exemplo, entender pronomes ou referências).
  • Tratamento de ambiguidades: usar o contexto para resolver palavras com vários significados (por exemplo, "banco" como instituição financeira ou margem de rio).

Reconhecimento de linguagem no Copilot Studio

O Copilot Studio tem um modelo flexível para reconhecimento de linguagem, com várias opções de configuração.

Orquestração generativa

A orquestração generativa usa modelos de linguagem para encadear de forma inteligente tópicos, ações e fontes de conhecimento. Esse recurso permite o reconhecimento de várias intenções, extração avançada de entidades e geração dinâmica de planos para consultas complexas.

Esse método é o padrão do Copilot Studio. Essa abordagem reconhece várias intenções ou tópicos em um único enunciado, encadeia automaticamente ações e fontes de conhecimento e gera respostas unificadas. É especialmente útil para lidar com conversas complexas que abrangem várias áreas de negócios. A orquestração generativa tem limites, como cinco mensagens por tópico ou cadeia de ações, e 128 tópicos ou ações por orquestração, mas oferece uma maneira poderosa de escalar a amplitude das conversas.

Saiba mais em Aplicar recursos de orquestração generativa.

Orquestração clássica

A orquestração clássica usa frases de gatilho e roteamento de tópicos determinístico. Se a mensagem do usuário corresponder a uma frase de gatilho, o tópico correspondente será executado. Se não houver correspondência, mecanismos de fallback pesquisam fontes de conhecimento ou solicitam esclarecimentos ao usuário.

NLU interno

Essa abordagem era a padrão, mas agora é a abordagem de fallback. O Copilot Studio oferece um modelo de NLU pronto para uso que oferece suporte a frases de gatilho, entidades predefinidas e entidades personalizadas. Esse modelo permite que os agentes identifiquem a intenção do usuário e extraiam detalhes importantes como datas, destinos ou quantidades diretamente de uma consulta.

NLU+

Para alta precisão, use a opção NLU+. A opção NLU+ é ideal para grandes aplicações de nível empresarial. Esses tipos de aplicações normalmente consistem em um grande número de tópicos e entidades, e utilizam um grande número de amostras de treinamento. Além disso, se você tiver um agente habilitado para voz, seus dados de treinamento do NLU+ também serão usados para otimizar suas capacidades de reconhecimento de fala.

Integração da CLU do Azure

Para cenários mais avançados, em que não é possível usar a orquestração generativa padrão, é possível integrar a CLU (Compreensão da Linguagem Coloquial) do Azure. A CLU oferece mais personalização, suporte multilíngue e extração de entidades complexa (por exemplo, várias entidades de "origem"). Você deve mapear as intenções da CLU para os tópicos do Copilot Studio para mantê-los em sincronia. Essa opção é especialmente valiosa para vocabulários específicos de setores, idiomas que não sejam o inglês ou cenários que exijam maior precisão.

Principais recursos e limitações

Esta tabela compara as três abordagens de reconhecimento de linguagem no Copilot Studio. Ele destaca suas principais características e limitações para ajudar você a escolher o modelo certo para as necessidades de complexidade, escala e precisão do seu agente.

Recursos e limitações Orquestração generativa Modelo NLU interno Modelo personalizado CLU do Azure
Principais recursos
  • Usa um grande modelo de linguagem
  • Lida com enunciados complexos com várias intenções, tópicos/ações e conhecimento
  • Gera automaticamente perguntas para entradas ausentes
  • Permite correções durante a execução
  • Produz uma resposta unificada com base nas saídas de tópicos, ações e conhecimento
  • Modelo padrão pré-treinado com tipos de entidade predefinidos
  • Configurado usando frases de gatilho e entidades personalizadas (listas fechadas ou regex)
  • Oferece suporte a mais idiomas com modelos nativos
  • Modelo de disparo de intenção personalizável para precisão ou necessidades específicas do setor
  • Extração avançada de entidades (por exemplo, mesmo tipo, extração silenciosa)
  • A extração de entidades pode usar o NLU padrão do Copilot Studio
Limites
  • Cinco mensagens por tópico/cadeia de ações
  • Limite de 128 tópicos e ações para disparo
  • Reconhecimento de intenção única por consulta
  • Não pode ser estendido
  • O preenchimento de slot de várias entidades precisa de desambiguação
  • Reconhecimento de intenção única por consulta
  • Configuração baseada no Azure e custos extras
  • Tem limites de serviço do Azure
  • As intenções de CLU do Azure e os tópicos do Copilot Studio devem ser sincronizados com cuidado.

Saiba mais em Visão geral do reconhecimento de linguagem natural (NLU).

Estrutura dos tópicos e fallback

Os tópicos evoluíram de um caminho rígido baseado em intenção para uma abordagem mais flexível, centrada na orquestração. Em vez de depender exclusivamente de gatilhos e caminhos predefinidos, os tópicos agora atuam como instruções modulares às quais o agente pode recorrer ao orquestrar uma conversa. A orquestração generativa lida com a maior parte do roteamento ao interpretar dinamicamente a entrada do usuário, e os tópicos garantem um fallback estruturado quando é necessária precisão.

O design de tópicos mais tradicional e estruturado faz com que as conversas pareçam naturais e eficientes. Os tópicos podem servir como pontos de entrada desencadeados por mensagens do usuário ou como subtópicos reutilizáveis chamados por redirecionamentos ou eventos do sistema. Os tópicos de desambiguação ajudam a evitar confusão quando vários tópicos podem ser disparados, e os tópicos de fallback e de reforço da conversa oferecem redes de segurança quando o agente não consegue atender à intenção com confiança. Você também pode incorporar respostas generativas para acessar fontes de conhecimento externas, assegurando que os usuários raramente fiquem sem resposta.

Saiba mais em Siga as melhores práticas de criação de tópicos.

Localização e idiomas

O idioma usado por um agente do Copilot Studio é determinado pelo valor da variável do sistema: System.User.Language.

Essa variável atua como o ponto central de controle para todo o comportamento relacionado ao idioma no agente. Você pode definir o valor manualmente, de forma programática ou detectar automaticamente.

Como funciona

  • Pesquisar conhecimento no idioma do usuário: o Copilot Studio usa o valor de System.User.Language para pesquisar fontes de conhecimento no idioma especificado. Essa abordagem significa que, mesmo que um usuário faça uma pergunta em um idioma, o agente traduz a consulta de pesquisa para o idioma configurado em System.User.Language (tradução automática da consulta de pesquisa).

  • Responder no idioma do usuário: o agente gera respostas no idioma especificado por System.User.Language, independentemente do idioma usado na pergunta ou nos documentos originais (tradução automática para geração de respostas).

  • Substituição manual: você pode definir manualmente o valor de System.User.Language para forçar o agente a operar em um idioma específico. Esse recurso é útil para testes ou para cenários em que você precisa controlar explicitamente o idioma. Saiba mais em Configurar e criar agentes multilíngues.

Detecção automática do idioma falado

Você pode configurar o Copilot Studio para detectar automaticamente o idioma falado ou escrito pelo usuário e definir a variável System.User.Language de acordo. Esse recurso permite experiências multilíngues contínuas sem a necessidade de que os usuários especifiquem sua preferência de idioma.

Como a detecção automática funciona

  • Detecção baseada em gatilho: quando o bot recebe uma mensagem, um gatilho inicia um fluxo de detecção de idioma.
  • Definir variável do sistema: o bot atribui o idioma detectado a System.User.Language.
  • Resposta dinâmica: o agente continua a conversa no idioma detectado, pesquisando conhecimento e gerando respostas de acordo.

Benefícios

  • Experiência personalizada: os usuários interagem no idioma de preferência, sem necessidade de configuração manual.
  • Experiência consistente: todas as respostas e buscas de conhecimento estão alinhadas com o idioma detectado ou definido.
  • Solução escalável: oferece suporte a implantações globais com configuração mínima.

Dica

Consulte a solução de exemplo que demonstra como habilitar agentes do Copilot Studio para detectar automaticamente o idioma falado pelo usuário e alternar para um dos idiomas aprovados pelo criador para o agente em Detectar o idioma automaticamente para respostas generativas.

Melhores práticas para localização

  • Configure os idiomas com suporte: defina os idiomas primário e secundário para seu agente. Use arquivos de localização (JSON ou ResX) para fornecer traduções para prompts, mensagens e tópicos.
  • Teste cenários multilíngues: simule interações de usuários em diferentes idiomas para garantir transições suaves e respostas precisas.
  • Use tradução automática: confie na tradução integrada do Copilot Studio para pesquisa de conhecimento e geração de respostas, mas forneça traduções personalizadas para conteúdo crítico ou com nuances.
  • Monitorar e refinar: use análises de dados para acompanhar o uso do idioma e otimizar a cobertura de localização ao longo do tempo.

Abordagens de linguagem do agente do Copilot Studio:

  • Agentes separados por idioma.
  • Agentes multilíngues únicos com traduções pré-criadas.
  • Agentes multilíngues em tempo real, usando serviços de tradução entre usuário e agente.

A abordagem correta depende do uso, das preocupações com separação, escala, cadência de atualização e recursos disponíveis.

Desafios técnicos identificados

Desafios típicos incluem garantir que os tópicos da CLU do Azure e do Copilot Studio permaneçam sincronizados, lidar com enunciados ambíguos e escalar implantações multilíngues. A identificação precoce desses obstáculos permite planejar estratégias de mitigação, como configurações de fallback, testes em massa de frases de gatilho ou serviços de tradução baseados em relé.

O objetivo do reconhecimento de linguagem é garantir que cada agente possa interpretar as consultas dos usuários com precisão, adaptar-se a diferentes idiomas e cenários e lidar de forma eficiente com o inesperado. Esse objetivo cria uma base sólida para criar conversas confiáveis, envolventes e eficientes no Copilot Studio.