策略方案

playbook 是生成式智能体最基本的智能模块。生成式智能体通常具有许多 playbook,其中每个 playbook 都定义为处理特定任务。playbook 数据被提供给 LLM,以确保 LLM 获得回答问题和执行任务所需的信息。每个 playbook 都可以提供信息、向外部服务发送查询,或者将对话处理推迟到数据流或其他 playbook 来处理子任务。

限制

存在以下限制:

  • 使用剧本的代理不支持从默认启动流程中的默认欢迎意图路由发送通话助手短信,但您可以在标准流程中启用通话助手短信选项。
  • Playbook 不支持来自电话系统的 DTMF 输入。

语言支持

请参阅语言参考文档中的剧本列。 已针对标记为可用于 playbook 的语言,使用 gemini-2.5-flash 模型测试了质量。

使用英语以外的语言时:

  • 在大多数情况下,请使用英语来编写剧本说明。对于某些语言和使用情形,如果您还提供目标语言的指令,则可以获得略微更好的回答。
  • 在剧本指令中声明语言支持,例如“始终使用法语回答”。
  • 以目标语言定义示例。

模型支持

您可以在以下位置选择在 playbook 中使用的 LLM 模型:

  • 在代理级选择 LLM 模型。

    • 在对话智能体控制台中,依次选择“Agent setting”(智能体设置)->“Generative AI”(生成式 AI)->“Playbook”(剧本),然后从可用模型列表中按显示名称选择一个模型。
    • 如果您使用 API 更新代理设置,请在 GenerativeSettings.llm_model_settings.model 字段中指定模型名称(请参阅 GenerativeSettings)。
  • 在请求级别替换模型选择。

    • 在对话智能体控制台模拟器中,测试 playbook 时,请从列表中按显示名称选择模型。
    • 如果您使用 API 测试代理,请在 DetectIntentRequest.query_params.llm_model_settings.model 字段中指定模型名称(请参阅 DetectIntentRequest)。
模型名称 模型规范 发布阶段
gemini-2.5-flash Gemini 2.5 Flash GA
gemini-2.5-flash-lite Gemini 2.5 flash lite GA
gemini-3.1-flash-lite Gemini 3.1 flash lite GA

区域支持

以下地区支持 Playbook:

  • global
  • asia-south1
  • asia-southeast1
  • asia-southeast2
  • asia-northeast1
  • australia-southeast1
  • eu(多区域)
  • europe-west1
  • europe-west2
  • europe-west3
  • europe-west4
  • europe-west6
  • northamerica-northeast1
  • us(多区域)
  • us-central1
  • us-east1
  • us-west1

playbook 数据

剧本由以下数据组成:

  • playbook 名称:一种简洁的自然语言名称,可帮助开发者和 LLM 了解 playbook 处理的任务。
  • 目标:对 playbook 应实现的功能进行概括性描述。
  • 指令:智能体必须采取的流程步骤,以实现目标。
  • 示例:可作为 LLM 的有效少样本提示示例的对话示例。
  • 参数:用于存储对话相关信息的变量,例如用户输入、用户系统信息和操作结果。

LLM 提示

在每个对话轮次中,Dialogflow CX 都会使用设计时 playbook 数据和运行时对话数据在 token 限制内创建 LLM 提示。 此提示的内容总结如下,其中标题仅用于说明,不一定属于提示的一部分。

# INTERNAL_SYSTEM_PROMPT
<you cannot see or edit this>

# INTERNAL_SYSTEM_EXAMPLES
<you cannot see or edit this>

# AVAILABLE_TOOLS_TO_CURRENT_PLAYBOOK
<tool names and schemas, for example...>

## Tool: my_datastore
   description: blah
   input: blah
   output: blah

## Tool: some_other_custom_tool
   description: blah
   input: blah
   output: blah

# PLAYBOOK
<verbatim Goal and Instructions that you provide in the console>

# PLAYBOOK_EXAMPLES
<as many Examples for the current Playbook as can fit in the prompt>

## Example 1

## Example 2
..
..
..
## Example N (up to the input token limit)

# CURRENT_CONVERSATION
<the conversation up to this point w/ some caveats...>

* Caveat 1: If there was a transition from Playbook A -> Playbook B, the
  Conversation that happened in Playbook A is summarized and provided as context
* Caveat 2: If there was a transition from Flow A -> Playbook A, the
  Conversation that happened prior to the entry of Playbook A is summarized and
  provided to the Playbook

playbook 类型

创建 playbook 时,您可以选择所需的 playbook 类型:任务 playbook 或常规流程 playbook。

任务 playbook

任务 playbook 是最初的 playbook 类型。您可以使用它们将复杂的任务分解为较小的、可重用的子任务,并对组合式对话阶段进行建模,其中的每个阶段都通过输入和输出参数进行通信。

一个任务 playbook(调用方)调用另一个任务 playbook(被调用方):

一个任务 playbook 调用另一个任务 playbook

  1. 调用方启动被调用方。
  2. 调用方为被调用方提供必要的输入参数。
  3. 被调用方会处理此信息,执行其指定的功能,并返回输出参数。
  4. 调用方从被调用方接收参数。

任何常规流程 playbook 或任务 playbook 都可以调用另一个任务 playbook,但任务 playbook 无法调用另一个常规流程 playbook。

日常安排 playbook

日常安排 playbook 是一种新型 playbook。它们用于对顺序式对话阶段进行建模,其中的每个阶段都是完整且独立的。它们可以调用任务 playbook 来将较大的任务分解为较小的子任务,也可以转到其他日常安排 playbook 或流。

下图显示了从常规 playbook (A) 过渡到另一个常规 playbook (B),再过渡到流程 (C) 的过程:

一个常规流程 playbook 调用另一个常规流程 playbook

  1. 日常安排 playbook A 可以在启动时读取会话参数,并在退出前写入会话参数。
  2. 常规流程 playbook A 退出并过渡到常规流程 playbook B。
  3. 日常安排 playbook B 可以在启动时读取会话参数,并在退出前写入会话参数。
  4. 常规流程 playbook B 退出并过渡到流程 C。
  5. 流程 C 可以读取和写入会话参数。

如果常规 playbook 未过渡到其他常规 playbook 或流程,会话将返回到上次活跃的流程,如果没有,则会话结束。

日常安排 playbook 的参数管理行为如下:

  • 当进入常规流程 playbook 时,其输入参数会被分配与同名会话参数等效的值。
  • 常规流程 playbook 退出时,会为其输出参数生成值,并将其分配给同名的会话参数。

比较 playbook 类型

类别 任务 playbook 日常安排 playbook
延迟时间 每次任务 playbook 调用另一个任务 playbook 时,都会进行一次 LLM 调用。如果在一个对话轮次中存在很长的任务 playbook 链,这可能会增加延迟时间。 一系列过渡中的每个常规流程 playbook 都在一次对话轮次中发生,因此只有一次 LLM 调用,延迟时间也缩短了。
参数重新生成 当任务 playbook 调用另一个任务 playbook 时,需要重新生成参数值。如果任务 playbook 链很长,这种重新生成可能会导致上下文丢失。 日常安排 playbook 使用会话存储空间来存储参数,从而创建更可靠的上下文。
会话参数集成 任务 playbook 与会话参数的交互效果不佳,因此需要定义输入和返回参数。 日常安排 playbook 可与会话参数很好地搭配使用。
可重用性 由于每个任务 playbook 都具有固定的父/子关系,因此任务紧密耦合。 日常安排 playbook 可以单独定义。

默认策略方案

当您使用 Conversational Agents 控制台创建生成式智能体时,Dialogflow 会自动创建默认生成式 playbook。

默认 playbook 是对话的起点,因此与其他 playbook 相比,它具有一些重要区别:

  • 默认 playbook 不会收到之前对话轮次的摘要。
  • 默认 playbook 无法定义或接收输入参数。

创建策略方案

如需创建 playbook,请执行以下操作:

  1. 在控制台的导航菜单中,选择 playbook 图标。
  2. 点击创建按钮。
  3. 选择日常安排或任务 playbook 类型。
  4. 提供 playbook 数据。

使用 AI 生成功能创建 playbook

创建 playbook 时,系统会打开一个生成式 AI 面板。这样,您就可以生成剧本数据。

导入和导出 playbook

使用 Conversational Agents 控制台创建 playbook 后,您可以导出这些 playbook 以在其他智能体中使用。

如需导出 playbook,请执行以下操作:

  1. 前往 playbook 列表。
  2. 点击要导出的剧本对应的导出按钮。
  3. 选择导出选项。
  4. 点击导出。

如需导入之前导出的 playbook,请执行以下操作:

  1. 前往 playbook 列表。
  2. 点击导入。
  3. 选择导入选项。
  4. 点击导入。