Ferramenta de migração do Dialogflow para o Actions Builder

O Actions Builder é a melhor maneira de desenvolver apps para o Google Assistente, porque ajuda a criar ações de conversa de maneira simplificada e prática. O Actions Builder é um ambiente de desenvolvimento integrado baseado na Web integrado ao Console do Actions e que oferece os seguintes recursos:

  • Fluxo de trabalho visual e maneira baseada em estado de controlar as conversas da Ação.
  • Prototipagem mais rápida e latência reduzida.
  • Interface única para criar, analisar e depurar suas ações de conversa.

Se você tiver uma ação de conversa criada com o Dialogflow, poderá migrar seu projeto para o Actions Builder no Console do Actions.

Motivos para migrar

Não é necessário migrar o agente do Dialogflow, e a ação continua funcionando nos dispositivos com o Google Assistente, mas há benefícios em usar o Actions Builder e o SDK do Actions.

  • Ferramentas aprimoradas com o SDK e a CLI do Actions

    • O SDK e a CLI do Actions permitem criar projetos complexos e colaborar facilmente com suas equipes. Os designers de conversação podem primeiro criar o fluxo de conversa no Actions Builder. Os desenvolvedores podem fazer o download do projeto em uma estrutura baseada em arquivo e continuar criando funcionalidades usando as ferramentas de desenvolvimento e os sistemas de controle de versão favoritos deles. Ao enviar o projeto de volta para o Actions Builder, outros colegas de equipe podem continuar a criar, testar e implantar a ação.
  • Melhor integração com as práticas recomendadas de design de conversa

    • A personalização de intents substitutas em cada cena permite que você forneça respostas sem entrada ou sem correspondência a qualquer momento da conversa.
    • Fácil colaboração entre designers e desenvolvedores devido ao método gráfico baseado em estado de construir uma experiência conversacional.
  • Localização mais fácil

    • Todo o conteúdo localizável de intents, cenas e tipos (como frases de treinamento, prompts e sinônimos de tipo) pode ser editado em uma página.

Melhorias na implementação de conversas

O Actions Builder traz muitas melhorias para o console do Actions e simplifica os processos de desenvolvimento. Esta seção descreve como o Actions Builder simplifica e simplifica o processo de desenvolvimento da sua ação.

Reutilização de intents

No Dialogflow, a lógica do webhook é vinculada às intents, o que significa que elas não podem ser reutilizadas com outros webhooks. Se você quiser usar as mesmas frases de treinamento, mas com uma lógica de webhook diferente, precisará criar outras intents que se refiram a diferentes nomes de gerenciador para cada caso lógico do webhook.

No Actions Builder, uma intent inclui frases e entidades de treinamento, mas o webhook é independente. Essa abordagem significa que é possível usar diferentes gerenciadores de webhook para a mesma intent, oferecendo mais flexibilidade.

Melhor visualização do fluxo da conversa

No Dialogflow, os contextos indicam quais intents têm mais probabilidade de corresponder em determinado momento da conversa.

Em vez de contextos, o Actions Builder usa cenas para gerenciar quais intents podem ser acessadas em diferentes partes da conversa.

Quando um usuário entra em uma cena, as transições definem os caminhos de conversa que ele pode seguir. As transições podem ser baseadas em lógica condicional, bem como na correspondência personalizada ou de intent do sistema.

A interface do Builder facilita a compreensão de como as transições conectam as cenas. Na Figura 1, a cena guess_game faz a transição para a cena suggested_new_game (1). Também é possível conferir as duas intents acessíveis no cenário: generic_no e generic_yes. Dependendo de qual intent é correspondida, a cena suggested_new_game faz a transição para a cena show_menu ou routing_game (2).

Figura 1. Visualização gráfica de uma cena, com a transição da cena (1) e o processamento da intent (2).

Comandos personalizáveis com base em cenários

No Dialogflow, é possível enviar uma resposta simples no webhook ou definir uma resposta estática no console do Dialogflow.

O Actions Builder introduz o conceito de fila de comandos. Você pode definir comandos em várias seções de uma cena, bem como em seu webhook. Todas as solicitações são adicionadas à fila, mescladas em uma resposta e entregues ao usuário. Essa abordagem permite que você reúna respostas com base no que os usuários disseram ou fizeram, e não apenas com base na intenção que corresponderam.

Por exemplo, se os prompts forem definidos em um cenário e no webhook, o prompt do webhook será adicionado à fila de solicitações primeiro, e o prompt da cena será adicionado em segundo.

A lista a seguir descreve onde você pode definir comandos no Actions Builder e a ordem em que são adicionados à fila:

  1. Ao inserir
  2. Condições
  3. Preenchimento de slots
  4. Cenas

Práticas recomendadas para design de conversas integradas

Quando um projeto do Dialogflow é configurado, uma intent substituta global é gerada automaticamente, assim como a intent de boas-vindas padrão. A intent substituta padrão é associada quando um usuário diz algo que não pode ser associado a intents existentes ou quando não há nenhuma entrada do usuário.

Para que os erros sejam processados corretamente, as intents de continuidade precisam ser adicionadas à intent substituta para cada turno da conversa.

No Actions Builder, duas intents globais separadas são incluídas automaticamente em novos projetos: NO_MATCH e NO_INPUT.

Quando o PLN do Google Assistente corresponde à intent do sistema NO_MATCH ou NO_INPUT, a respectiva solicitação padrão ou personalizada é enviada ao usuário. Quando NO_MATCH ou NO_INPUT são correspondidos três vezes, a respectiva mensagem final é enviada ao usuário, e o Assistente encerra a conversa com a ação.

Você pode adicionar três gerenciadores NO_MATCH e NO_INPUT a cada cena. Esse recurso permite solicitações personalizáveis para tratamento de erros específicos, em vez de um substituto geral causado por nenhuma correspondência ou nenhuma entrada do usuário.

Figura 2. Três gerenciadores de intent NO_MATCH atribuídos a um único cenário.