如何在 Watson Conversation 的对话条件中查找实体值大小

how to find the entity values size in dialog condition in Watson Conversation

我有一个名为 "cities" 的实体,它有多个值。如果用户的文本中包含超过 1 个城市,我想给出具体的回复。我试图在对话条件中使用这个条件 - @cities.values.size() > 1

但上述条件不成立,对话工具显示这是一个不正确的实体运算符。

有没有一种方法可以在不使用上下文变量的情况下检查实体值的大小。

直到今天,这种情况一直有效,我看到对话工具界面发生了一些变化,SpEL 在对话条件下停止工作。我希望对工具所做的更改不会导致此问题。

在该条件下,您可以使用类似 entities.size() 的内容来访问已找到的实体数。如果您只想过滤 cities,那么您应该尝试 entities['cities'].size()。您可以比较该值,因此将其设置为 entities['cities'].size()>1.

See here for several examples that I collected for working with variables in Watson Conversation.

很简单。 而不是使用 @cities.values.size() > 1 使用 @cities.size()>1