Filtrar o conteúdo deste documento pela tag de tipo do agente:
Filtrar o conteúdo deste documento pela tag de categoria:
Ativar o Cloud Logging para seu agente
Ative o Cloud Logging para seu agente. Isso é essencial para capturar dados e diagnosticar problemas em conversas reais.
Coletar IDs de conversa
Quando um comportamento inesperado ocorrer, colete os IDs de conversa do Dialogflow. Esses IDs, encontrados no histórico de conversas, permitem rastrear o caminho de execução de uma conversa e examinar interações específicas.
A chamada de API tem a permissão negada
Tags de categoria: API, Auth
Problema
Resposta PERMISSION_DENIED
recebida na chamada de API.
Solução
Verifique se a autenticação e os papéis (Agentes de conversação (Dialogflow CX), Dialogflow ES) foram configurados corretamente. Em particular, verifique se você fez o seguinte:
- Criou uma conta de serviço e não a excluiu acidentalmente.
- Forneceu à conta de serviço um papel que conceda permissão para chamar o método desejado.
- Fez o download do arquivo de chave privada da conta de serviço.
- Defina a variável de ambiente
GOOGLE_APPLICATION_CREDENTIALS
ao arquivo de chave particular.
A chamada de API menciona um projeto desconhecido
Tags de categoria: API, projeto
Problema
Recebido o erro
Dialogflow API has not been used in project 32555940559
para a chamada de API.
Solução
Verifique se você fez o seguinte:
- Defina a variável de ambiente
GOOGLE_APPLICATION_CREDENTIALS
(consultePERMISSION_DENIED
). - Forneceu o ID do projeto correto para a chamada de API.
A chamada de API recebe um erro de credenciais de autenticação inválidas
Tags de categoria: API, Auth
Problema
Resposta
Request had invalid authentication credentials.
Expected OAuth 2 access token, login cookie
or other valid authentication credential.
recebida na chamada de API.
Solução
Isso pode ocorrer devido à criação manual de credenciais com sua biblioteca de cliente ao especificar uma região não padrão. Veja orientações sobre um dos seguintes tópicos:
- Selecionar uma região com a API (agentes de conversação (Dialogflow CX))
- Selecionar uma região com a API (Dialogflow ES)
A resposta da chamada de API solicita uma mudança para um host diferente
Tags de categoria: API, Auth
Problema
Resposta
Please switch to 'REGION-dialogflow.googleapis.com' to access resources
located in 'REGION'
recebida na chamada de API,
em que REGION
é um ID de região específico.
Solução
Isso acontece quando você especifica a região na solicitação, mas não o endpoint. Veja orientações sobre um dos seguintes tópicos:
- Selecionar uma região com a API (agentes de conversação (Dialogflow CX))
- Selecionar uma região com a API (Dialogflow ES)
Campos ausentes na resposta da chamada de API
Tags de categoria: API
Problema
Alguns campos estão ausentes na resposta da API.
Solução
Se você espera um valor numérico para um campo específico na resposta da API, o campo pode estar ausente na resposta se o valor retornado for 0.
Para mais informações sobre o comportamento do valor padrão (incluindo valores não numéricos), consulte:
Não é possível excluir o projeto por causa da garantia
Tags de categoria: projeto
Problema
Ao tentar excluir um projeto do Google Cloud, você recebe uma notificação de que não é possível excluir o projeto porque ele tem garantias, e uma das garantias está relacionada ao Dialogflow ES.
Solução
Verifique se você não precisa mais do agente do Dialogflow ES associado ao projeto. Se você receber uma notificação de que o agente não existe, isso significa que ele já foi excluído.
Console do Dialogflow ES
Abra https://dialogflow.cloud.google.com/#/agent/project-id/intents.
Esse link é diferente do link na caixa de diálogo de exclusão do projeto do Google Cloud.
API Dialogflow
Use o método
search
do tipoagent
.Pegue o nome da garantia.
gcloud
Use o comando gcloud alpha resource-manager liens list, conforme descrito na documentação Como listar garantias em um projeto.
API Explorer
Use o painel Testar esta API na página Método: liens.list:
- Preencha o campo
parent
, conforme sugerido na descrição do parâmetro. - Clique em Executar.
- Preencha o campo
Exclua a garantia.
gcloud
Use o comando gcloud alpha resource-manager liens delete LIEN_NAME, conforme descrito na documentação Como remover garantias de um projeto.
API Explorer
Use o painel Testar esta API na página Método: liens.delete:
- Preencha o campo
name
com o nome da garantia que você recebeu na etapa 2. - Clique em Executar.
- Preencha o campo
Encerre o projeto.
O webhook do Dialogflow CX falha com um erro de limite de tempo excedido
Tags de categoria: execução
Problema
Um webhook chamado pelo Dialogflow CX pode falhar com esta mensagem de erro:
Webhook call failed. Error: DEADLINE_EXCEEDED
Isso pode acontecer porque a chamada do webhook excede o limite de tempo. Estes são os motivos possíveis para a chamada do webhook exceder o limite de tempo limite:
Tentativa de acionar uma intent inexistente.
Um problema de inicialização a frio com o back-end do webhook (por exemplo, o Cloud Functions).
O webhook chama outros serviços, aumentando o tempo de resposta.
Nenhuma conexão entre o agente e o back-end do webhook (por exemplo, balanceador de carga configurado incorretamente).
Política da organização que impede a execução de métodos de tráfego de entrada ou do Dialogflow.
Alternativa
Um webhook tem um limite de tempo limite de 5 segundos por padrão. É possível aumentar o limite de tempo limite do webhook ao criar ou editar o recurso de webhook, o que daria mais tempo para o webhook responder.
O console falha ao configurar o projeto
Tags de categoria: console, projeto
Problema
Exibiu o
erro
Failed to set up GCP project
ao criar um agente com o console.
Solução
Talvez você não tenha permissão para criar projetos do Google Cloud. Verifique se é possível criar um projeto do Google Cloud diretamente no console do Google Cloud. Se você não conseguir criar um projeto, siga as recomendações fornecidas na mensagem de erro.
Referência do parâmetro da sessão mostrada na resposta
Tags de categoria: console
Problema
As respostas retornadas pelo Dialogflow incluem as referências de parâmetro
em vez dos valores dos parâmetros.
Por exemplo:
Hello, $session.params.customer_name
Os parâmetros não serão resolvidos, e a referência do parâmetro será mostrada se ele não for encontrado na sessão atual ou se não estiver sendo usado de acordo com o tipo.
Solução
Esse problema pode aparecer porque o parâmetro usado não foi incluído na conversa, tem um erro de digitação ou tem um tipo diferente do usado.
Falha na criação do agente no console quando a API não foi ativada
Tags de categoria: console
Problema
Exibiu o
erro
Dialogflow API has not been enabled for the project. Code: FAILED_PRECONDITION
ao criar um agente com o console.
Solução
Siga as etapas de configuração para ativar a API Dialogflow.
Ao tentar acessar o console pela conta da organização, recebo um erro de serviço
Tags de categoria: console
Problema
Recebeu o
erro
You don't have access to this service
ao tentar acessar o console na sua conta da organização.
Solução
Entre em contato com o administrador do sistema da sua organização e verifique se as configurações dela dão acesso ao console.
Se as configurações da sua organização permitirem o acesso e você tiver migrado sua conta de outra organização, ela pode ter sido sinalizada como restrita pelo Google. Esse é provavelmente o problema se outros usuários da sua organização tiverem acesso ao console, mas você não tiver. Entre em contato com o suporte para receber ajuda.
Não é possível exportar o agente no formato JSON devido à falta de fluxo
Tags de categoria: console
Problema
A exportação do agente como bytes brutos é concluída, mas a exportação do agente no formato JSON falha com uma mensagem de erro semelhante a esta:
Flow 'projects/PROJECT_ID/locations/LOCATION_ID/agents/AGENT_ID/flows/FLOW_ID' does not exist in the agent
Esse problema pode ser causado por um caso de teste que faz referência a um fluxo que foi excluído.
Solução
Para resolver esse problema, analise casos de teste não usados para confirmar se o fluxo referenciado na mensagem de erro está sendo usado em algum caso de teste. Em seguida, exclua os casos de teste confirmados.
Conectividade do gateway telefônico
Tags de categoria: integração
Problema
Ao usar o gateway de telefone, você recebe um sinal de ocupado ou a chamada é interrompida.
Solução
Há cotas e limites para esse recurso. Se você receber um sinal de ocupado ou a chamada cair, é possível que você tenha excedido a cota.
Erro RESOURCE_EXHAUSTED
ao tentar criar um novo número de telefone
Tags de categoria: integração
Problema
Ao tentar criar um novo número de telefone nos Agentes de conversação (Dialogflow CX), no Dialogflow ES ou no Agent Assist, um erro RESOURCE_EXHAUSTED
é retornado.
Solução
Esse erro significa que você excedeu o limite de números de telefone por projeto. Para criar um novo número de telefone, exclua os números não usados associados ao seu projeto até ficar abaixo do limite.
Se você criou números de telefone no gateway telefônico de agentes de conversação (Dialogflow CX) ou no gateway telefônico do Dialogflow ES, é possível excluí-los no console. A exclusão do agente sem excluir o número de telefone não exclui o número associado a ele.
Como alternativa, você pode usar a API seguindo as etapas abaixo.
Etapa 1: Identifique todos os números de telefone associados ao seu projeto
Para identificar os números de telefone associados ao seu projeto, use o método de API projects.phoneNumbers/list ou projects.locations.phoneNumbers.list em todas as regiões em que você criou números de telefone.
Para a região
global
, use o seguinte comando:curl -X GET \ -H "Authorization: Bearer "$(gcloud auth print-access-token) \ -H "X-Goog-User-Project: PROJECT_ID" \ -H "Content-Type: application/json; charset=utf-8" \ https://dialogflow.googleapis.com/v2beta1/projects/PROJECT_ID/locations/global/phoneNumbers
Para outras regiões, é necessário especificar a região em dois lugares:
curl -X GET \ -H "Authorization: Bearer "$(gcloud auth print-access-token) \ -H "X-Goog-User-Project: PROJECT_ID" \ -H "Content-Type: application/json; charset=utf-8" \ https://REGION_ID-dialogflow.googleapis.com/v2beta1/projects/PROJECT_ID/locations/REGION_ID/phoneNumbers
Etapa 2: (Opcional) Identificar os agentes associados aos perfis de conversa
Conseguir o ID do agente de conversação (Dialogflow CX) associado ao número de telefone pelo perfil de conversa pode ajudar a identificar se o agente ainda está em uso e se o número de telefone ainda é necessário. Para isso, use o método projects.conversationProfiles/get da API. Você pode encontrar os IDs dos perfis de conversa nas respostas aos comandos executados na etapa 1.
Para a região
global
, use o seguinte comando:curl -X GET \ -H "Authorization: Bearer "$(gcloud auth print-access-token) \ -H "X-Goog-User-Project: PROJECT_ID" \ -H "Content-Type: application/json; charset=utf-8" \ https://dialogflow.googleapis.com/v2beta1/projects/PROJECT_ID/locations/global/conversationProfiles/CONVERSATION_PROFILE_ID
Para outras regiões, especifique a região em dois lugares:
curl -X GET \ -H "Authorization: Bearer "$(gcloud auth print-access-token) \ -H "X-Goog-User-Project: PROJECT_ID" \ -H "Content-Type: application/json; charset=utf-8" \ https://REGION_ID-dialogflow.googleapis.com/v2beta1/projects/PROJECT_ID/locations/REGION_ID/conversationProfiles/CONVERSATION_PROFILE_ID
Você pode encontrar o agente pelo ID no console dos agentes de conversação (Dialogflow CX) usando a opção Pesquisar na página Ver todos os agentes.
No Dialogflow ES, um projeto pode ser associado a no máximo cinco agentes, e um agente do Dialogflow ES pode ser associado a um número de telefone. Assim, você pode
abrir o agente no console do Dialogflow ES em
https://dialogflow.cloud.google.com/#/editAgent/PROJECT_ID
/intents.
Se nenhum agente for encontrado, você ainda poderá excluir o número de telefone se tiver certeza de que ele não é mais necessário.
Etapa 3: Excluir números de telefone não usados
Para excluir números de telefone que não são mais necessários, use o método projects.phoneNumbers/delete ou projects.locations.phoneNumbers.delete da API. Você pode encontrar os IDs de números de telefone na resposta aos comandos executados na etapa 1.
Para a região
global
, use o seguinte comando:curl -X DELETE \ -H "Authorization: Bearer "$(gcloud auth print-access-token) \ -H "X-Goog-User-Project: PROJECT_ID" \ -H "Content-Type: application/json; charset=utf-8" \ https://dialogflow.googleapis.com/v2beta1/PHONE_NUMBER_ID
Para outras regiões, especifique a região:
curl -X DELETE \ -H "Authorization: Bearer "$(gcloud auth print-access-token) \ -H "X-Goog-User-Project: PROJECT_ID" \ -H "Content-Type: application/json; charset=utf-8" \ https://REGION_ID-dialogflow.googleapis.com/v2beta1/PHONE_NUMBER_ID
Sem resposta do Dialogflow CX Messenger
Tags de categoria: integração
Problema
Nenhuma resposta do agente para interações do Dialogflow CX Messenger.
Solução
Se você não estiver vendo respostas do Dialogflow CX Messenger, verifique se o faturamento e a API Dialogflow estão ativados no projeto. Veja as instruções de configuração.
O valor do parâmetro corresponde, mas não é um sinônimo de entidade
Tags de categoria: NLU
Problema
Caso geral: um valor de parâmetro é extraído no momento da execução, mesmo que a entidade correspondente ao parâmetro não contenha o valor correspondente como sinônimo.
Um caso mais específico: depois que um sinônimo é excluído de uma entidade e o agente é treinado novamente, esse sinônimo ainda é extraído como um valor de parâmetro para essa entidade.
Solução
Use a opção pesquisar para verificar se o valor correspondente pode estar presente no agente como uma entidade implícita (Agentes de conversação (Dialogflow CX), Dialogflow ES). Encontre todas as intents que têm anotações com esse parâmetro e entidade.
Corrija as anotações para garantir que nenhuma delas seja aplicada ao texto que representa o valor de correspondência indesejado.
Teste o agente no momento da execução para verificar se o problema foi resolvido.
Se o problema persistir, verifique se as opções Expansão automática e Correspondência aproximada estão desmarcadas nas configurações avançadas de entidade e teste o agente novamente.
O bot por voz pula algumas respostas
Tags de categoria: conversão de texto em fala
Problema
Em um agente projetado para texto e voz, o bot de voz não lê algumas das respostas.
Solução
Se pelo menos uma resposta de texto de áudio de saída for definida para uma rodada de conversa específica, verifique se a opção de texto de áudio de saída está presente de forma consistente em todas as respostas de webhook e de cumprimento do agente em todas as etapas da rodada de conversa.
As tags SSML não entram em vigor
Tags de categoria: conversão de texto em fala
Problema
As tags SSML são definidas no atendimento do agente, mas o bot de voz lê o texto sintetizado sem efeitos SSML.
Solução
Verifique se apenas um par <speak></speak>
está presente por card de resposta
no console do Dialogflow ou por objeto de mensagem de resposta, se as respostas forem
fornecidas pela API ou pelo webhook.
O agente de voz pronuncia o zero como a letra O
Tags de categoria: conversão de texto em fala
Problema
Em um agente projetado para voz, ele lê zeros como a letra O em vez de zero.
Solução
- Mude Agente diz para usar a Opção de diálogo de texto de áudio de saída.
- Marque a caixa de seleção "SSML".
- Encaixe seu texto em uma tag SSML:
<speak> <say-as interpret-as='verbatim'>YOUR_TEXT</say-as> </speak>
- Salvar.
Por exemplo, os algarismos 0 de números de cartão de crédito serão escritos como zeros.
<speak> <say-as interpret-as='verbatim'>5177 7702 8500 4578</say-as> </speak>
Pronúncia sintetizada inesperada
Tags de categoria: conversão de texto em fala
Problema
A pronúncia sintetizada das respostas do agente (por exemplo, nomes próprios, acrônimos) não é como o esperado.
Solução
Para garantir pronúncias específicas de palavras não conhecidas, use a tag SSML say-as ou phoneme nas respostas do agente.
As etapas de execução da máquina de estados máximas permitidas foram alcançadas
Tags de categoria: execução
Problema
Recebeu a seguinte mensagem de erro no console dos agentes de conversação (Dialogflow CX) ou nos registros ao enviar solicitações de execução para o agente:
You have reached the maximum allowed state machine execution steps. You may consider simplifying your agent/flow design. Current execution steps are: [<array_of_objects>]
A matriz na mensagem de erro contém uma lista de etapas de execução para a solicitação. A lista pode ficar incompleta se o número de etapas for muito grande.
Solução
Essa mensagem de erro geralmente indica que o número de transições para uma única vez de conversa é muito grande. Um exemplo comum é a transição para a mesma página, que cria um loop infinito.
Para resolver o problema:
- Copie a matriz JSON da mensagem de erro.
- (Opcional) Formate a matriz copiada como JSON bonito para melhorar a legibilidade. Se a mensagem de erro for truncada, procure o último objeto "Step", exclua o objeto de etapa incompleto e a vírgula anterior e adicione um colchete de fechamento de matriz antes de validar e embelezar o JSON.
- Confira os valores de
"TriggeredTransitionRouteId"
e"TargetPage"
para cada etapa. No caso de um loop infinito, os campos"TriggeredTransitionRouteId"
e"TargetPage"
têm valores repetidos para a maioria das etapas. - Modifique o design do agente para remover as transições de loop infinito ou reduzir o número de transições para uma única vez na conversa.
A correspondência de expressão regular é muito ampla
Tags de categoria: Regex
Problema
Recebemos um erro Regular expression match is too broad
ao criar
uma entidade regexp (Agentes de conversação (Dialogflow CX),
Dialogflow ES).
Solução
Considere a seguinte abordagem:
- Use
^
e$
na expressão regular para indicar o início e o fim do texto, respectivamente. - Use a entidade regexp com um parâmetro obrigatório (Agentes de conversação (Dialogflow CX), Dialogflow ES).
- Defina as solicitações de parâmetro obrigatório para pedir ao usuário final que forneça apenas o valor da entidade sem palavras ao redor.
Caracteres não alfanuméricos indesejados inseridos pelo reconhecimento de fala
Tags de categoria: conversão de voz em texto
Problema
Ao tentar fazer a correspondência de caracteres alfanuméricos, caracteres não alfanuméricos indesejados (espaços, traços etc.) são inseridos pelo reconhecedor de fala, o que resulta na entidade não ser correspondida.
Solução
- Se você usa entidades do sistema para números correspondentes, considere usar entidades de regexp (Agentes de conversação (Dialogflow CX), Dialogflow ES).
- Siga todas as recomendações da seção Reconhecimento de fala alfanumérica imprecisa por entidades regexp.
- Para números correspondentes por meio de integrações de telefonia, considere uma opção de DTMF, além do reconhecimento de voz.
Transcrições vazias para entradas de voz
Tags de categoria: conversão de voz em texto
Problema
As respostas do Dialogflow para entradas de voz retornam transcrições vazias. As solicitações são tratadas como sem entrada ou sem correspondência.
Solução
Ouça a gravação de áudio para confirmar se ela contém fala.
Verifique se a adaptação de fala está ativada nas configurações do agente (Agentes de conversação (Dialogflow CX), Dialogflow ES).
Se ativar a adaptação de fala não ajudar, teste os seguintes modelos de fala em uma configuração que não seja de produção e use aquele que renderizar os melhores resultados:
latest_short
phone_call
command_and_search
Para outros idiomas, encontre os modelos de fala compatíveis na documentação Idiomas compatíveis com a conversão de texto em voz.
A maneira de especificar um modelo de fala depende de como você configura as interações com o Dialogflow.
Para solicitações de API, forneça o nome do modelo no campo
model
emInputAudioConfig
(Agentes de conversação (Dialogflow CX), Dialogflow ES).Se você usa o gateway telefônico (Agentes de conversação (Dialogflow CX), Dialogflow ES), é possível atualizar o modelo de fala no perfil de conversação criado pelo Dialogflow quando você ativou a integração:
Extraia o ID do perfil da conversa:
- Use o método
conversationProfiles.list
para recuperar todos os perfis de conversa vinculados ao seu projeto. - Encontre o perfil de conversa que você quer atualizar e copie o
valor do campo
name
.
No gateway telefônico do Dialogflow CX, o nome de exibição do perfil de conversa pode ser encontrado nas configurações de integração. Para o Dialogflow ES Phone Gateway, o nome de exibição do perfil de conversa corresponde ao nome do agente em que a integração foi ativada.
Se você tiver vários perfis de conversa com o mesmo nome de exibição, verifique o ID do agente no campo
automatedAgentConfig
da resposta do métodoconversationProfiles.list
.- Use o método
Use o método da API
conversationProfiles.patch
para atualizar o campomodel
emSpeechToTextConfig
.
Para integrações com a Contact Center AI, consulte seu integrador de telefonia para saber como atualizar o modelo de fala para a integração ou para solicitações individuais.
Tela em branco com o erro "O tamanho do arquivo excede 2 MB" ao comparar versões do agente.
Tags de categoria: console
Problema
Ao tentar comparar duas versões diferentes do agente, a tela fica em branco com a mensagem de erro:
File size exceeds 2MB
Isso ocorre porque um dos arquivos excede o tamanho de 2 MB.
Solução
Para comparar versões do agente em que um dos arquivos excede 2 MB, é recomendado usar o método compareVersion da API.
Reconhecimento de fala alfanumérica impreciso por entidades regexp
Tags de categoria: conversão de voz em texto, Regex
Problema
Recebemos transcrições imprecisas para entradas de voz alfanuméricas projetadas para serem correspondidas a uma entidade regexp (Agentes de conversação (Dialogflow CX), Dialogflow ES).
Solução
- Verifique se a adaptação de fala está ativada nas configurações do agente (Agentes de conversação (Dialogflow CX), Dialogflow ES).
- Verifique se pelo menos uma entrada de entidade segue todos os requisitos de entrada de regex (Agentes de conversação (Dialogflow CX), Dialogflow ES).
- Para padrões específicos, use as expressões regulares mais específicas.
Por exemplo, para um alfanumérico que começa com duas letras seguidas
de cinco dígitos, use
[a-zA-Z]{2}\d{5}
em vez de[a-zA-Z0-9]{7}
. - Verifique se a entidade regexp permite a correspondência de caracteres não alfanuméricos
(espaços, traços etc.) que podem ser inseridos pelo reconhecedor de fala.
Para atender ao requisito 2 desta lista, crie várias entradas de entidade:
uma para atender aos requisitos 2 desta lista
e outra para representar caracteres não alfanuméricos.
Por exemplo, para corresponder a cinco dígitos e permitir caracteres não alfanuméricos:
\d{5}
(\d[^a-zA-Z0-9]*){5}
- Verifique se o agente segue o requisito de definição de parâmetro
(Agentes de conversação (Dialogflow CX),
Dialogflow ES).
Exemplo de agentes de conversação (Dialogflow CX)
Exemplo do Dialogflow ES
- Confira se o agente segue o requisito de anotação de frases de treinamento
(Agentes de conversação (Dialogflow CX),
Dialogflow ES).
Exemplo do Dialogflow ES
- Verifique se os testes seguem as diretrizes de teste (Agentes de conversação (Dialogflow CX), Dialogflow ES).
- Para remover caracteres não alfanuméricos que podem ter sido inseridos pelo
reconhecedor de voz, use o seguinte:
- Para agentes de conversação (Dialogflow CX): função do sistema SUBSTITUTE ou webhook.
- Para o Dialogflow ES: webhook
- Verifique as limitações de adaptação de fala (Agentes de conversação (Dialogflow CX), Dialogflow ES).
Projetar para conversas controladas
Crie seu agente com caminhos de conversa claramente definidos. Verifique se o agente pode solicitar as informações necessárias para atender aos requisitos do usuário. Evite um escopo de conversação muito amplo, o que pode levar a um comportamento imprevisível.
Analisar registros
As entradas e saídas de playbooks, ferramentas e repositórios de dados são capturadas nos registros. Use os IDs de conversa coletados para seguir a cadeia de chamadas e identificar onde a execução deu errado.
Teste os comandos
Se um conjunto específico de instruções não funcionar como esperado, tente reformulá-lo. Como alternativa, você pode usar o Gemini para gerar solicitações (metassolicitações). Essa abordagem iterativa pode ajudar a encontrar a frase ideal para seu caso de uso.
Fornecer informações completas ao suporte
Ao abrir um caso de suporte com o suporte do Cloud, inclua os IDs de conversa e os registros relevantes coletados durante a investigação. Essas informações são essenciais para depurar problemas de maneira eficiente.