IBM Cloud Docs
Análise avançada e tarefas relacionadas ao log

A experiência do clássico Watson Assistant foi movida. Para obter a versão mais atualizada, consulte Análise avançada e tarefas relacionadas ao log.

Análise avançada e tarefas relacionadas ao log

Aprenda sobre APIs e outras ferramentas que podem ser usadas para acessar e analisar dados do log.

Usando blocos de notas Jupyter para análise

A IBM criou blocos de notas Jupyter que podem ser usados para analisar o comportamento ou seu assistente. Um bloco de notas do Jupyter é um ambiente baseado na web para computação interativa. É possível executar pequenas partes de código que processam seus dados e é possível visualizar imediatamente os resultados de seu cálculo.

É possível usar os blocos de notas somente com qualificações no idioma inglês.

Blocos de notas de análise

Há um conjunto de blocos de notas de análise que podem ser usados com as ferramentas Python padrão e um conjunto projetado para o uso ideal com o IBM Watson® Studio.

O Watson Studio é um produto que fornece um ambiente no qual é possível selecionar e escolher as ferramentas que você precisa para analisar e visualizar dados, para limpar e modelar dados, para alimentar dados de fluxo ou para criar, treinar e implementar modelos de aprendizado de máquina. Consulte a documentação do produto para obter mais informações.

O Watson Assistant Continuous Improvement Best Practices Guide descreve como aproveitar ao máximo esses blocos de notas.

Usando os blocos de notas com o Watson Studio

Os seguintes notebooks estão disponíveis:

Ao escolher utilizar os blocos de notas projetados para uso com o Watson Studio, as etapas serão praticamente como a seguir:

  1. Crie uma conta Watson Studio, crie um projetoe inclua uma conta do Cloud Object Storage nela.

  2. Na comunidade do Watson Studio, escolha um bloco de notas.

    No início do processo de desenvolvimento, use o bloco de notas Análise de qualificação de diálogo para o Watson Assistant para ajudá-lo a começar. Ele oferece os tipos de insights a seguir:

    • Examina os termos que estão correlacionados a cada intento em seus dados de treinamento para localizar anomalias que possam identificar problemas que podem ser investigados mais adiante.
    • Usa um conjunto de teste cego que você fornece para calcular o desempenho em métricas estatísticas como Exatidão, Precisão, Recall e F1.
    • Oferece recursos avançados que podem ser usados para localizar as causas de problemas comuns, tais como por que algumas sentenças muitas vezes são identificadas incorretamente.

    Para saber mais sobre como esse bloco de notas pode ajudar a melhorar seu diálogo, leia esta Medium.com postagem do blog.

  3. Depois de implementar uma versão do assistente e ter alguns dados do log de conversa coletados, execute o bloco de notas Medir o desempenho do Watson Assistant.

  4. Siga as instruções passo a passo fornecidas com os blocos de notas para analisar um subconjunto das trocas de diálogo por meio dos logs.

    Execute primeiro o bloco de notas a seguir:

    • Medida: reúne métricas que se concentram na cobertura (com que frequência o assistente está confiante o suficiente para responder aos usuários) e efetividade (quando o assistente responde, se as respostas estão satisfazendo as necessidades do usuário).

    Os insights são visualizados de maneiras que facilitam o entendimento de áreas para melhoria em seu assistente.

  5. Exporte um conjunto de amostra dos logs de conversas ineficazes e, em seguida, analise-os e anote-os.

    Por exemplo, indique se uma resposta está correta. Se estiver correta, marque se ela é útil. Se uma resposta estiver incorreta, identifique a causa raiz, por exemplo, a intenção ou entidade errada foi detectada ou o nó de diálogo errado foi acionado. Depois de identificar a causa raiz, indique qual teria sido a opção correta.

  6. Alimente a planilha anotada no bloco de notas Analisar a efetividade do Watson Assistant.

    • Efetividade: executa uma análise mais profunda de seus logs para ajudá-lo a entender as etapas que podem ser executadas para melhorar seu assistente.
  7. Use o bloco de notas Análise de fluxo de diálogo para o Watson Assistant para revisar seu diálogo. O bloco de notas pode ajudá-lo a identificar os nós de diálogo nos quais os clientes mais frequentemente abandonam a conversa.

    Para obter mais informações sobre como esse bloco de notas pode ajudar a analisar e avaliar o abandono, leia esta Medium.com postagem do blog.

Esse processo ajuda você a entender as etapas que podem ser executadas para melhorar seu assistente.

Usando os blocos de notas com ferramentas Python padrão

Se você optar por usar ferramentas Python padrão para executar os blocos de notas, será possível obter os blocos de notas do GitHub.

Novamente, o Watson Assistant Continuous Improvement Best Practices Guide descreve qual bloco de notas usar em cada estágio de seu processo de melhoria.

Usando a API de logs

É possível usar a API /logs para listar eventos das transcrições de conversas que ocorreram entre seus usuários e seu assistente. Para conversas criadas usando a API v2 /message, use o terminal em nível de instância para listar eventos de log em todas as áreas de trabalhoe, em seguida, filtre por ID do assistente.. Para obter mais informações sobre logs de filtragem, consulte Referência de consulta de filtro.

A API registra apenas as mensagens que são trocadas em conversas definidas por uma habilidade de diálogo.

O número de dias que os logs são armazenados difere pelo tipo de plano de serviço. Consulte Limites de log para obter detalhes.

Para um script Python, é possível executar para exportar logs e convertê-los em formato CSV, fazer download do arquivo export_logs_py.py a partir do repositório Watson Assistant GitHub).

Entendendo a terminologia relacionada a logs

Primeiro, revise as definições de termos que estão associados aos logs do Watson Assistant:

  • Assistente: um aplicativo-às vezes referido como um 'robô de bate-papo'-que implementa seu conteúdo do Watson Assistant.
  • ID do Assistente: o identificador exclusivo de um assistente.
  • Conversação: um conjunto de mensagens que consiste nas mensagens que um usuário individual envia para seu assistente e as mensagens que seu assistente envia de volta.
  • ID de Conversação: Identificador exclusivo que é incluído em chamadas de mensagem individuais para vincular trocas de mensagens relacionadas. Os desenvolvedores de aplicativos que usam a versão V1 da API do Watson Assistant incluem esse valor nas chamadas de mensagem em uma conversa incluindo o ID nos metadados do objeto de contexto.
  • ID do cliente: um ID exclusivo que pode ser usado para rotular dados do cliente de forma que possa ser subsequentemente excluído se o cliente solicitar a remoção de dados.
  • ID de implementação: um rótulo exclusivo que os desenvolvedores de aplicativos usando a versão V1 da API do Watson Assistant passam com cada mensagem do usuário para ajudar a identificar o ambiente de implementação que produziu a mensagem.
  • Instância: Sua implementação do Watson Assistant, acessível com credenciais exclusivas. Uma instância do {{site.data.keassistant_classic_shortnshort}} pode conter múltiplos assistentes.
  • Mensagem: uma mensagem é uma única elocução que um usuário envia ao assistente.
  • ID de Habilidade: o identificador exclusivo de uma qualificação
  • Usuário: um usuário é qualquer um que interage com seu assistente; geralmente esses são seus clientes.
  • ID do usuário: um rótulo exclusivo que é usado para controlar o nível de uso de serviço de um usuário específico.
  • ID da área de trabalho: o identificador exclusivo de uma área de trabalho.. Embora as áreas de trabalho criadas antes de 9 de novembro sejam mostradas como qualificações na interface com o usuário do produto, uma qualificação e uma área de trabalho não são a mesma coisa. Uma qualificação é efetivamente um wrapper para uma área de trabalho V1.

Importante: a propriedade de ID do usuário não é equivalente à propriedade de ID do cliente, embora ambas possam ser transmitidas com a mensagem. O campo ID do usuário é usado para rastrear níveis de uso para propósitos de faturamento, enquanto o campo ID do cliente é usado para suportar a rotulagem e a exclusão subsequente de mensagens que estão associadas a usuários finais. O ID do cliente é usado de forma consistente em todos os serviços do Watson e é especificado no cabeçalho X-Watson-Metadata. O ID do usuário é usado exclusivamente pelo serviço Watson Assistant e é passado no objeto de contexto de cada chamada da API /message.

Associando dados da mensagem a um usuário para exclusão

Pode chegar um momento em que você desejará remover completamente um conjunto de dados de seu usuário de uma instância do Watson Assistant. Quando o recurso de exclusão for usado, as métricas de Visão geral não refletirão mais essas mensagens excluídas; por exemplo, elas terão menos Totais de conversas.

Antes de Iniciar

Para excluir mensagens para um ou mais indivíduos, é necessário primeiro associar uma mensagem a um ID de cliente exclusivo para cada indivíduo. Para especificar o ID de cliente para qualquer mensagem enviada usando a API /message, inclua a propriedade X-Watson-Metadata: customer_id em seu cabeçalho. É possível passar múltiplas entradas de ID de cliente com pares field=value separados por ponto e vírgula, usando customer_id, como no exemplo a seguir:

curl -X POST -u "apikey:3Df... ...Y7Pc9" \
 --header \
   "Content-Type: application/json" \
   "X-Watson-Metadata: customer_id={first-customer-ID};customer_id={second-customer-ID}" \
 --data "{\"input\":{\"text\":\"hello\"}}" \
 "{url}/v2/assistants/{assistant_id}/sessions/{session_id}/message?version=2019-02-28"

em que {url} é a URL apropriada para a sua instância. Para obter mais detalhes consulte Terminal em serviço }.

A sequência customer_id não pode incluir os caracteres ponto e vírgula (;) ou sinal de igual (=). Você é responsável por assegurar que cada parâmetro Customer ID seja exclusivo entre seus clientes.

Para excluir mensagens usando valores customer_id, consulte o tópico Segurança de informações.