我正在使用对话框流创建一个基本应用程序,并注意到它一直混淆意图 . 我有2个意图,一个用于购买汽车,另一个用于购买自行车 .

汽车意图有训练短语(动作:buyCar):

I would like to buy a car with 4 doors 
I would like to buy a car with 2 doors
The car should have 4 doors

自行车意图有训练短语(动作:买自行车):

I would like to buy a bike with 400 hp and red color
the bike should have 350 hp and green color

我假设意图将根据车辆类型(汽车或自行车)匹配,特别是与汽车的 sys.num + doors (在我的汽车实体中定义)和自行车的 sys.num + hpsys.color (在我的实体中定义)相关 . 然而,当我真正问起一件关于自行车的事情时......它会占用汽车的意图(因为它是先定义的?)

例如,如果我问模拟器 I would like to buy a bike with 400 hp and red color 它会将动作分配为 buyCar 并将车辆指定为自行车,但是因为它认为动作是汽车,所以它将 sys.num + doors 指定为 400 hp .

我似乎无法弄清楚如何阻止它混淆..我意识到意图根据关键字模糊地匹配,但是是否可以仅根据这些关键字并根据所需的变量数量进行专门匹配?所以1 var将是汽车,2 vars将是自行车 .