Watson Assistant @sys-date 返回下一年的月份

Watson Assistant @sys-date returning next year's month

场景:

问题:

我发现检测不合格的月份和日期名称的正确含义很困难,例如,在与来自不同地区或国家的人交谈时。现在教电脑...

documentation for Watson Assistant has some details on @sys-date and @sys-time system entities。对于其中一个例子,他们有这个脚注:

Returns the next matching date. If that date has already passed this year, this returns next year's date.

在你的情况下,9 月已经在某种程度上过去了。如果有人说 "I plan a worldcruise for September" 是指今年 9 月还是明年 9 月?我的建议是 check the detected year and compare it with the current year。如果它们不同,请添加一个对话节点以阐明是今年还是明年。这类似于我个人在与朋友交谈时所做的事情,我觉得不清楚。

我可以使用 .alternative date 解决这个问题。 在新的 sys-date 中,有一个替代 属性,基本上是:如果用户传递的日期有歧义,系统 returns 下一个匹配日期,但存储最后一个匹配日期或者 属性.

@sys-date.alternatives “例如,如果今天的日期是 2019 年 3 月 10 日,而用户输入的是 3 月 1 日,则明年的 3 月 1 日将保存为 @sys-date (2020-03-01)。但是,用户可能有表示 2019 年 3 月 1 日。系统还将今年的日期 (2019-03-01) 保存为替代日期值。再例如,如果今天是星期二并且用户输入,本星期二或下星期二,则 @sys-date设置为下周星期二的日期,并且没有创建替代日期。” link : https://cloud.ibm.com/docs/assistant?topic=assistant-new-system-entities#new-system-entities-sys-date-time

我知道提出这个问题已经将近 2 年了,但可能会帮助未来有需要的人