比较操作和对话
为您的使用案例选择正确的对话类型。
操作优势
如果您想把重点放在内容上,使用操作是最佳选择。 行动具有以下优势
- 创建交谈流的过程会更容易。 拥有客户关怀专业知识的人员可以写出您的助手所说的话。 通过简化流程,任何人都可以构建对话。 您不需要有关机器学习或编程的知识。
- 这些操作可以更好地了解客户与助理的互动情况和满意度。 由于每个任务都是离散的,并且具有明确的开始和结束,因此您可以通过任务跟踪用户进度并识别 snags。
- 对话设计者不需要管理对话期间收集的数据。 缺省情况下,助手会收集并存储当前操作持续时间内的信息。 您无需执行额外步骤来删除已保存的数据或重置对话。 但如果您愿意,您可以在对话期间存储特定类型的信息,例如客户的姓名。
- 许多人可以在单独的,自成一体的行动中同时工作。 交谈中的操作顺序无关紧要。 仅操作中的步骤顺序很重要。 操作作者还可以使用拖放功能重新组织操作步骤,以优化流程。
对话优势
当您希望对流程的逻辑进行更多控制时,基于对话的对话是最佳选择。 对话框编辑器会暴露更多用于构建人工智能模型的底层工件(如意图和实体)。 对话流程使用的是 if-then-else 结构,开发人员可能对这种结构比较熟悉,但内容设计人员或客户服务专家却并不熟悉。
行动与对话有何不同
如果您已经熟悉了基于对话的会话,请进一步了解行动的比较。
功能 | 操作 | Dialog |
---|---|---|
自动重置上下文 | ||
跟踪上下文 | ||
收集信息(与使用槽一样) | ||
上下文实体 | ||
收集数字 (@sys-number 检测) | ||
检测其他系统实体 | ||
连接到代理响应类型 | ||
自由文本响应类型 | ||
图像响应类型 | ||
选项响应类型 | ||
搜索技能响应类型 | ||
文本响应的富文本格式编辑器 | ||
用户输入验证 | ||
步骤逻辑验证 | ||
通过在对技能进行同时编辑时通知多个用户,支持多个用户 | ||
使用 SpEL 表达式 | ||
消歧 | ||
离题支持 | ||
拼写更正 | ||
Webhook (在每条消息之前或之后) 支持 | ||
Webhook (来自节点) 支持 | ||
Webhook (记录所有消息) 支持 |
对于某些功能,虽然存在一致性,但须执行不同的步骤来实现所需的行为。
- 跳转至: 在操作中,可以从一个步骤跳转至另一个步骤。 在对话框中,您可以使用跳转到跳转到对话同一分支中的特定对话节点。 通过操作,您还可以跳转到操作中的不同步骤。 但是,要执行此操作,请在介于其间的步骤上使用条件来阻止处理这些步骤,而不是使用显式跳转至操作。 此方法的优点是,如果在整个流中没有分布多个跳转至操作,那么可以更轻松地预测交谈的路径并随后采用该路径。
- 槽:在对话框中,您可以在对话框节点上添加槽,以调用一组要从用户处收集的值,并以任意顺序提取和存储这些值。 在行动中,行动的每一步都像一个插槽。 如果用户在回答步骤 1 的问题时提供了可处理步骤 10 的信息,那么会同时填充步骤 1 和步骤 10。 事实上,如果想让第 10 步明确询问该问题,就必须在第 10 步选择“总是询问该选项”。
想要开始操作,但需要对话中提供的功能部件吗? 请同时使用这两种技能。 对话是您与用户的主要对话,但您可以从对话中调用操作来执行独立任务。 有关更多信息,请参阅 从对话框调用操作。