Dialogflow CX 代理 是负责与最终用户同时对话的虚拟客服。 它是一种自然语言理解模块,能够理解人类语言的细微差别。 Dialogflow CX 可以在对话过程中将最终用户输入的文字和音频转换为应用和服务可以理解的结构化数据。 您可以设计并构建 Dialogflow CX 代理来负责您的系统所需的各种对话。
Dialogflow CX 代理类似于人类呼叫中心的客服人员。 二者都需要经过训练,以处理预期的对话场景,并且内容不必过于明确。
创建代理
如需创建代理,请执行以下操作:
控制台
- 打开 Dialogflow CX 控制台。
- 创建或选择一个项目。
- 点击 Create agent 。
- 选择 Auto-generate 以创建 数据存储区代理 ,或选择 Build your own 以创建其他类型的代理。
- 填写基本代理设置表单:
- 点击保存 。
API
如果您尚未为项目配置 位置信息设置 ,则必须先使用控制台 配置这些设置,然后才能使用 API 创建代理。您无法使用 API 配置位置信息设置。
如需创建代理,请参阅 Agent 类型的 create 方法。
为代理参考选择协议和版本:
| 协议 | V3 | V3beta1 |
|---|---|---|
| REST | 代理资源 | 代理资源 |
| RPC | 代理界面 | 代理界面 |
| C++ | AgentsClient | 不可用 |
| C# | AgentsClient | 不可用 |
| Go | AgentsClient | 不可用 |
| Java | AgentsClient | AgentsClient |
| Node.js | AgentsClient | AgentsClient |
| PHP | 不可用 | 不可用 |
| Python | AgentsClient | AgentsClient |
| Ruby | 不可用 | 不可用 |
代理数据
Dialogflow CX 代理充当虚拟代理的设置和数据的顶级容器。以下数据与代理相关联:
如需详细了解如何在不同级别应用数据,请参阅 数据应用级别。
智能端点
Speech-to-Text (STT) 是一种 API,可使用机器学习将音频转换为文本,让您能够将语音识别功能集成到应用中。
受支持的
STT 模型包括任何长格式模型(例如 phone_call)。仅支持 en-US 语言。
如果为代理启用了智能端点,您可以通过设置等待超时 来指定额外的时间,从而为数值参数自定义智能端点行为。然后,Dialogflow CX 将等待用户提供其他输入。
等待超时是一种宽限期,让您可以在触发语音超时之前向 STT 转录添加内容。Dialogflow CX 使用启发法来指定需要根据转录选择的超时。例如,如果意图匹配成功,它可以选择非常短的超时。如果意图未匹配,它可以增加超时时间,让您说些其他内容,然后重试意图匹配。
其他 STT 功能包括:
- 更快的端点: 实时分析使用音频转录流式传输来区分自然停顿和话语完成,同时 STT 流保持打开状态。如果用户已说完话,Dialogflow CX 会提前终止流,以便更快地做出响应。
- 自然对话反馈: 如果用户在话语中停顿,Dialogflow CX 可以动态延长 STT 超时时间,以防止过早中断,或注入自然的回传提示(例如“嗯嗯”“啊哈”),以确认虚拟客服仍在监听。
导出和恢复代理
您可以将代理导出到文件中,并使用该文件恢复代理。
代理导出包含除以下内容之外的所有代理数据:
代理恢复会覆盖所有目标代理数据(包括所有流版本),但以下内容除外:
- 环境: 目标代理中的所有自定义环境保持不变。 只要关联的环境存在,目标代理中自定义环境引用的流版本就会继续存在。 不过,这些过时的流版本不会列为代理的流版本,也不会作为代理的流版本供选择。
- Vertex AI Agents 应用:与 Vertex AI Agents 应用的关联在目标代理中保持不变(即
engine在 GenAppBuilderSettings 中的值)。这意味着,数据存储区代理只能恢复到其他现有数据存储区代理中,因为生成的代理也需要与 Vertex AI Agents 应用相关联。 Vertex AI Agents 数据存储区: 根据以下规则,目标代理中的所有数据存储区引用都将被覆盖:
- 如果目标代理未与应用相关联,则无法将包含数据存储区引用的代理恢复到其中。如果尝试这样做,系统会显示错误消息。如需解决此问题,您可以从头开始创建新的数据存储区代理。(或者,您 可以通过向现有代理添加数据存储区 状态处理程序,将其转换为数据存储区代理。在这种情况下,系统会引导您向代理添加关联的应用。)
- 如果目标代理与应用相关联,则所有数据存储区 引用都会在恢复时更新:其 Google Cloud 项目 ID 和 位置将更新为与目标代理的应用匹配。集合 ID 和数据存储区 ID 将保持不变。这意味着,您需要在执行恢复操作之前,将所有具有匹配类型的所有 ID 的数据存储区添加到目标代理的应用中。
示例:如果源代理引用名为
projects/123/locations/eu-west2/collections/default_collection/dataStores/myDataStore1的数据存储区,并且目标代理的应用名为projects/321/locations/us-east1/collections/default_collections/engines/app123,则目标代理中生成的数据存储区引用将变为:projects/321/locations/us-east1/collections/default_collection/dataStores/myDataStore1
导出时,您可以选择导出文件格式。如果您对代理数据使用源代码 控制版本控制,则应 以 JSON 格式导出。 恢复代理时,Dialogflow CX 会自动确定文件格式。
如需导出或恢复代理,请执行以下操作:
控制台
- 打开 Dialogflow CX 控制台。
- 选择代理的项目。
- 为列表中的代理选择菜单选项 more_vert 。
- 点击导出 或恢复 按钮。
- 按照说明完成操作。
API
请参阅 Agent 类型的 export 和 restore 方法。
为代理参考选择协议和版本:
| 协议 | V3 | V3beta1 |
|---|---|---|
| REST | 代理资源 | 代理资源 |
| RPC | 代理界面 | 代理界面 |
| C++ | AgentsClient | 不可用 |
| C# | AgentsClient | 不可用 |
| Go | AgentsClient | 不可用 |
| Java | AgentsClient | AgentsClient |
| Node.js | AgentsClient | AgentsClient |
| PHP | 不可用 | 不可用 |
| Python | AgentsClient | AgentsClient |
| Ruby | 不可用 | 不可用 |
如果代理大小超过上限,请使用 Cloud Storage 选项来导出和恢复代理。
如果您使用 GitHub,另请参阅 GitHub 导出/恢复指南。
删除代理
如需删除代理,您需要一个提供完整访问权限或修改权限的角色。如需了解详情,请参阅访问权限控制指南。
要删除代理,请按以下步骤操作:
控制台
- 打开 Dialogflow CX 控制台。
- 选择代理的项目。
- 为列表中的代理选择菜单选项 more_vert 。
- 点击按钮 delete。
- 在对话框中确认删除。
API
请参阅 Agent 类型的 delete 方法。
为代理参考选择协议和版本:
| 协议 | V3 | V3beta1 |
|---|---|---|
| REST | 代理资源 | 代理资源 |
| RPC | 代理界面 | 代理界面 |
| C++ | AgentsClient | 不可用 |
| C# | AgentsClient | 不可用 |
| Go | AgentsClient | 不可用 |
| Java | AgentsClient | AgentsClient |
| Node.js | AgentsClient | AgentsClient |
| PHP | 不可用 | 不可用 |
| Python | AgentsClient | AgentsClient |
| Ruby | 不可用 | 不可用 |
如果您 删除项目, 则与该项目关联的所有 Dialogflow CX 代理和数据 都会立即删除。