Résumer avec des sections personnalisées

La synthèse avec des sections personnalisées utilise un LLM pour résumer les conversations du service client. Le modèle prend en compte les conversations et les sections personnalisées, qui sont des parties des requêtes textuelles définissant la tâche que le modèle effectue, pour ensuite générer les résumés.

Régions disponibles

ID de la région Synthèse avec des sections personnalisées v4.0 Synthèse avec des sections personnalisées v3.1/3.0 Résumés avec des sections personnalisées v2.1 Synthèse avec des sections personnalisées 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

Vous pouvez également écrire vos propres définitions de tâches de synthèse dans des sections personnalisées.

Sections prédéfinies

Cette fonctionnalité propose six sections prédéfinies parmi lesquelles vous pouvez choisir :

  • Situation : il s'agit de la situation pour laquelle le client a besoin d'aide ou a des questions. Une option permettant de personnaliser un résumé concis est fournie et recommandée.

  • Action : ce que l'agent fait pour aider le client. Une option permettant de personnaliser un résumé concis est fournie et recommandée.

  • Résolution : quatre options sont disponibles.

    • Y : Oui. Tous les problèmes et les questions des clients sont résolus.
    • P : Partiel. Seuls certains des problèmes et questions des clients sont résolus.
    • N : Non. Aucun des problèmes et des questions des clients n'a été résolu.
    • N/A : le client n'a soulevé aucun problème ni aucune question spécifique dans la conversation.
  • Satisfaction client : les options sont "Insatisfait" ou "Pas insatisfait".

    • D : Le client est insatisfait ou a des sentiments négatifs à la fin de la conversation.
    • N : Le client est neutre ou a un sentiment positif à la fin de la conversation.
  • Motif de la résiliation : motif de la résiliation si le client en fait la demande. Sinon, N/A.

  • Entités : paires clé/valeur d'entités importantes extraites de la conversation.

Créer un générateur de synthèse

Console

Pour créer un générateur de résumés à l'aide de la console Agent Assist, procédez comme suit :

  1. Dans la console, accédez à la page Summarization (Synthèse), puis sélectionnez Generator (Générateur).

    Accéder à la synthèse

  2. Saisissez le nom du générateur.

  3. Sélectionnez la version du générateur.

  4. Sélectionnez la langue de sortie.

  5. Sélectionnez les sections sous Sections prédéfinies.

  6. Ajoutez des sections sous Sections personnalisées : définissez de nouvelles tâches de synthèse selon vos besoins, en ajoutant éventuellement des exemples few-shot pour améliorer les résultats.

  7. Cliquez sur Enregistrer.

REST

Pour créer un générateur de résumés à l'aide de l'API, procédez comme suit :

  1. Appelez la méthode CreateGenerator à partir de la ressource Generator.

  2. Saisissez le nom du générateur dans le champ description.

  3. Saisissez le code de la langue de sortie du générateur dans le champ output_language_code.

  4. Saisissez l'événement déclencheur MANUAL_CALL.

  5. Sélectionnez des sections prédéfinies et ajoutez des sections personnalisées avec des exemples few-shot dans SummarizationContext.

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Cloud
  • LOCATION_ID : ID de votre emplacement

Méthode HTTP et URL :

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

Corps JSON de la requête :

{
  "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"
  }
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

{
  "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"
  }
}

Tester un générateur de résumés

Dans la console, vous pouvez tester le générateur dans la section Tester le générateur, comme illustré dans l'image suivante.

Pour tester un générateur dans la console, procédez comme suit :

Console

  1. Transcription de la conversation. Vous pouvez saisir manuellement des énoncés ou importer une transcription au format JSON, comme illustré dans l'image suivante.

  2. Cliquez sur Générer pour afficher le résumé.

Configurer un profil de conversation

Un profil de conversation configure un ensemble de paramètres qui contrôlent les suggestions adressées à un agent au cours d'une conversation. Les étapes suivantes permettent de créer ConversationProfile avec un objet HumanAgentAssistantConfig.

Les exemples suivants montrent comment créer un profil de conversation.

Console

  1. Dans la console d'assistance de l'agent, accédez à la page Profils de conversation.

  2. Saisissez le nom à afficher.

  3. Sélectionnez Synthèse de conversation (générateur) comme type de suggestion.

  4. Sélectionnez le nom du générateur dans la liste.

REST

  1. Appelez la méthode create à partir de la ressource de profil de conversation.

  2. Attribuez un nom au nouveau profil de conversation.

  3. Saisissez le code de langue.

  4. Saisissez le nom du générateur dans human_agent_suggestion_config.

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Cloud
  • LOCATION_ID : ID de votre emplacement
  • CONVERSATION_PROFILE_ID : ID de votre profil de conversation
  • GENERATOR_ID : ID de votre générateur

Méthode HTTP et URL :

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

Corps JSON de la requête :

{
  "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"
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

{
  "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"
}

Valider avec le simulateur

Vous pouvez vérifier le profil de conversation dans le simulateur Agent Assist.

Conversations lors de l'exécution

Au moment de l'exécution, lorsqu'un dialogue commence entre un utilisateur et un agent, vous créez une conversation, qui est une interaction entre un agent (humain ou virtuel) et un client ou un utilisateur du service d'assistance. Pour afficher les suggestions, créez un participant utilisateur et un participant agent, puis ajoutez-les à la conversation.

Créer une conversation

Pour créer une conversation, appelez la méthode create sur la ressource Conversation.

REST

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Cloud
  • LOCATION_ID : ID de votre emplacement
  • CONVERSATION_PROFILE_ID: ID obtenu lors de la création du profil de conversation

Méthode HTTP et URL :

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

Corps JSON de la requête :

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

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

{
  "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"
}

Le segment de chemin d'accès après conversations contient le nouvel ID de la conversation.

Créer un utilisateur participant

Pour créer un participant utilisateur, appelez la méthode create sur la ressource Participant. Indiquez votre ID de conversation et END_USER pour le champ role.

REST

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Cloud
  • LOCATION_ID : ID de votre emplacement
  • CONVERSATION_ID: ID de votre conversation

Méthode HTTP et URL :

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

Corps JSON de la requête :

{
  "role": "END_USER",
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

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

Le segment de chemin d'accès indiqué après participants contient le nouvel ID de participant de l'utilisateur.

Créer un participant agent

Appelez la méthode create sur la ressource Participant. Indiquez votre ID de conversation et HUMAN_AGENT ou AUTOMATED_AGENT pour le champ role.

REST

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Cloud
  • LOCATION_ID : ID de votre emplacement
  • CONVERSATION_ID: ID de votre conversation

Méthode HTTP et URL :

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

Corps JSON de la requête :

{
  "role": "HUMAN_AGENT",
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

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

Le segment de chemin d'accès après participants contient le nouvel ID de participant de votre agent.

Analyser le message

Il existe deux façons d'analyser les messages :

  • Pendant une conversation : Pour ajouter et analyser un message d'agent pour la conversation, appelez la méthode analyzeContent sur la ressource Participant. Indiquez l'ID de conversation et l'ID de participant de l'agent. Pour ajouter et analyser un message d'utilisateur pour la conversation, appelez la méthode analyzeContent sur la ressource Participant. Indiquez l'ID de conversation et l'ID de participant de l'utilisateur. N'effectuez pas d'appels en double à la méthode analyzeContent si elle a été appelée pour d'autres fonctionnalités Dialogflow.

  • Après une conversation : Vous pouvez utiliser cette option si vous n'utilisez pas la méthode analyzeContent pendant la conversation. Vous pouvez utiliser la méthode batchCreate sur la ressource messages pour ingérer l'historique des messages de la conversation.

Générer un résumé

Vous pouvez obtenir une suggestion à tout moment pour le dernier message de l'un ou l'autre participant.

  • Appelez la méthode suggestConversationSummary sur la ressource conversations.suggestions. Indiquez l'ID de la conversation et l'ID du dernier message de l'un des participants.

  • Appelez la méthode generateStatelessSuggestion. Indiquez le ConversationContext, le nom du générateur et l'événement de déclenchement, qui doit être MANUAL_CALL.

REST

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet Cloud
  • LOCATION_ID : ID de votre emplacement
  • GENERATOR_ID : ID de votre générateur

Méthode HTTP et URL :

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

Corps JSON de la requête :

{
  "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"
  ]
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

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

La réponse contient le résumé.

Terminer la conversation

Pour terminer la conversation, appelez la méthode complete sur la ressource conversations. Indiquez l'ID de la conversation.

REST

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet GCP
  • CONVERSATION_ID: ID obtenu lors de la création de la conversation

Méthode HTTP et URL :

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

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

{
  "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"
}

Versions précédentes