使用自定义部分的总结功能时,系统会使用 LLM 来总结客户服务对话。模型会接收对话和自定义部分(即定义模型执行的任务的文本提示部分),然后生成摘要。
您可以选择预定义的部分,也可以在自定义部分中撰写自己的总结任务定义。
可用区域
Summarization 自定义栏目 v4.0 在以下区域提供:
us-central1us-east1us-west1usnorthamerica-northeast1europe-west1europe-west2europe-west3asia-southeast1asia-northeast1asia-south1australia-southeast1global
预定义部分
此功能提供六个预定义的部分,您可以从中选择:
情况:这是客户需要帮助或有疑问的问题。系统会提供用于自定义简明摘要的选项,建议您使用此选项。
行动:定义为代理为帮助客户而采取的行动。系统会提供用于自定义简明摘要的选项,建议您使用此选项。
分辨率:有四种选择。
- 答:可以。所有客户问题和查询均已解决。
- P:部分支持。仅解决了一部分客户问题和查询。
- N:否。客户的所有问题和查询均未得到解决。
- 不适用:对话中没有客户提出的具体问题或查询。
客户满意度:选项为“不满意”或“不不满意”。
- D:客户在对话结束时感到不满意或有负面情绪。
- N:客户在对话结束时情绪中性或积极。
取消原因:如果客户要求取消,则为取消原因。否则为不适用。
实体:从对话中提取的重要实体的键值对。
创建总结生成器
控制台
如需使用 Agent Assist 控制台创建总结生成器,请执行以下操作:
在控制台中,前往总结页面,然后选择生成器。
输入生成器的名称。
选择生成器的版本。
选择输出语言。
选择预定义的部分下的部分。
在自定义部分下添加部分:根据需要定义新的总结任务,并可选择添加 few-shot 示例以进行增强。
点击保存。
REST
如需使用 API 创建总结生成器,请执行以下操作:
从生成器资源调用
CreateGenerator方法。在
description字段中输入生成器的名称。在
output_language_code字段中输入生成器的输出语言代码。输入触发事件
MANUAL_CALL。在
SummarizationContext中选择预定义的部分,并添加包含少样本示例的自定义部分。
在使用任何请求数据之前,请先进行以下替换:
- PROJECT_ID:您的 Cloud 项目 ID
- LOCATION_ID:您的位置 ID
HTTP 方法和网址:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/generators
请求 JSON 正文:
{
"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"
}
}
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{
"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"
}
}
测试摘要生成器
在控制台中,您可以在 Test generator(测试生成器)部分测试生成器,如下图所示。

如需在控制台中测试生成器,请执行以下操作:
控制台
对话的转写内容。您可以手动输入话语,也可以上传 JSON 格式的转写内容,如下图所示。

点击生成以显示总结。
配置对话配置文件
对话配置文件可配置一组参数,用于控制对话期间向客服人员提出的建议。以下步骤将使用 HumanAgentAssistantConfig 对象创建 ConversationProfile。
以下示例展示了如何创建对话配置文件。
控制台
在 Agent Assist 控制台中,前往对话配置文件页面。
输入显示名称。
选择对话总结(生成器)作为建议类型。
从列表中选择生成器的名称。
REST
在使用任何请求数据之前,请先进行以下替换:
- PROJECT_ID:您的 Cloud 项目 ID
- LOCATION_ID:您的位置 ID
- CONVERSATION_PROFILE_ID:您的对话配置文件 ID
- GENERATOR_ID:您的生成器 ID
HTTP 方法和网址:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles
请求 JSON 正文:
{
"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"
}
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{
"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"
}
使用模拟器进行验证
您可以在 Agent Assist 模拟器中验证对话配置文件。

运行时对话
在运行时,当用户与客服之间开始对话时,您需要创建对话,即客服(人工或虚拟)与支持客户或用户之间的互动。如需查看建议,请同时创建用户参与者和客服参与者,并将其添加到对话中。
创建对话
如需创建对话,请对 Conversation 资源调用 create 方法。
REST
在使用任何请求数据之前,请先进行以下替换:
- PROJECT_ID:您的 Cloud 项目 ID
- LOCATION_ID:您的位置 ID
- CONVERSATION_PROFILE_ID:您在创建对话配置文件时收到的 ID
HTTP 方法和网址:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations
请求 JSON 正文:
{
"conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID",
}
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{
"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"
}
conversations 后面的路径段包含新对话 ID。
创建用户参与者
如需创建用户参与者,请对 Participant 资源调用 create 方法。为 role 字段提供对话 ID 和 END_USER。
REST
在使用任何请求数据之前,请先进行以下替换:
- PROJECT_ID:您的 Cloud 项目 ID
- LOCATION_ID:您的位置 ID
- CONVERSATION_ID:您的对话 ID
HTTP 方法和网址:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants
请求 JSON 正文:
{
"role": "END_USER",
}
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{
"name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID",
"role": "END_USER"
}
participants 后面的路径段包含新的用户参与者 ID。
创建代理参与者
对 Participant 资源调用 create 方法。为 role 字段提供对话 ID 和 HUMAN_AGENT 或 AUTOMATED_AGENT。
REST
在使用任何请求数据之前,请先进行以下替换:
- PROJECT_ID:您的 Cloud 项目 ID
- LOCATION_ID:您的位置 ID
- CONVERSATION_ID:您的对话 ID
HTTP 方法和网址:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants
请求 JSON 正文:
{
"role": "HUMAN_AGENT",
}
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{
"name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID",
"role": "HUMAN_AGENT"
}
participants 后面的路径段包含新的客服参与者 ID。
分析消息
您可以通过以下两种方式分析消息:
对话期间。如需为对话添加和分析代理消息,请对
Participant资源调用analyzeContent方法。提供对话 ID 和代理参与者 ID。如需为对话添加和分析用户消息,请对Participant资源调用analyzeContent方法。提供对话 ID 和用户参与者 ID。如果已针对其他 Dialogflow 功能调用analyzeContent方法,请勿重复调用该方法。对话结束后。如果您在对话期间未使用
analyzeContent方法,则可以使用此选项。您可以改为对messages资源使用batchCreate方法来注入对话的历史消息。
生成摘要
您可以随时获取建议,以回复任一参与者的最新消息。
对
conversations.suggestions资源调用suggestConversationSummary方法。提供对话 ID 和任一参与者的最新消息 ID。调用
generateStatelessSuggestion方法。提供ConversationContext、生成器名称和触发事件,触发事件应为MANUAL_CALL。
REST
在使用任何请求数据之前,请先进行以下替换:
- PROJECT_ID:您的 Cloud 项目 ID
- LOCATION_ID:您的位置 ID
- GENERATOR_ID:您的生成器 ID
HTTP 方法和网址:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/statelessSuggestion:generate
请求 JSON 正文:
{
"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"
]
}
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{
"generatorSuggestion": {
"summarySuggestion": {
"summarySections": [
{
"section": "situation",
"summary": "customer wants to return an order."
},
{
"section": "resolution",
"summary": "N"
}
]
}
}
}
回答包含摘要。
完成对话
如需完成对话,请对 conversations 资源调用 complete 方法。提供对话 ID。
REST
在使用任何请求数据之前,请先进行以下替换:
- PROJECT_ID:您的 GCP 项目 ID
- CONVERSATION_ID:您在创建对话时收到的 ID
HTTP 方法和网址:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID:complete
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{
"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"
}
