使用自定义部分的摘要功能会使用 LLM 来总结客户服务对话。该模型会接受对话和自定义版块(即定义模型执行的任务的文本提示的一部分),然后生成摘要。
可用区域
区域 ID | 包含自定义部分的摘要 v3.1/3.0 | 包含自定义部分的摘要 v2.1 | 使用自定义部分的摘要 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 |
✓ | ✓ | ✓ |
您还可以在自定义部分中编写自己的总结任务定义。生成器中介绍了预定义和自定义部分。
预定义版块
此功能提供了六个预定义部分,您可以从中进行选择:
情况。这是客户需要帮助或有疑问的内容。
操作。定义为客服人员为帮助客户所做的事。
解决。共有四个选项。
- Y:是的。所有客户问题和查询均已得到解决。
- P:部分支持。仅解决了多个客户问题和查询中的部分问题。
- N:否。没有任何客户问题和查询得到解决。
- 不适用:客户在对话中未提出任何具体问题或疑问。
客户满意度。选项包括“不满意”或“不不满意”。
- D:在对话结束时,客户感到不满或有负面情绪。
- N:客户在对话结束时是中性或积极情绪。
取消原因。如果客户申请取消,则取消原因。否则为“N/A”。
实体。从对话中提取的重要实体的键值对。
创建摘要生成器
如需使用 Agent Assist 控制台创建摘要生成器,请执行以下操作:
在控制台中,前往总结页面,然后选择生成器。
输入生成器的名称。
选择生成器的版本。
选择输出语言。
选择预定义版块下的版块。
在自定义部分下添加部分:根据需要定义新的总结任务,还可以选择添加少样本示例以进行增强。
点击保存。
如需使用该 API 创建摘要生成器,请执行以下操作:
从 Generator 资源调用
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" } }
如需发送您的请求,请展开以下选项之一:
curl(Linux、macOS 或 Cloud Shell)
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project:PROJECT_ID " \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /locations/LOCATION_ID /generators"
PowerShell (Windows)
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID " }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /locations/LOCATION_ID /generators" | Select-Object -Expand Content
您应该收到类似以下内容的 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" } }
测试摘要生成器
在控制台中,您可以在测试生成器部分测试生成器,如下图所示。
如需在控制台中测试生成器,请执行以下操作:
对话的转写内容。您可以手动输入语音,也可以上传 JSON 格式的转写内容,如以下图片所示。
点击生成以显示摘要。
配置对话配置文件
对话配置文件可配置一组参数,用于控制对话期间向客服人员提出的建议。以下步骤将使用 HumanAgentAssistantConfig
对象创建 ConversationProfile
。
以下示例展示了如何创建对话配置文件。
在 Agent Assist 控制台中,前往对话配置文件页面。
输入显示名称。
选择对话摘要(生成器)作为建议类型。
从列表中选择发电机的名称。
在使用任何请求数据之前,请先进行以下替换:
- 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" }
如需发送您的请求,请展开以下选项之一:
curl(Linux、macOS 或 Cloud Shell)
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project:PROJECT_ID " \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /locations/LOCATION_ID /conversationProfiles"
PowerShell (Windows)
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID " }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /locations/LOCATION_ID /conversationProfiles" | Select-Object -Expand Content
您应该收到类似以下内容的 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
方法。
在使用任何请求数据之前,请先进行以下替换:
- 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 ", }
如需发送您的请求,请展开以下选项之一:
curl(Linux、macOS 或 Cloud Shell)
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project:PROJECT_ID " \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /locations/LOCATION_ID /conversations"
PowerShell (Windows)
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID " }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /locations/LOCATION_ID /conversations" | Select-Object -Expand Content
您应该收到类似以下内容的 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
。
在使用任何请求数据之前,请先进行以下替换:
- 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", }
如需发送您的请求,请展开以下选项之一:
curl(Linux、macOS 或 Cloud Shell)
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project:PROJECT_ID " \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /locations/LOCATION_ID /conversations/CONVERSATION_ID /participants"
PowerShell (Windows)
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID " }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /locations/LOCATION_ID /conversations/CONVERSATION_ID /participants" | Select-Object -Expand Content
您应该收到类似以下内容的 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
。
在使用任何请求数据之前,请先进行以下替换:
- 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", }
如需发送您的请求,请展开以下选项之一:
curl(Linux、macOS 或 Cloud Shell)
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project:PROJECT_ID " \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /locations/LOCATION_ID /conversations/CONVERSATION_ID /participants"
PowerShell (Windows)
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID " }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /locations/LOCATION_ID /conversations/CONVERSATION_ID /participants" | Select-Object -Expand Content
您应该收到类似以下内容的 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。如果analyzeContent
方法已针对其他 Dialogflow 功能被调用,请勿重复调用该方法。对话结束后。如果您在对话期间未使用
analyzeContent
方法,则可以使用此选项。不过,您可以对messages
资源使用batchCreate
方法来提取对话的历史消息。
生成摘要
您可以随时获取任何参与者发送的最新消息的建议。
对
conversations.suggestions
资源调用suggestConversationSummary
方法。提供对话 ID 和任一参与者的最新消息 ID。调用
generateStatelessSuggestion
方法。提供ConversationContext
、生成器名称和触发器事件(应为MANUAL_CALL
)。
在使用任何请求数据之前,请先进行以下替换:
- 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" ] }
如需发送您的请求,请展开以下选项之一:
curl(Linux、macOS 或 Cloud Shell)
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project:PROJECT_ID " \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /locations/LOCATION_ID /statelessSuggestion:generate"
PowerShell (Windows)
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID " }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /locations/LOCATION_ID /statelessSuggestion:generate" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "generatorSuggestion": { "summarySuggestion": { "summarySections": [ { "section": "situation", "summary": "customer wants to return an order." }, { "section": "resolution", "summary": "N" } ] } } }
响应包含摘要。
完成对话
如需完成对话,请对 conversations
资源调用 complete
方法。提供对话 ID。
在使用任何请求数据之前,请先进行以下替换:
- PROJECT_ID:您的 GCP 项目 ID
- CONVERSATION_ID:您在创建对话时收到的 ID
HTTP 方法和网址:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /conversations/CONVERSATION_ID :complete
如需发送您的请求,请展开以下选项之一:
curl(Linux、macOS 或 Cloud Shell)
执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project:PROJECT_ID " \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /conversations/CONVERSATION_ID :complete"
PowerShell (Windows)
执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID " }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://dialogflow.googleapis.com/v2/projects/PROJECT_ID /conversations/CONVERSATION_ID :complete" | Select-Object -Expand Content
您应该收到类似以下内容的 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" }