Nlp 响应Chatscript中的多个匹配项

Nlp 响应Chatscript中的多个匹配项,nlp,chat,chatscript,Nlp,Chat,Chatscript,我目前正在尝试学习聊天脚本,但文档似乎很差。我当前的问题是如何响应与输入匹配的多语句。所以,如果我说“嗨,告诉我关于你自己的事”,我有一个“嗨”和“关于你自己”的匹配词,它会回应第一个匹配词,而不是最后一个匹配词。我很确定我需要修改控制脚本来解决这个问题,但不确定要使用哪些命令。可能是存储上次输入中的所有匹配项并可以选择一个特定的?您可以创建一个u:response,使用^next&refine()遍历以~greeting开头的句子。这是伪代码: u: ( ~greeting ) ^r

我目前正在尝试学习聊天脚本,但文档似乎很差。我当前的问题是如何响应与输入匹配的多语句。所以,如果我说“嗨,告诉我关于你自己的事”,我有一个“嗨”和“关于你自己”的匹配词,它会回应第一个匹配词,而不是最后一个匹配词。我很确定我需要修改控制脚本来解决这个问题,但不确定要使用哪些命令。可能是存储上次输入中的所有匹配项并可以选择一个特定的?

您可以创建一个u:response,使用^next&refine()遍历以~greeting开头的句子。这是伪代码:

u: ( ~greeting ) 

   ^refine()

 a: ( %more ) 

    ^next(input) 
    ^refine()

    b: ( you be ? )

       I'm good!

    b: ( %lenght==0 ) 

       Hi!
()

^下一步(什么标签)–给出了什么样的策略或回应者或反驳者 规则和一个规则标签或标签,找到下一个规则的那个什么。如果找不到,则失败。 如果达到下一个最高级别规则,则答辩将失败。如果标签为“~”,它将使用 最后一个电话的回答作为起点,使您能够连续遵守规则。有 另外^下一步(事实@xxx)–参见事实手册对于^next(输入),系统将读取 下一句话,用它来准备系统。这意味着所有正在执行的模式和代码 之后将在下一个输入句子的上下文中。该句子现在已用完, 当当前修订的句子结束时,下一步将不会看到