Ibm cloud 在IBM Watson对话中将上下文变量与实体进行比较

Ibm cloud 在IBM Watson对话中将上下文变量与实体进行比较,ibm-cloud,watson-conversation,Ibm Cloud,Watson Conversation,在watson对话对话框中,我创建了一个条件;差不多 if $stored_state == @states:(Florida) AND $preferred_joint == @joint:(KFC) then some response 其中,$stored\u state是一个上下文变量,它存储在用户输入的前一个节点上。$preferred\u joint也是如此@状态和@关节只是模糊匹配的两个实体。 但这样的条件永远不起作用。在将其转换为上下文变量后,我还尝试使用@states:(Fl

在watson对话对话框中,我创建了一个条件;差不多

if $stored_state == @states:(Florida) AND $preferred_joint == @joint:(KFC)
then some response
其中,
$stored\u state
是一个上下文变量,它存储在用户输入的前一个节点上。
$preferred\u joint
也是如此
@状态
@关节
只是模糊匹配的两个实体。 但这样的条件永远不起作用。在将其转换为上下文变量后,我还尝试使用
@states:(Florida)
实体。但还是不行


现在,我做错了什么?有没有办法将上下文变量与实体进行比较?

只是确认一下,您想检查用户在最后一次输入时所说的实体是否与您在上下文中存储的实体相匹配

你可以用一个和条件来做这个,对吗? @州:'Florida'和&$stored_state=='Florida'


这表明用户刚才说的是佛罗里达州,存储的上下文变量也是佛罗里达州。

难道不是
@states:(florida)
本身就是一个谓词吗?是的,我相信是。但是我需要在以后的任何节点中检查
存储的州
@states:(Florida)
只有一个案例。您需要类似
if@states:(Florida)和$stored\u state==Florida的东西…
这并没有解决问题。不过,我找到了一个解决办法<代码>如果$stored_state=='FLORDIA'和$PREFERED_joint=='KFC'。谢谢你的提示。仍在等待解决方案。