我正在尝试允许用户说出一个美元金额作为Bixby胶囊的输入。所以我提出了一个money.Currency类型的概念
structure (Amt) {
role-of (money.Currency)
description (Amount to spend)
}然后我给出了一些使用它的训练示例:
[g:SomeGoal] I want to pay {[g:Amt] ($)[v:viv.money.PrefixSymbol:$](25.32)[v:viv.money.CurrencyValue]}当用户在文本中输入他们的美元金额时,这可以很好地工作,但如果用户试图向Bixby大声说出金额,它通常会失败。
例1(失败):用户说:“我想付25美元32美分。”Bixby将其解析为“我想支付$25 32美分”,并使用$25填充Amt字段,省略了美分。
示例2(失败):用户说“我想支付25-32”。Bixby将其解析为“我想支付2532”,并用$2532填充Amt字段,同样没有填写美分的值。
示例3(成功):用户说:“我想支付25.32美元。”Bixby正确地将其解析为“我想支付$25.32”,并使用$25.32填充Amt字段。然而,对于说英语的人来说,这听起来非常不自然,我认为训练用户使用这种方式并不容易。
例4(有时会成功):用户说:“我想付25美元32美分。”Bixby有时会正确地解析它,其他时候则是“我想用32美分支付25美元”或其他类似的损坏。
有谁有建议让Bixby用自然语言始终如一地理解美元金额?我可以接受示例2失败,因为它是模棱两可的,但主要是我希望示例1和4能够一致地成功。我确实有一个解决办法(一个单独的美分字段,通过一个操作手动添加到美元字段中),但如果可能的话,我倾向于避免这种情况,因为这似乎是Bixby应该能够自己处理的常见情况。
发布于 2019-08-07 02:46:45
感谢您让我们注意到这一点。我多次尝试下面的句子“支付100美元25美分”,比克斯比每次都能准确地转录出来。
但你的用例(尤其是#1)是有效的,因为一些用户倾向于不使用" and“将美元和美分联系在一起。我们将在内部与我们的团队提出这个问题,但我建议您与Bixby开发人员支持打开一个工单,这样我们就可以将您的工单与问题联系起来,并在问题解决时保持您的帖子。
此外,使用第二个属性捕获美分的变通方法也应该可以很好地工作。如果你遇到任何问题,请告诉我们。
https://stackoverflow.com/questions/57368655
复制相似问题