Las respuestas inteligentes siguen una conversación entre un agente humano y un usuario final, y muestran respuestas sugeridas al agente humano. Las respuestas sugeridas se calculan con un modelo personalizado que se entrenó con tus propios datos de conversación.
En este documento, se describe el proceso para usar la API y, así, implementar la función de respuesta inteligente y obtener sugerencias a partir de ella. Si lo prefieres, puedes usar la consola de Agent Assist para subir tus datos, entrenar un modelo y probar los resultados de la Respuesta inteligente durante el tiempo de diseño. Para ver las sugerencias de Respuesta inteligente durante el tiempo de ejecución, debes llamar a la API directamente. Consulta el instructivo de Respuesta inteligente para obtener detalles sobre cómo entrenar un modelo y probar su rendimiento con la Consola de Agent Assist.
Agent Assist también proporciona datos de conversación disponibles públicamente, así como un modelo previamente entrenado y una lista de entidades permitidas. Puedes usar estos recursos para ver cómo funciona la Respuesta inteligente o probar tu integración antes de subir tus propios datos. Consulta la documentación sobre el formato de datos de conversación para obtener más información.
Antes de comenzar
Completa lo siguiente antes de comenzar con esta guía:
- Crea un conjunto de datos de conversación con tus propios datos de transcripción.
- Entrena un modelo de Respuesta inteligente con tus conjuntos de datos de conversación.
Información de identificación personal y datos de niños
Cuando envías datos a esta API, esta intenta ocultar toda la información de identificación personal (PII). Si necesitas asegurarte de que el modelo no incluya PII, debes limpiar tus datos antes de enviarlos a la API. Reemplaza las palabras ocultas por marcadores de posición, como "REDACTED_NUMBER" o "REDACTED_NAME", en lugar de simplemente quitarlas.
Además, si tus datos contienen información recopilada de niños, debes quitarlos antes de enviarlos a la API.
Entrena y, luego, implementa un modelo
Los modelos de Respuestas inteligentes de Agent Assist se entrenan con conjuntos de datos de conversaciones. Un conjunto de datos de conversación contiene tus propios datos de transcripción subidos. En esta sección, se explica el proceso para crear un conjunto de datos de conversación, subir los datos de tu conversación a él, y entrenar e implementar un modelo. También puedes realizar estas acciones con la consola de Agent Assist si prefieres no llamar a la API directamente.
Crea un conjunto de datos de conversaciones
Antes de comenzar a subir transcripciones de conversaciones, primero debes crear un conjunto de datos de conversaciones para colocarlas. Llama al método create
en el recurso ConversationDataset
para crear un conjunto de datos de conversación.
La respuesta contiene un ID de conjunto de datos de conversación.
Importa transcripciones de conversaciones a tu conjunto de datos de conversaciones
Sube los datos de tus conversaciones de chat a tu conjunto de datos de conversaciones para que Agent Assist pueda procesarlos.
Asegúrate de que la transcripción de cada conversación esté en formato JSON
y se almacene en un bucket de Cloud Storage.
Un conjunto de datos de conversación debe contener al menos 30,000 conversaciones; de lo contrario, el entrenamiento de modelos fallará. Como regla general, cuantas más conversaciones tengas, mejor será la calidad de tu modelo. Te recomendamos subir al menos 3 meses de conversaciones para abarcar la mayor cantidad posible de casos de uso. La cantidad máxima de mensajes en un conjunto de datos de conversación es de 1,000,000.
Llama al método importConversationData
en el recurso ConversationDataset
para importar tus conversaciones.
Campos obligatorios:
- El ID del conjunto de datos de conversación que creaste anteriormente.
- La ruta de acceso
inputConfig
dirige a los datos de la transcripción de la conversación en un bucket de Cloud Storage.
La respuesta es una operación de larga duración que puedes sondear para comprobar su finalización.
Crea un modelo de conversación
Llama al método create
en el recurso ConversationModel
para crear un modelo de conversación. Esta acción también crea la lista de entidades permitidas del modelo.
Campos obligatorios:
- En
datasets
, proporciona un solo conjunto de datos con el ID del conjunto de datos de conversación que creaste anteriormente. - Establece
smartReplyModelMetadata
en un objeto vacío o propaga el campo para anular el valor predeterminado.
La respuesta es una operación de larga duración que puedes sondear para comprobar su finalización. Una vez completada, el ID del modelo y el ID de la lista de entidades permitidas se incluirán en los metadatos de la operación.
- ID del modelo:
name
- ID de la lista de entidades permitidas:
smart_reply_model_metadata.associated_allowlist_info.document
Implementa el modelo de conversación
Llama al método deploy
en el recurso ConversationModel
para implementar el modelo de conversación.
Campo obligatorio:
- Usa
conversationModels
: Ingresa el ID del modelo de conversación que creaste anteriormente.
Administra una lista de apps permitidas
Cada modelo tiene una lista de entidades permitidas asociada, que se crea automáticamente cuando creas un modelo de conversación. La lista de entidades permitidas contiene todas las respuestas, generadas a partir de tus conjuntos de datos de conversación, que se pueden mostrar a un agente humano durante el tiempo de ejecución. En esta sección, se describe la creación y administración de la lista de entidades permitidas. También puedes realizar estas acciones con la consola de Agent Assist si prefieres no llamar a la API directamente.
Exporta el contenido de la lista de entidades permitidas a un archivo CSV
.
La creación de modelos crea automáticamente una lista de entidades permitidas asociada con el nuevo
modelo. La lista de entidades permitidas es un recurso de documento con un ID único. El ID se muestra en smart_reply_model_metadata.associated_allowlist_info.document
cuando se crea un modelo. Para revisar y realizar cambios en los mensajes de la lista de entidades permitidas, debes exportarlos a un bucket de Cloud Storage.
Llama al método export
en el recurso Document
para exportar el documento a un archivo CSV
en un bucket de Cloud Storage.
El campo smart_messaging_partial_update
es opcional, pero afecta la forma en que podrás actualizar esta lista de entidades permitidas en el futuro. Si se establece en true
, el archivo CSV
exportado incluirá una columna que contiene un ID único para cada mensaje. Puedes usar el ID de mensaje para actualizar solo los mensajes especificados en lugar de todo el documento. Si smart_messaging_partial_update
se establece en false
o no se establece, la columna adicional no aparecerá en el archivo, y cualquier actualización de la lista de entidades permitidas requerirá una actualización de todo el documento.
Campo obligatorio:
- La ruta de acceso
gcsDestination
se dirige a tu bucket de Cloud Storage.
La respuesta es una operación de larga duración que puedes sondear para comprobar su finalización. Luego, el archivo CSV
que proporcionaste en la solicitud se completa con respuestas candidatas.
Revisa la lista de apps permitidas
La lista de entidades permitidas generada contiene respuestas que la Respuesta inteligente generó automáticamente según los datos de tu conversación. Ahora puedes revisar y actualizar esas respuestas según sea necesario. Descarga el archivo CSV
de tu bucket de Cloud Storage, edítalo según tus necesidades y vuelve a subirlo al bucket de Cloud Storage. Solo se pueden mostrar respuestas de la lista de entidades permitidas a los agentes humanos.
Si editas alguna respuesta, te recomendamos que solo corrijas la ortografía y la gramática, y que no cambies el significado del mensaje. Cuanto más se desvíe el texto editado del significado del modelo, menos probabilidades habrá de que aparezca ese mensaje.
También puedes crear mensajes nuevos si es necesario. Al igual que los mensajes editados, es menos probable que los mensajes creados aparezcan durante el tiempo de ejecución.
Actualiza la lista de entidades permitidas
Una vez que hayas terminado de actualizar el archivo CSV
, puedes usarlo para actualizar el recurso Document
. Puedes actualizar toda la lista de entidades permitidas o solo los mensajes especificados. Para actualizar solo los mensajes especificados, debes
haber configurado smart_messaging_partial_update
en true
cuando
exportaste la lista de entidades permitidas.
Si ya lo hiciste, usa la columna generada automáticamente en el archivo CSV
exportado para indicar los mensajes que se actualizarán.
Llama al método reload
en el recurso Document
para actualizar la lista de entidades permitidas. Para actualizar solo los mensajes especificados, establece smart_messaging_partial_update
en true
en ReloadDocumentRequest
. Para actualizar toda la lista de entidades permitidas, deja smart_messaging_partial_update
sin configurar o configúralo como false
.
Campos obligatorios:
gcsSource
es la ruta de acceso de Cloud Storage al archivoCSV
.- Para
name
, usa el nombre del recurso de la lista de entidades permitidas que se generó cuando creaste un modelo de conversación.
Solicitud de ejemplo:
{ "name":"projects/project-id/knowledgeBases/knowledge-base-id/documents/allowlist-id", "gcsSource" { "uri": "gs://revised_smart_reply_allowlist_path" } }
Cómo evaluar el rendimiento de un modelo entrenado
Puedes probar el rendimiento de un modelo después de implementarlo y crear una lista de entidades permitidas para él. También debes proporcionar un conjunto de datos de prueba. Las respuestas generadas por el modelo de Smart Reply entrenado y su lista de entidades permitidas asociadas se compararán con los mensajes reales del agente en el conjunto de datos de prueba. El conjunto de datos de prueba debe estar compuesto por datos de conversaciones del mundo real, pero no debe contener ninguno de los datos del conjunto de datos de conversaciones que usaste para entrenar el modelo. Por ejemplo, si tienes 1 mes de tráfico de conversación, puedes usar 3 semanas de datos de conversación para crear un conjunto de datos de conversación y los datos restantes de 1 semana para crear el conjunto de datos de prueba. Un conjunto de datos de prueba debe contener un mínimo de 1,000 conversaciones, pero, como regla general, las métricas de evaluación serán más confiables con más conversaciones en el conjunto de datos de prueba. El formato del conjunto de datos de prueba es el mismo que el formato del conjunto de datos de conversación.
Para crear una nueva evaluación de modelos, llama al método CreateConversationModelEvaluation
en un recurso ConversationModel
. Este método muestra una operación de larga duración. Puedes sondear la operación para verificar su estado, que mostrará uno de los siguientes valores: INITIALIZING
, RUNNING
, SUCCEEDED
, CANCELLED
o FAILED
.
Campos obligatorios:
InputDataset
: Es el conjunto de datos de prueba que se usará para probar el rendimiento del modelo.allowlist_document
: La lista de entidades permitidas asociada con el modelo de respuestas inteligentes que se probará.
Se muestra un recurso ConversationModelEvaluation
cuando se completa la operación de larga duración. Se incluyen dos métricas:
allowlist_coverage
: Es el porcentaje de mensajes del agente en el conjunto de datos de prueba que cubre la lista de entidades permitidas.recall
: Es el porcentaje de mensajes del agente en el conjunto de datos de prueba que se encuentran en la lista de entidades permitidas y aparecen en las 3 sugerencias principales que muestra el modelo de respuesta inteligente.
Cómo configurar un perfil de conversación
Un perfil de conversación configura un conjunto de parámetros que controlan las sugerencias que se le hacen a un agente durante una conversación. En los siguientes pasos, se crea un objeto ConversationProfile
con un objeto HumanAgentAssistantConfig
. También puedes realizar estas acciones con la consola de Agent Assist si prefieres no llamar a la API directamente.
Crea un perfil de conversación
Para crear un perfil de conversación, llama al método create
en el recurso ConversationProfile
.
Proporciona el ID de tu base de conocimiento, el ID del documento, el ID del proyecto y el ID del modelo.
{ "displayName":"smart_reply_assist", "humanAgentAssistantConfig":{ "humanAgentSuggestionConfig":{ "featureConfigs":[ { "suggestionFeature": { "type":"SMART_REPLY" }, "queryConfig": { "documentQuerySource":{ "documents": ["projects/PROJECT_ID/knowledgeBases/KNOWLEDGE_BASE_ID/documents/DOCUMENT_ID"] }, "maxResults": 3 }, } }, "conversationModelConfig":{ "model": "projects/PROJECT_ID/conversationModels/MODEL_ID" } } ] } } }
Te recomendamos que establezcas el valor de SuggestionFeatureConfig.enable_inline_suggestion
.
Si este valor es verdadero, las llamadas posteriores a AnalyzeContent
generarán respuestas con una lista de sugerencias.
La respuesta contiene el ID de tu nuevo perfil de conversación.
Consulta respuestas inteligentes generativas para obtener instrucciones sobre cómo configurar un perfil de conversación, controlar conversaciones durante el tiempo de ejecución, probar los resultados y enviar comentarios a Agent Assist.