如何正确构建 wit.ai 意图?
How to properly structure wit.ai intents?
我有一个机器人可以提供有关电影院的信息,例如电影时间表和上映日期。
其中一部分是 cinema_action
特征实体,它根据用户的输入映射到不同的值。我已经为每个值插入了训练数据。
例如
cinama_action
--> schedule
cinema_action
--> release_date
但是,我不确定这是否是建议的构建用户意图的方式,或者我是否应该为每个意图创建一个实体。
后者的优势在于可以在响应和动作提示中使用,我可以在其中指定哪个上下文或实体应该存在或不存在以用于动作或对触发的响应。
对于前者,我可以将不同的意图适当地归为一个实体,因为它们都与电影主题有关。
根据我当前的设置,我无法使用 cinema_action
作为提示,因为真实信息位于实体的值内。
这个问题问得好,感谢分享。这真的取决于你的应用程序和你想做什么。我们可能会在未来添加有关实体值的操作提示,而不仅仅是实体名称。同时,您将不得不依赖机器人执行(即您这边的操作,将实体 key/value 转换为唯一的上下文键)
我们在为每个意图值创建特征实体时看到的主要优势是进行多重匹配。对于您的情况,我不确定您的用户是否会在同一条消息中询问有关时间表和发布日期的频率
这就是为什么我会使用具有不同值的特征实体 "cinema_action" 而不是创建多个特征实体,例如 "cinema_action_schedule" 具有单个值 "True"。
我有一个机器人可以提供有关电影院的信息,例如电影时间表和上映日期。
其中一部分是 cinema_action
特征实体,它根据用户的输入映射到不同的值。我已经为每个值插入了训练数据。
例如
cinama_action
--> schedule
cinema_action
--> release_date
但是,我不确定这是否是建议的构建用户意图的方式,或者我是否应该为每个意图创建一个实体。
后者的优势在于可以在响应和动作提示中使用,我可以在其中指定哪个上下文或实体应该存在或不存在以用于动作或对触发的响应。 对于前者,我可以将不同的意图适当地归为一个实体,因为它们都与电影主题有关。
根据我当前的设置,我无法使用 cinema_action
作为提示,因为真实信息位于实体的值内。
这个问题问得好,感谢分享。这真的取决于你的应用程序和你想做什么。我们可能会在未来添加有关实体值的操作提示,而不仅仅是实体名称。同时,您将不得不依赖机器人执行(即您这边的操作,将实体 key/value 转换为唯一的上下文键)
我们在为每个意图值创建特征实体时看到的主要优势是进行多重匹配。对于您的情况,我不确定您的用户是否会在同一条消息中询问有关时间表和发布日期的频率
这就是为什么我会使用具有不同值的特征实体 "cinema_action" 而不是创建多个特征实体,例如 "cinema_action_schedule" 具有单个值 "True"。