生成式回退

生成式后备功能使用 Google 最新的生成式大语言模型 (LLM),在最终用户输入未匹配任何意图或表单填写参数时,生成虚拟客服回答。

您可以使用文本提示词来配置该功能,以指示 LLM 如何响应。您可以使用预定义的文本提示,也可以添加自己的提示。借助预定义的提示,虚拟客服能够处理基本的对话情况。例如:

  • 向用户问候和道别。
  • 重复代理所说的话,以防用户没有听懂。
  • 在用户要求时保持通话。
  • 总结对话内容。

您可以针对流、页面或参数填充期间使用的无匹配事件处理脚本启用生成式后备。为不匹配事件启用生成式后备后,每当该事件触发时,Dialogflow CX 都会尝试生成一个回答,并将其返回给用户。如果回答生成失败,系统会改为发出常规的预设代理回答。

限制

此功能支持 Gemini API 支持的语言。

启用生成式后备

您可以在代理中为无匹配事件处理脚本启用生成式后备,这些处理脚本可用于流、页面或参数执行。

为整个流程的无匹配事件启用生成式后备

  1. 前往 Dialogflow CX 控制台。
  2. 选择一个项目。
  3. 选择一个代理,然后选择一个流程。
  4. 点击该流程的起始页面将其展开。
  5. 点击事件处理脚本下的 sys.no-match-default。
  6. 在代理回答下,选择启用生成式后备。
  7. 点击保存。

为特定无匹配事件启用生成式后备

  1. 前往目标无匹配事件处理脚本(任何以无匹配开头的事件,例如无匹配默认、无匹配 1 等)。
  2. 在代理回答下,选择启用生成式后备。
  3. 点击保存。

配置生成式后备

如前所述,生成式后备功能会将请求传递给大语言模型,以便生成回答。该请求采用文本提示词的形式,其中包含自然语言以及有关智能体和对话当前状态的信息。系统会根据禁止短语列表检查提示和生成的回答。如果这些内容包含任何禁用短语,或被视为不安全,则生成将失败,系统会改为发出常规预设回答(在同一执行方式中的代理说下)。

您可以通过多种方式配置此功能:

  1. 选择预定义的提示。
  2. 定义自定义提示。
  3. 在禁用短语列表中添加或移除短语。

创建提示时,除了使用自然语言描述应生成哪种上下文之外,还可以使用以下占位符:

X 项
$conversation 代理与用户之间的对话,不包括用户的最后一句话。
${conversation USER:"" AI:"" TURNS:} $conversation 占位符的参数化版本。您可以自定义最终用户前缀 (USER)、代理前缀 (AI) 以及要包含的先前轮次数量 (TURNS)。必须指定所有占位符参数值。例如 ${conversation USER:"Human says:" AI:"Agent says:" TURNS:4}。
$last-user-utterance 用户的最后一句话。
$flow-description 活跃流的流说明。
$route-descriptions 有效 intent 的 intent 说明。

请确保提供良好的流程和 intent 说明。

选择预定义的提示

  1. 在代理设置中,前往生成式 AI 标签页,然后前往生成式后备子标签页。
  2. 在模板下拉菜单中选择一个选项。
  3. 点击保存。

该功能提供两个模板提示:默认模板(不可见)和示例模板,后者可作为您编写自己的提示的指南。

自行定义提示

  1. 在代理设置中,前往生成式 AI 标签页,然后前往生成式后备子标签页。
  2. 在模板下拉菜单中选择 + 新建模板。
  3. 添加模板名称。
  4. 添加文本提示词。
  5. 点击保存。

您也可以先修改示例模板,然后将其另存为新模板:

  1. 在模板下拉菜单中选择示例。
  2. 点击修改。
  3. 修改模板名称。
  4. 修改文本提示词。
  5. 点击保存。

修改禁用短语列表

  1. 在代理设置中,前往生成式 AI 标签页,然后前往常规子标签页。
  2. 在禁用短语部分中,检查、添加或移除列表中的短语。
  3. 点击保存。

测试生成式后备

您可以在模拟器中测试生成式后备功能。每当用户话语导致流或页面上出现无匹配项时,如果无匹配项事件已配置为生成生成式回答(并且生成成功),代理将输出生成的回答。

Codelab

另请参阅生成式后备 Codelab。

问题排查

如果您想调试该功能,可以在 Dialogflow 控制台模拟器中检查已解析的大语言模型 (LLM) 输入提示:

  1. 点击原始回答按钮:

    原始回答

  2. 找到“生成式后备提示”字段。以纯文本形式读取这些字段,并检查 LLM 输入是否合理。如果任何短语包含 $,请检查模拟器输入,并阐明提示中的 $ 是否有意为之(例如,price is $10 中的 $ 可能是有意为之,而 visit $city 可能不是,并且可能意味着误用或 bug)。如果您不确定,请与支持团队联系。

  3. 如果您使用的是非默认提示模板,但看不到“生成式后备提示”字段,请与支持团队联系。