É possível exportar a geração de registros de interação para o BigQuery. Depois de configurado, todos os registros de interações em tempo real são gravados na tabela do BigQuery. Isso fornece ferramentas de análise avançadas que podem ajudar a depurar e melhorar seu agente, além de descobrir padrões nos dados de conversa.
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 seu projeto do Google Cloud no Dialogflow também precisará ter a permissão roles/bigquery.dataEditor
do IAM para o conjunto de dados do BigQuery no seu projeto do Google Cloud do BigQuery.
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 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, é possível atribuir um dos seguintes papéis predefinidos do Google Cloud que incluem essa permissão, mas sem exigir 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 conversas com as seguintes colunas:
Coluna | Tipo | Descrição |
---|---|---|
project_id | STRING | O código do projeto. |
agent_id | STRING | O ID do agente. |
conversation_name | STRING | O nome de recurso totalmente qualificado da sessão. |
turn_position | INTEGER | O número da rodada da conversa. |
request_time | TIMESTAMP | O horário da rodada da conversa. |
language_code | STRING | A tag de idioma. |
request | JSON | A solicitação de detecção de intent. |
resposta | JSON | A resposta da intent de detecção. |
partial_responses | JSON | Respostas parciais, se aplicável. |
derived_data | JSON | Metadados adicionais para esta rodada da conversa. |
conversation_signals | JSON | Dados de análise relacionados ao PLN. Consulte ConversationSignals para ver o esquema JSON. |
bot_answer_feedback | JSON | Responda ao feedback, se informado. |
Configuração
Para configurar a exportação de registros de interação:
- Verifique se o registro de interações está ativado.
- Siga o guia de criação de conjunto de dados do BigQuery para criar um conjunto de dados. Anote o nome do conjunto de dados, porque ele será necessário 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 );
Defina as configurações do agente para ativar o BigQuery Export e fornecer os nomes do conjunto de dados e da tabela criados acima.