我的操作有 3 个输入:必需的书、可选的章节、可选的诗句。
如果我说read [book] [chapter] [verse]
,我会得到正确的回应。
如果我继续使用read [book] [chapter]
,我将获得从上一个请求传入的 Verse 值。我如何防止这种情况发生?
我的操作有 3 个输入:必需的书、可选的章节、可选的诗句。
如果我说read [book] [chapter] [verse]
,我会得到正确的回应。
如果我继续使用read [book] [chapter]
,我将获得从上一个请求传入的 Verse 值。我如何防止这种情况发生?
我能够绕过这个问题(它出现了),但是创建了三个单独的操作(必需的书、必需的书 + 必需的章节、必需的书 + 必需的章节 + 必需的诗句)。
然后,我只需要复制 myaction-endpoint
以允许同一端点接受所有三个操作。
虽然我在某些情况下看到了“历史输入”的价值,但似乎也应该有一种方法可以忽略它们。
如果您绝对不想要任何历史输入,您可以尝试使这些概念暂时化
Bixby 使用历史输入(例如,来自先前请求的输入)来填充用户话语中任何缺失的输入,以提供简化的对话流程。
在您不应该做出此类假设的用例中,我建议prompt-behavior (AlwaysSelection)
在您的操作的收集输入定义中使用。这将确保 Bixby 不使用历史输入来填补空白,而是询问用户有问题的输入。prompt-behavior
您可以在此处阅读更多信息。