策略方案

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

限制

存在以下限制:

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

语言支持

请参阅语言参考文档中的playbook 列。 已使用 gemini-2.5-flash 模型对标记为 Playbook 的语言进行了质量测试。

使用英语以外的语言时:

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

模型支持

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

  • 在代理级别选择 LLM 模型。

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

    • 在测试 playbook 时,从 Conversational Agents 控制台模拟器的列表中选择模型的显示名称。
    • 如果您使用 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
gemini-3.5-flash-lite Gemini 3.5 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 由以下数据组成:

  • 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 (A) 转换到另一个常规流程 playbook (B),再转换到 flow (C) 的过程:

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

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

如果常规流程 playbook 未转换到其他常规流程 playbook 或 flow,则会话会返回到上一个活跃 flow,如果没有活跃 flow,则会话会结束。

常规流程 playbook 具有以下参数管理行为:

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

比较 playbook 类型

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

默认 playbook

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

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

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

创建策略方案

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

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

使用 AI 生成功能创建 playbook

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

导入和导出 playbook

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

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

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

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

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