防止从 NL 训练中直接选择
Prevent direct selection from NL training
我在 NL 训练中匹配了 selection-of 中的概念,因此当我语音输入选项时它现在可以接受输入并显示结果。但这样做的缺点是它会直接显示结果,即使我不在 selection 页面中。有什么办法可以防止这种情况发生吗?我的方法是将 NL 的目标与 selection 选项的概念相匹配, 提示 概念
[更新] 想在用户制作 selection 之前先向用户显示菜单。当我运行执行一个操作
时可以显示菜单
where playNews> getNews> getMenu(一个 select 离子输入视图)
action (getNews) {
type (Constructor)
description (__DESCRIPTION__)
collect {
input (whatuserwant){
type (userWantToHear)
min (Required) max (One)
default-init{
intent{
goal: getMenu
}
}
default-select{
with-rule{
select-first
}
}
}
}
output (newsAudio)
}
为了允许语音输入 selection,我添加了概念训练
因此它能够从菜单中 select selection,但是它也将接受 selection 和 运行 即使我还没有出现在菜单中。 是否可以摆脱这个? 或者这是 Bixby 的行为吗?
更新:我会删除 default-select
并将 prompt-behavior (AlwaysElicitation)
添加到输入中。 Read more in our DOC.
您可能还想检查 this example in GitHub 以了解如何从操作的其他输入构建输入视图 selection。这个例子是 QuizIt 如何处理 selection 部分的简化版本。您可能还想检查训练以了解 Bixby 如何采取不同的操作 with/without 顶级 "A" 训练示例。
输入提示应该像您期望的那样简单易行:显示一个包含消息的列表,然后用户可以点击或语音 select,并能够继续操作。
以下是一些您可能会觉得有用的附加信息:
- Bixby 平台会在输入缺失时尝试匹配结构的每个 属性,因此将 属性 标记为
visibility (Private)
以防止出现这种情况。您还可以使用 prompt-behavior (AlwaysSelection)
强制输入 selection。
- 在 prompt/continuation 训练的情况下,Bixby 会将其视为顶级训练,没有其他训练适合。例如,一个简单的测验胶囊将构建一个默认测验,顶级话语 "A" 将被视为将第一个问题回答为 A。为防止这种情况,只需添加 "A" 的训练示例并匹配它到你想要的动作。 Bixby 会知道使用这个顶级训练而不是提示训练。
我在 NL 训练中匹配了 selection-of 中的概念,因此当我语音输入选项时它现在可以接受输入并显示结果。但这样做的缺点是它会直接显示结果,即使我不在 selection 页面中。有什么办法可以防止这种情况发生吗?我的方法是将 NL 的目标与 selection 选项的概念相匹配, 提示 概念
[更新] 想在用户制作 selection 之前先向用户显示菜单。当我运行执行一个操作
时可以显示菜单where playNews> getNews> getMenu(一个 select 离子输入视图)
action (getNews) {
type (Constructor)
description (__DESCRIPTION__)
collect {
input (whatuserwant){
type (userWantToHear)
min (Required) max (One)
default-init{
intent{
goal: getMenu
}
}
default-select{
with-rule{
select-first
}
}
}
}
output (newsAudio)
}
为了允许语音输入 selection,我添加了概念训练
因此它能够从菜单中 select selection,但是它也将接受 selection 和 运行 即使我还没有出现在菜单中。 是否可以摆脱这个? 或者这是 Bixby 的行为吗?
更新:我会删除 default-select
并将 prompt-behavior (AlwaysElicitation)
添加到输入中。 Read more in our DOC.
您可能还想检查 this example in GitHub 以了解如何从操作的其他输入构建输入视图 selection。这个例子是 QuizIt 如何处理 selection 部分的简化版本。您可能还想检查训练以了解 Bixby 如何采取不同的操作 with/without 顶级 "A" 训练示例。
输入提示应该像您期望的那样简单易行:显示一个包含消息的列表,然后用户可以点击或语音 select,并能够继续操作。
以下是一些您可能会觉得有用的附加信息:
- Bixby 平台会在输入缺失时尝试匹配结构的每个 属性,因此将 属性 标记为
visibility (Private)
以防止出现这种情况。您还可以使用prompt-behavior (AlwaysSelection)
强制输入 selection。 - 在 prompt/continuation 训练的情况下,Bixby 会将其视为顶级训练,没有其他训练适合。例如,一个简单的测验胶囊将构建一个默认测验,顶级话语 "A" 将被视为将第一个问题回答为 A。为防止这种情况,只需添加 "A" 的训练示例并匹配它到你想要的动作。 Bixby 会知道使用这个顶级训练而不是提示训练。