如何停止 dialogflow 始终返回应解决为明天的今天的日期
How to stop dialogflow always returning dates that should resolve to today as tomorrow
我遇到一个问题,当 Dialogflow 为我的意图解析 @sys.date-time 参数时,文本类似于“5am”,它们返回为 明天,而他们应该今天。
(今天是 2019-04-08,而不是 2019-04-09 已解决)
{
"responseId":"48bcf62d-dc2d-4f3c-befb-af8565fe01cb",
"queryResult":
{
"queryText":"today at 5a.m.",
"speechRecognitionConfidence":0.97964007,
"parameters": {
"duration":"",
"date":"2019-04-09T05:00:00+02:00"
},
...
"outputContexts":[
{
...
"name":"projects/xxxxx/agent/sessions/xxxxxx/contexts/xxxx",
"parameters":{
"duration":"",
"date":"2019-04-09T05:00:00+02:00",
"date.original":"5 a.m.",
"duration.original":""
...
}},
我在这个请求中也有一个 @sys.any
我怀疑这可能会导致问题。 (我宁愿它是一个用户定义的实体,但匹配在模棱两可的上下文中不够可靠,所以我必须自己做)。
有没有人有这方面的经验并且知道我可能会陷入的陷阱?我本以为没有任何其他修饰符的“5am”应该解析为今天5am.
根据@Prisoner 在评论中的推理,我认为 Dialogflow 的假设是公平的。当听到没有日期的时间时,它似乎假定它是在未来?
为了在我的应用程序中解决这个问题,因为我知道日期总是过去的,我只是将未来的日期时间固定为今天的日期,并在我的服务器端实现中使用那个时间。
我遇到一个问题,当 Dialogflow 为我的意图解析 @sys.date-time 参数时,文本类似于“5am”,它们返回为 明天,而他们应该今天。
(今天是 2019-04-08,而不是 2019-04-09 已解决)
{
"responseId":"48bcf62d-dc2d-4f3c-befb-af8565fe01cb",
"queryResult":
{
"queryText":"today at 5a.m.",
"speechRecognitionConfidence":0.97964007,
"parameters": {
"duration":"",
"date":"2019-04-09T05:00:00+02:00"
},
...
"outputContexts":[
{
...
"name":"projects/xxxxx/agent/sessions/xxxxxx/contexts/xxxx",
"parameters":{
"duration":"",
"date":"2019-04-09T05:00:00+02:00",
"date.original":"5 a.m.",
"duration.original":""
...
}},
我在这个请求中也有一个 @sys.any
我怀疑这可能会导致问题。 (我宁愿它是一个用户定义的实体,但匹配在模棱两可的上下文中不够可靠,所以我必须自己做)。
有没有人有这方面的经验并且知道我可能会陷入的陷阱?我本以为没有任何其他修饰符的“5am”应该解析为今天5am.
根据@Prisoner 在评论中的推理,我认为 Dialogflow 的假设是公平的。当听到没有日期的时间时,它似乎假定它是在未来?
为了在我的应用程序中解决这个问题,因为我知道日期总是过去的,我只是将未来的日期时间固定为今天的日期,并在我的服务器端实现中使用那个时间。