C Marcadores de Conversa para Insights
Para habilidades com fluxos de caixas de diálogo baseados em YAML, você pode tornar os relatórios de Insights mais fáceis de ler adicionando as seguintes propriedades de marcador de conversa ao fluxo de caixas de diálogo:
insightsInclude: false
– Exclui estados dos caminhos de caixa de diálogo que são renderizados nos relatórios de Insights para Intenções e Conversas. Adicionar esta propriedade a qualquer estado impede que ela seja renderizada ou contada nos relatórios de Insights, então você pode querer aplicá-la aos estados que desempenham uma função de suporte, como definir um valor de variável. Por exemplo, adicionarinsightsInclude: false
a cada propriedadeSystem.SetVariable
em uma habilidade de pizza reduz o caminho para renderizar somente os estados da interação do usuário da habilidade.insightsEndConversation: true
– Marca o fim dos relatórios de Insights para que você possa isolar a parte relevante da conversa. Você também pode usar esse marcador para dividir o relatório por transição.
Modelar o Fluxo de Caixas de Diálogo
Por padrão, o Insights rastreia todos os estados em uma conversa, mas talvez você não queira incluir todos eles nos relatórios. Para se concentrar em determinadas transações ou excluir completamente os estados do relatório, você pode modelar o fluxo de caixas de diálogo usando as propriedades
insightsInclude
e insightsEndConversation
. Essas propriedades, que você pode adicionar a qualquer componente, fornecem um melhor nível de controle sobre o relatório do Insights.
Observação
Essas propriedades são suportadas apenas em instâncias do Oracle Digital Assistant provisionadas no Oracle Cloud Infrastructure (às vezes chamada de infraestrutura de nuvem Geração 2). Não há suporte para elas em instâncias provisionadas no Oracle Cloud Platform (como todas as instâncias da versão 19.4.1 do Oracle Digital Assistant).
Essas propriedades são suportadas apenas em instâncias do Oracle Digital Assistant provisionadas no Oracle Cloud Infrastructure (às vezes chamada de infraestrutura de nuvem Geração 2). Não há suporte para elas em instâncias provisionadas no Oracle Cloud Platform (como todas as instâncias da versão 19.4.1 do Oracle Digital Assistant).
Marcar o Fim de uma Conversa
Em vez de depender da transição
return
para marcar o fim de uma conversa completa, você pode marcar onde deseja interromper a gravação da conversa para relatórios de insights usando a propriedade insightsEndConversation
. Esta propriedade permite que você se concentre apenas nos aspectos do fluxo de caixas de diálogo desejado. Por exemplo, você pode precisar registrar apenas uma conversa no ponto em que um cliente cancela um pedido, mas não mais do que isso (nenhuma mensagem de confirmação subsequente ou opções que ramifiquem a conversa). Por padrão, essa propriedade é definida como false
, o que significa que o Insights continua gravando até uma transição return
, ou até que a propriedade insightsEndConversation
seja definida como true
(insightsEndConversation: true
).
cancelOrder:
component: "System.Output"
properties:
text: "Your order is canceled."
insightsEndConversation: true
transitions:
next: "intent"
Como esse flag altera a maneira como o relatório de insights exibe uma conversa concluída, as contagens de conversas calculadas após a introdução desse flag no fluxo de caixas de diálogo podem não ser comparáveis às contas de conversas de versões anteriores da habilidade. Observação
O marcador
O marcador
insightsEndConversation
não é usado no Designer de Fluxo Visual porque os fluxos modulares já delineiam a conversa. Uma conversa termina quando o último estado de um fluxo de nível superior é atingido.
Simplificar os Dados Coletados pelo Insights
Use a propriedade
insightsInclude
para excluir estados que você considera estranhos de serem registrados nos relatórios. Para excluir um estado do relatório do Insights, defina esta propriedade como false
:
...
resolveSize:
component: "System.SetVariable"
properties:
variable: "crust"
value: "${iResult.value.entityMatches['PizzaSize'][0]}"
insightsInclude: false
transitions:
...
...
Esta propriedade é específica somente dos relatórios do Insights. Ela não impede que os estados sejam renderizados no Testador.
Observação
insightsInclude
não é suportado pelo Designer de Fluxo Visual.
Casos de Uso para Marcadores de Insights
Esses casos de uso típicos ilustram as melhores práticas para facilitar a leitura dos relatórios adicionando as propriedades do marcador de conversa ao fluxo de caixas de diálogo.
Caso de Uso 1: Você Deseja Separar Conversas por Intenções ou Transições
Use a propriedade insightsEndConversation: true
para exibir as interações do usuário que ocorrem em uma única sessão de chat como conversas separadas. Você pode, por exemplo, aplicar esta propriedade a um estado que inicie o caminho de execução de uma intenção específica e ramifique o fluxo de caixas de diálogo.
O estado
A segunda é a entrada específica de transição que nomeia uma intenção quando a ação
No entanto, quando você aciona a transição
ShowMenu
da habilidade do CrcPizzaBot, com suas transições pizza
, pasta
e textReceived
, é um estado: ShowMenu:
component: "System.CommonResponse"
properties:
processUserMessage: true
metadata:
responseItems:
- type: "text"
text: "Hello ${profile.firstName}, this is our menu today:"
footerText: "${(textOnly.value=='true')?then('Enter number to make your choice','')}"
name: "hello"
separateBubbles: true
actions:
- label: "Pizzas"
type: "postback"
keyword: "${numberKeywords.value[0].keywords}"
payload:
action: "pizza"
name: "Pizzas"
- label: "Pastas"
keyword: "${numberKeywords.value[1].keywords}"
type: "postback"
payload:
action: "pasta"
name: "Pastas"
transitions:
actions:
pizza: "OrderPizza"
pasta: "OrderPasta"
textReceived: "Intent"
Ao adicionar a propriedade insightsEndConversation: true
ao estado ShowMenu
, você pode dividir o relatório por estas transições: ShowMenu:
component: "System.CommonResponse"
properties:
processUserMessage: true
insightsEndConversation: true
…
Por causa da propriedade insightsEndConversation: true
, o Insights considera qualquer interação adicional ativada pelas transições pizza
, pasta
ou textReceived
como uma conversa separada, o que significa que duas conversas, em vez de uma, são calculadas na métrica Conversas da página Visão Geral e, da mesma forma, duas entradas separadas são criadas no relatório Conversas.
Observação
Lembre-se de que as contagens de conversas serão inconsistentes com as contagens calculadas antes de adicionar esta propriedade.
A primeira entrada é para o caminho de execução da intenção ShowMenu em que a conversa termina com o estado Lembre-se de que as contagens de conversas serão inconsistentes com as contagens calculadas antes de adicionar esta propriedade.
ShowMenu
.A segunda é a entrada específica de transição que nomeia uma intenção quando a ação
textReceived
é acionada ou indica Nenhuma Intenção quando não há segunda intenção em execução. Quando você escolhe Pizzas ou Pastas no menu de lista renderizado para o estado showMenu
, o relatório Conversa contém uma entrada ShowMenu e uma entrada Sem Intenção para a conversa de transição porque o usuário não informou nenhum texto que precisava ser resolvido para uma intenção.No entanto, quando você aciona a transição
textReceived
informando texto, o relatório Conversa nomeia a intenção resolvida (OrderPizza, OrderPasta). Caso de Uso 2: Você Deseja Excluir os Estados de Suporte dos Relatórios Caminhos de Insights
O nó
Você pode adicionar a propriedade
states
da habilidade CrcPizzaBot começa com uma série de estados System.SetVariable
. Como esses estados são posicionados no início da definição, eles começam cada renderização de caminho quando você não os excluiu com a opção Filtrar Estados. Você pode considerar estados de apoio como desordem se seu foco estiver nos aspectos transacionais do caminho. Você pode simplificar a renderização do caminho manualmente usando o menu Estados do Filtro ou adicionando a propriedade insightsInclude: false
à definição do fluxo de caixas de diálogo. Você pode adicionar a propriedade
insightsInclude: false
a qualquer estado que não queira ver no relatório Caminhos. setTextOnlyChannel:
component: "System.SetVariable"
properties:
insightsInclude: false
variable: "textOnly"
value: "${(system.channelType=='webhook')?then('true','false')}"
setAutoNumbering:
component: "System.SetVariable"
properties:
insightsInclude: false
variable: "autoNumberPostbackActions"
value: "${textOnly}"
setCardsRangeStart:
component: "System.SetVariable"
properties:
insightsInclude: false
variable: "cardsRangeStart"
value: 0
transitions:
...
...
Para CRCPizzaBotSkill, a adição da propriedade insightsInclude: false
a cada um dos estados System.SetVariable
coloca os estados transacionais no início do caminho. Observação
A adição da propriedade
A adição da propriedade
insightsInclude: false
não só altera a forma como os caminhos são renderizados, mas afetará a soma relatada para a métrica Média de Estados.
Tutorial: Otimizar Relatórios do Insights com Marcadores de Conversa
Você pode praticar com marcadores de conversa usando o seguinte tutorial: Otimizar Relatórios do Insights com Marcadores de Conversa.