Resumen con secciones personalizadas

La función de resumen con secciones personalizadas usa un LLM para resumir las conversaciones de atención al cliente. El modelo toma las conversaciones y las secciones personalizadas, que son partes de instrucciones de texto que definen la tarea que realiza el modelo, para luego generar los resúmenes.

Regiones disponibles

ID de región Resúmenes con secciones personalizadas, versión 4.0 Resúmenes con secciones personalizadas v3.1/3.0 Resumen con secciones personalizadas, versión 2.1 Resúmenes con secciones personalizadas v2.0/1.0
us-central1
us-east1
us-west1
us
northamerica-northeast1
europe-west1
europe-west2
europe-west3
asia-southeast1
asia-northeast1
asia-south1
australia-southeast1
global

También puedes escribir tus propias definiciones de tareas de resumen en secciones personalizadas.

Secciones predefinidas

Esta función proporciona seis secciones predefinidas entre las que puedes elegir:

  • Situación: Es aquello con lo que el cliente necesita ayuda o sobre lo que tiene preguntas. Se proporciona y recomienda una opción para personalizar un resumen conciso.

  • Acción: Se define como lo que hace el agente para ayudar al cliente. Se proporciona y recomienda una opción para personalizar un resumen conciso.

  • Resolución: Hay cuatro opciones.

    • R.: Sí. Se resolvieron todos los problemas y las consultas de los clientes.
    • P: Parcial. Solo se resuelven algunos de los múltiples problemas y consultas de los clientes.
    • N: No. No se resolvió ninguno de los problemas ni las consultas del cliente.
    • N/A: El cliente no planteó problemas ni consultas específicos en la conversación.
  • Satisfacción del cliente: Las opciones son insatisfecho o no insatisfecho.

    • D.: El cliente está insatisfecho o tiene sentimientos negativos al final de la conversación.
    • N: El cliente es neutral o tiene sentimientos positivos al final de la conversación.
  • Motivo de cancelación: Es el motivo de la cancelación si el cliente la solicita. De lo contrario, es N/A.

  • Entidades: Son los pares clave-valor de las entidades importantes que se extrajeron de la conversación.

Crea un generador de resúmenes

Console

Para crear un generador de resúmenes con la consola de Agent Assist, haz lo siguiente:

  1. En la consola, ve a la página Resumen y selecciona Generador.

    Ir a Resúmenes

  2. Ingresa el nombre del generador.

  3. Selecciona la versión del generador.

  4. Selecciona el idioma de salida.

  5. Selecciona las secciones en Secciones predefinidas.

  6. Agrega secciones en Secciones personalizadas: Define nuevas tareas de resumen según sea necesario y, de manera opcional, agrega ejemplos de pocos disparos para mejorar el rendimiento.

  7. Haz clic en Guardar.

REST

Para crear un generador de resúmenes con la API, haz lo siguiente:

  1. Llama al método CreateGenerator desde el recurso Generator.

  2. Ingresa el nombre del generador en el campo description.

  3. Ingresa el código de idioma de salida del generador en el campo output_language_code.

  4. Ingresa el evento de activación MANUAL_CALL.

  5. Selecciona secciones predefinidas y agrega secciones personalizadas con ejemplos de pocos intentos en SummarizationContext.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: El ID del proyecto de Cloud
  • LOCATION_ID: Tu ID de ubicación

Método HTTP y URL:

POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/generators

Cuerpo JSON de la solicitud:

{
  "parent": "projects/PROJECT_ID/locations/LOCATION_ID",
  "description": "test",
  "triggerEvent": "MANUAL_CALL",
  "summarizationContext": {
    "summarizationSections": [{
      "type": "SITUATION"
    }, {
      "type": "ENTITIES"
    }, {
      "key": "custom_section",
      "definition": "Describe what the customer needs help with or has questions about. If there is an order number mentioned in the conversation, INCLUDE the order number.",
      "type": "CUSTOMER_DEFINED"
    }],
    "version": "2.1",
    "outputLanguageCode": "en-US"
  }
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/PROJECT_ID/locations/LOCATION_ID/generators/GENERATOR_ID",
  "description": "test",
  "inferenceParameter": {
    "maxOutputTokens": 1024,
    "temperature": 0.0,
    "topK": 40,
    "topP": 0.8
  },
  "triggerEvent": "MANUAL_CALL",
  "createTime": "2024-05-11T00:28:14.790937126Z",
  "updateTime": "2024-05-11T01:59:15.751724150Z",
  "summarizationContext": {
    "summarizationSections": [{
      "type": "SITUATION"
    }, {
      "type": "ENTITIES"
    }, {
      "key": "custom_section",
      "definition": "Describe what the customer needs help with or has questions about. If there is an order number mentioned in the conversation, INCLUDE the order number.",
      "type": "CUSTOMER_DEFINED"
    }],
    "version": "2.1",
    "outputLanguageCode": "en-US"
  }
}

Prueba un generador de resúmenes

En la consola, puedes probar el generador en la sección Probar generador, como se muestra en la siguiente imagen.

Para probar un generador en la consola, haz lo siguiente:

Console

  1. Una transcripción de la conversación Puedes ingresar expresiones de forma manual o subir una transcripción en formato JSON, como se muestra en la siguiente imagen.

  2. Haz clic en Generar para mostrar el resumen.

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.

En los siguientes ejemplos, se muestra cómo crear un perfil de conversación.

Console

  1. En la consola de Agent Assist, ve a la página Perfiles de conversación.

  2. Ingresa el nombre visible.

  3. Selecciona Resumen de conversación (generador) como el tipo de sugerencia.

  4. Selecciona el nombre del generador en la lista.

REST

  1. Llama al método create desde el recurso del perfil de conversación.

  2. Proporciona un nombre para el nuevo perfil de conversación.

  3. Ingresa el código de idioma.

  4. Ingresa el nombre del generador en human_agent_suggestion_config.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: El ID del proyecto de Cloud
  • LOCATION_ID: Tu ID de ubicación
  • CONVERSATION_PROFILE_ID: Es el ID de tu perfil de conversación.
  • GENERATOR_ID: Es el ID del generador.

Método HTTP y URL:

POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles

Cuerpo JSON de la solicitud:

{
  "name": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID",
  "displayName": "conversation-profile-with-generator",
  "humanAgentAssistantConfig": {
    "humanAgentSuggestionConfig": {
      "generators": "projects/PROJECT_ID/locations/LOCATION_ID/generators/GENERATOR_ID"
    }
  },
  "languageCode": "en-US"
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/PROJECT_ID/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID",
  "displayName": "conversation-profile-with-generator",
  "humanAgentAssistantConfig": {
    "humanAgentSuggestionConfig": {
      "generators": "projects/PROJECT_ID/locations/LOCATION_ID/generators/GENERATOR_ID"
    }
  },
  "languageCode": "en-US"
}

Verifica con el simulador

Puedes verificar el perfil de conversación en el simulador de Agent Assist.

Conversaciones en el tiempo de ejecución

En el tiempo de ejecución, cuando comienza un diálogo entre un usuario y un agente, creas una conversación, que es una interacción entre un agente (humano o virtual) y un cliente o usuario de asistencia. Para ver sugerencias, crea un participante usuario y un participante agente, y agrégalos a la conversación.

Cómo crear una conversación

Para crear una conversación, llama al método create en el recurso Conversation.

REST

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: El ID del proyecto de Cloud
  • LOCATION_ID: Tu ID de ubicación
  • CONVERSATION_PROFILE_ID: Es el ID que recibiste cuando creaste el perfil de conversación.

Método HTTP y URL:

POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations

Cuerpo JSON de la solicitud:

{
  "conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID",
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID",
  "lifecycleState": "IN_PROGRESS",
  "conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID",
  "startTime": "2018-11-05T21:05:45.622Z"
}

El segmento de ruta después de conversations contiene el nuevo ID de conversación.

Cómo crear un usuario participante

Para crear un participante usuario, llama al método create en el recurso Participant. Proporciona tu ID de conversación y END_USER para el campo role.

REST

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: El ID del proyecto de Cloud
  • LOCATION_ID: Tu ID de ubicación
  • CONVERSATION_ID: Tu ID de conversación

Método HTTP y URL:

POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants

Cuerpo JSON de la solicitud:

{
  "role": "END_USER",
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID",
  "role": "END_USER"
}

El segmento de ruta después de participants contiene el nuevo ID de usuario participante.

Crea un participante-agente

Llama al método create en el recurso Participant. Proporciona tu ID de conversación y HUMAN_AGENT o AUTOMATED_AGENT para el campo role.

REST

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: El ID del proyecto de Cloud
  • LOCATION_ID: Tu ID de ubicación
  • CONVERSATION_ID: Tu ID de conversación

Método HTTP y URL:

POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants

Cuerpo JSON de la solicitud:

{
  "role": "HUMAN_AGENT",
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID",
  "role": "HUMAN_AGENT"
}

El segmento de ruta después de participants contiene el nuevo ID de participante-agente.

Analizar mensaje

Existen dos formas de analizar los mensajes:

  • Durante una conversación Para agregar y analizar un mensaje del agente en la conversación, llama al método analyzeContent en el recurso Participant. Proporciona el ID de conversación y el ID de participante-agente. Para agregar y analizar un mensaje del usuario en la conversación, llama al método analyzeContent en el recurso Participant. Proporciona el ID de conversación y el ID del usuario participante. No realices llamadas duplicadas al método analyzeContent si se llamó para otras funciones de Dialogflow.

  • Después de una conversación Puedes usar esta opción si no usas el método analyzeContent durante la conversación. En su lugar, puedes usar el método batchCreate en el recurso messages para transferir los mensajes históricos de la conversación.

Generar un resumen

Puedes obtener una sugerencia en cualquier momento para el mensaje más reciente de cualquiera de los participantes.

  • Llama al método suggestConversationSummary en el recurso conversations.suggestions. Proporciona el ID de la conversación y el ID del mensaje más reciente de cualquiera de los participantes.

  • Llama al método generateStatelessSuggestion. Proporciona el ConversationContext, el nombre del generador y el evento de activación, que debe ser MANUAL_CALL.

REST

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: El ID del proyecto de Cloud
  • LOCATION_ID: Tu ID de ubicación
  • GENERATOR_ID: Es el ID del generador.

Método HTTP y URL:

POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/statelessSuggestion:generate

Cuerpo JSON de la solicitud:

{
  "parent": "projects/PROJECT_ID/locations/LOCATION_ID",
  "generatorName": "projects/PROJECT_ID/locations/LOCATION_ID/generators/GENERATOR_ID",
  "conversationContext" {
    "messageEntries": [{
      "role": "HUMAN_AGENT",
      "text": "Hi, this is ABC messaging, how can I help you today?",
      "languageCode": "en-US"
    }, {
      "role": "END_USER",
      "text": "I want to return my order, it is broken",
      "languageCode": "en-US"
    }]
  },
  "triggerEvents": [
    "MANUAL_CALL"
  ]
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "generatorSuggestion": {
    "summarySuggestion": {
      "summarySections": [
        {
          "section": "situation",
          "summary": "customer wants to return an order."
        },
        {
          "section": "resolution",
          "summary": "N"
        }
      ]
    }
  }
}

La respuesta contiene el resumen.

Completa la conversación

Para completar la conversación, llama al método complete en el recurso conversations. Proporciona el ID de conversación.

REST

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: Es el ID del proyecto de GCP.
  • CONVERSATION_ID: Es el ID que recibiste cuando creaste la conversación.

Método HTTP y URL:

POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID:complete

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/PROJECT_ID/conversations/CONVERSATION_ID",
  "lifecycleState": "COMPLETED",
  "conversationProfile": "projects/PROJECT_ID/conversationProfiles/CONVERSATION_PROFILE_ID",
  "startTime": "2018-11-05T21:05:45.622Z",
  "endTime": "2018-11-06T03:50:26.930Z"
}

Versiones anteriores