本页面简要介绍了使用 Agent Assist 智能撰写功能的最佳实践。如需详细了解如何通过直接调用 API 实现此功能,请参阅智能撰写方法指南;如需了解如何使用Agent Assist 控制台实现此功能,请参阅控制台教程。
术语
智能撰写使用以下术语。
建议基本文本
本部分定义了 Agent Assist 使用的术语。
建议的基本文本 是部分输入的文本,智能撰写功能会使用该文本生成建议,以补全文本。这是
current_text_input.text的
SuggestSmartComposeAnswersRequest中的文本。
示例 :如果人工客服输入“Ho”,则可能的建议是“how are you”。在本示例中,“Ho”是基本文本 ,“how are you”是建议。
建议扩展文本
建议的扩展文本 是通过将建议与其基本文本合并而构建的。如果基本文本包含与建议的前缀匹配的后缀,则匹配的部分将被合并。智能撰写功能会以不区分大小写的方式匹配后缀和前缀。为避免误报,我们建议您仅在建议具有与基本文本中的后缀匹配的非空前缀时显示建议。
示例 :如果基本文本是“Ho”,建议是“how are you”,则建议扩展文本 将是“How are you”。
可采纳的建议
如果满足以下条件,建议就是可采纳的 建议:
- 建议的基本文本是已输入文本的前缀。
- 输入的文本是建议扩展文本的前缀,但与建议扩展文本不相等。
示例 :当已输入的文本为“how a”时,基本文本为“Ho”的建议“how are you”是可采纳的 建议 ;但当已输入的文本为“h”或“how are you”时,它不是 可采纳的建议。
请求建议
我们建议您让服务器针对每个新字符发送
suggestSmartComposeAnswers
请求,除非该字符已包含在
可采纳的建议中。这会提高生成智能撰写建议的可能性。请注意,这可能会生成较高的 qps:如果您发现请求因配额限制而受到限制,请与 Google 联系以讨论解决方案。构建请求时,请考虑将 max_results 设置为 3,以增加检索到的建议数量。
选择建议
选择建议是一项关键功能,您必须先实现此功能,然后才能在客服界面上实现智能撰写功能。输入速度可能很快,并且任何智能撰写建议都存在一定的延迟。因此,建议到达客服界面时可能已失效。为尽量减少此问题,我们建议您仅向界面呈现部分可采纳的建议。对于给定的输入文本,如果满足以下条件,则应选择建议:
- 它是输入文本的可采纳建议。
- 在所有可采纳的建议中,其基本文本的字符数最多。
- 如果有多个建议具有相同的最长基本文本,请选择建议排名最高的选项。
工作流程示例 :
- 客服输入“Ho”。
- 系统会发送包含当前消息“Ho”的请求。
- 客服继续输入“How”。
- 建议 {"Hope you", "how are you", "How are you doing today?"} (基于原始条目“Ho”)到达客服界面。
- 在这种情况下,“Hope you”不再是有效的建议,因为客服已输入其他字词。相反,系统应建议“how are you”。
缓存
我们建议您将缓存实现为键值对映射,其中前缀作为键,API 返回的建议作为值。应检查映射中是否存在与客服输入匹配的键。如果映射不包含匹配的键,则应从客服输入的末尾一次移除一个字符,并在每次迭代时检查映射。此过程应持续到找到匹配的建议、客服输入中没有更多字符可移除或达到迭代限制(50 次迭代是一个合理的数字)为止。找到匹配的键后,应遍历建议。如需确定建议是否有效,请将键(前缀的子字符串)和建议合并,然后对照客服输入进行检查。合并的建议和客服输入应从第一个字符开始完全重叠。如果它们不重叠,则应检查下一个建议。
使用缓存的示例 :
- “客服”输入“H”。
- 系统会检查键值对映射中是否存在前缀“H”的建议。没有建议,并且输入末尾没有更多字符可移除,因此系统会请求“H”的建议。
- “客服”继续输入“Ho”。
- 系统会检查键值对映射中是否存在前缀“Ho”的建议。没有建议,系统会检查键值对映射中是否存在前缀“H”的建议。没有建议,并且输入末尾没有更多字符可移除,因此系统会请求“Ho”的建议。
- 系统会收到在第 2 步中发送的请求的响应,其中不包含任何建议,并且该响应会添加到键“H”的缓存中。
- 系统会收到在第 4 步中发送的请求的响应,其中包含建议 {"Hope you", "how are you", "How are you doing today?"},并且这些建议会添加到键“Ho”的缓存中。
- 系统会检查键值对映射中是否存在前缀“Ho”的建议,结果是有建议。系统会循环遍历这些建议,并将键和建议合并,然后对照“客服”输入进行检查。“客服”输入“Ho”与第一个建议“Hope you”重叠,因此系统会向客服显示建议“pe you”。
- “客服”继续输入“How”。
- 系统会检查键值对映射中是否存在前缀“How”的建议。没有建议,系统会检查键值对映射中是否存在前缀“Ho”的建议,结果是有建议。系统会循环遍历这些建议,并将键和建议合并,然后对照“客服”输入进行检查。“客服”输入“How”与第一个建议“how are you”重叠,因此系统会向客服显示建议“ are you”。
对话记录
智能撰写功能依赖于对话记录才能正常运行。如果您通过
analyzeContent
API使用
智能回复或任何其他 Agent Assist 功能,则无需执行任何操作。否则,您需要在每条已完成的消息上调用 analyzeContent API,然后才能使用 suggestSmartComposeAnswers 获取智能撰写建议。如需了解详情,请参阅智能撰写操作
指南。