首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

Watson Conversation 对话原理以及高级应用-2

Watson Conversation 对话原理以及高级应用-2

响应简单文本响应如果要提供文本响应,只需输入您希望该服务向用户显示的文本。
图 6.                    简单文本响应示意图
增加变量 如果您的用户经常返回您的对话服务,每次听到同样的问候和回答。 您可以向响应添加变体, 他们可能会感到无聊,                以便您的对话可以以不同的方式响应相同的条件。
图 7 . 添加变量界面
在这个例子中,服务提供的响应关于商店位置的问题的答案不同于一个交互到下一个:
图 8. 添加变量示意图
您可以选择按顺序或随机顺序返回响应变体。 默认情况下,响应顺序返回 ,就像从有序列表中选择一样。
多重条件响应 单个对话节点可以提供不同的响应,每个响应由不同的条件触发。 使用此方法来解决单个节点中的多个场景。
图 9. 多重条件响应界面
节点仍然具有主要条件,这是使用节点并处理其所包含的条件和响应的条件。
在此示例中,服务使用先前收集的关于用户位置的信息来定制其响应,并提供关于最靠近用户的商店的信息。                有关如何存储从用户收集的信息的更多信息,请参阅上下文变量。
图 10.                    多重条件响应示意图
此单节点现在提供了四个独立节点的等效功能。
复杂响应 要指定更复杂的响应,可以使用 JSON 编辑器在"输出":{}属性中指定响应。
要在响应中包含上下文变量值,请使用语法 $ variable-name 来指定它。 有关更多信息,请参阅上下文变量
图 11. 复杂响应 1
要指定要在不同行上显示的多个语句,请将输出定义为 JSON 数组。
图 12. 复杂响应 2
第一句显示在一行,第二句显示为下面的新行。
要实现更复杂的行为,可以将输出文本定义为复杂的 JSON 对象。 例如,您可以使用 JSON 输出中的复杂对象来模拟将响应变体添加到节点的行为。                您可以在复杂对象中包含以下属性:
  • value:一个 JSON 数组的字符串,其中包含该对话框节点可以返回的输出文本的多个版本。 返回数组中的值的顺序取决于属性                    selection_policy。
  • selection_policy: 以下值有效
  • random: 系统从值数组中随机选择输出文本,不会连续重复。 例如,考虑包含三个值的 output.text。                    对于前三次,选择随机值,但不会再次重复。 在给出所有输出值之后,系统随机选择另一个值并重复该过程。
图 13. 复杂响应 3
系统从随机选择的这三个选项返回一个问候语。下一次触发响应时,会显示列表中的另一个问候语。
Sequential: 系统在第一次触发对话框节点时返回第一个输出文本,第二次输出文本第二次触发该节点,依此类推。
图 14. 复杂响应 4
Append: 指定是追加数组还是使用新值或值覆盖数组中的值。 当设置为 false                时,先前执行的对话框节点中收集的输出将被该特定节点中指定的文本值覆盖。
图 15. 复杂响应 5
在这种情况下,所有其他输出文本将被此输出文本覆盖。
默认行为为 selection_policy = random 和 append = true。                当值数组包含多个项目时,从其元素中随机选择输出文本。
返回列表