É possível exportar o histórico de conversas para BigQuery. Depois de configurado, todo o histórico de conversas ao vivo é gravado na tabela do BigQuery. Isso oferece ferramentas de análise avançadas que podem ajudar você a depurar e melhorar seu agente e a descobrir padrões nos dados de conversas.
Limitações
Considere as seguintes limitações:
- É possível exportar no máximo 500 turnos para cada conversa.
Permissões entre projetos
Se o agente do Dialogflow e os dados do BigQuery não estiverem no mesmo projeto, a conta de serviço associada ao projeto do Dialogflow também precisará ter a permissão do IAM roles/bigquery.dataEditor para o conjunto de dados do BigQuery no projeto do BigQuery. Google Cloud Google Cloud
Formato da conta de serviço: service-<dialogflow-project-number>@gcp-sa-dialogflow.iam.gserviceaccount.com
O usuário que configura a exportação no Dialogflow precisa ter permissões no projeto do BigQuery. Caso contrário, o projeto do BigQuery não vai aparecer como uma opção no console do Dialogflow.
A permissão mínima necessária no projeto do BigQuery para que o usuário o veja no Dialogflow é resourcemanager.projects.get.
Como alternativa, você pode atribuir um dos seguintes Google Cloud papéis predefinidos
que incluem essa permissão, mas não exigem que o usuário tenha acesso ao
conjunto de dados do BigQuery: roles/browser ou roles/bigquery.metadataViewer.
Descrição da tabela
Cada linha da tabela contém um turno de conversa com as seguintes colunas:
| Coluna | Tipo | Descrição |
|---|---|---|
| project_id | STRING | O ID do projeto. |
| agent_id | STRING | O ID do agente. |
| conversation_name | STRING | O nome do recurso totalmente qualificado para a sessão. |
| turn_position | INTEGER | O número do turno de conversa. |
| request_time | TIMESTAMP | A hora do turno de conversa. |
| language_code | STRING | A tag de idioma. |
| request | JSON | A solicitação de detecção de intent. |
| response | JSON | A resposta de detecção de intent. |
| partial_responses | JSON | Respostas parciais, se aplicável. |
| derived_data | JSON | Metadados adicionais para esse turno de conversa. |
| conversation_signals | JSON | Dados de análise relacionados ao PLN. Consulte ConversationSignals para o esquema JSON. |
| bot_answer_feedback | JSON | Feedback de resposta, se fornecido. |
Configuração
Para configurar a exportação do histórico de conversas:
- Verifique se o histórico de conversas está ativado.
- Siga o guia de criação de conjuntos de dados do BigQuery para criar um conjunto de dados. Anote o nome do conjunto de dados, porque você vai precisar dele na próxima etapa.
Siga o guia de criação de tabelas do BigQuery para criar uma tabela com uma definição de esquema SQL. Use a seguinte instrução SQL para a criação:
CREATE TABLE <your_dataset_name>.dialogflow_bigquery_export_data( project_id STRING, agent_id STRING, conversation_name STRING, turn_position INTEGER, request_time TIMESTAMP, language_code STRING, request JSON, response JSON, partial_responses JSON, derived_data JSON, conversation_signals JSON, bot_answer_feedback JSON );Configure as definições do agente para ativar a exportação do BigQuery e fornecer os nomes do conjunto de dados e da tabela criados acima.