Puedes exportar el historial de conversaciones a BigQuery. Una vez configurado, todo el historial de conversaciones en vivo se escribe en tu tabla de BigQuery. Esto te proporciona herramientas de análisis avanzadas que pueden ayudarte a depurar y mejorar tu agente, y a descubrir patrones en los datos de conversación.
Limitaciones
Se aplica la siguiente limitación:
- Se puede exportar un máximo de 500 turnos por conversación.
Permisos entre proyectos
Si tu agente de Dialogflow y los datos de BigQuery no están en el mismo proyecto, la cuenta de servicio asociada con tu proyecto de Dialogflow Google Cloud también debe tener el permiso de IAMroles/bigquery.dataEditor para el conjunto de datos de BigQuery en tu proyecto de BigQuery Google Cloud .
Formato de la cuenta de servicio: service-<dialogflow-project-number>@gcp-sa-dialogflow.iam.gserviceaccount.com
El usuario que configura la exportación en Dialogflow debe tener permisos en el proyecto de BigQuery. De lo contrario, el proyecto de BigQuery no aparecerá como opción en la consola de Dialogflow.
El permiso mínimo requerido en el proyecto de BigQuery para que el usuario lo vea en Dialogflow es resourcemanager.projects.get.
Como alternativa, puedes asignar uno de los siguientes Google Cloud roles predefinidos
que incluyen este permiso, pero no requieren que el usuario tenga acceso al
conjunto de datos de BigQuery: roles/browser o roles/bigquery.metadataViewer.
Descripción de tabla
Cada fila de la tabla contiene un turno de conversación con las siguientes columnas:
| Columna | Tipo | Descripción |
|---|---|---|
| project_id | STRING | El ID del proyecto. |
| agent_id | STRING | Es el ID del agente. |
| conversation_name | STRING | Es el nombre del recurso completamente calificado para la sesión. |
| turn_position | INTEGER | Número de turno de conversación. |
| request_time | TIMESTAMP | Es la hora del turno de conversación. |
| language_code | STRING | La etiqueta de idioma. |
| solicitud | JSON | Es la solicitud de detección de intent. |
| respuesta | JSON | Es la respuesta de detección de intent. |
| partial_responses | JSON | Respuestas parciales, si corresponde |
| derived_data | JSON | Son metadatos adicionales para este turno de conversación. |
| conversation_signals | JSON | Son los datos de análisis relacionados con la CLN. Consulta ConversationSignals para ver el esquema JSON. |
| bot_answer_feedback | JSON | Comentarios sobre la respuesta, si se proporcionan |
Configuración
Para configurar la exportación del historial de conversaciones, haz lo siguiente:
- Asegúrate de que el historial de conversaciones esté habilitado.
- Sigue la guía de creación de conjuntos de datos de BigQuery para crear un conjunto de datos. Anota el nombre del conjunto de datos, ya que lo necesitarás en el siguiente paso.
Sigue la guía de creación de tablas de BigQuery para crear una tabla con una definición de esquema en SQL. Usa la siguiente instrucción de SQL para la creación:
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 );Configura los parámetros del agente para habilitar la exportación a BigQuery y proporcionar los nombres del conjunto de datos y la tabla que creaste anteriormente.