Recast.AI 内存不会自动刷新
Memory does not refresh automatically in Recast.AI
我创建了一个名为#USER-NAME 的实体,并将其设置为一项要求。
现在,第一次在对话中检测到实体时 - 例如 "I am John" ,然后内存设置为 John。在随后遇到具有不同值的同一实体时 - "I am Dave",记忆保持不变。
我看到了edit memory选项,它提供了1. reset memory 2. set to a value。对于选项2,它没有提供设置为#USER-NAME的值的方法,而只提供了输入静态值的选项。
每次实体值改变时如何更新内存??
编辑
您好,我附上了一些屏幕截图以显示到底出了什么问题。
我有一个名为“#USER_NAME”的实体,它将用户名保存在内存变量中。
我进行以下对话-
对话后的JSON payload如下。这非常有效-
我通过提供新的用户名再次更新对话。
这会很好地触发实体。您可以看到正确检测到的实体。
- 但是,内存值保持不变。
我想要的是用'John'替换'Dev'的内存变量。
内存是一个持久对象,所以如果你想重置它,你需要在构建器中有特定的条件,或者通过 webhook 获得后端代码来重新设置内存。
记住:
记忆 <> 意图
您可以在消息部分设置内存或使用例如要求自动更新,在这种情况下,每次触发技能时,它都会替换内存 ID 中的值
编辑:因为设置的内存字段需要 JSON 你不能随意使用内存,但是如果你在聊天相关的地方重置内存 ID(在我的示例中,我会在之后立即删除它saying Hi XXX) 所以当技能再次被触发时它会 "replace" 它具有新的值
在要求中,我将金色实体#Person 设置为变量 "name",如果缺少我会询问她的名字。
Sample Image
我创建了一个名为#USER-NAME 的实体,并将其设置为一项要求。 现在,第一次在对话中检测到实体时 - 例如 "I am John" ,然后内存设置为 John。在随后遇到具有不同值的同一实体时 - "I am Dave",记忆保持不变。
我看到了edit memory选项,它提供了1. reset memory 2. set to a value。对于选项2,它没有提供设置为#USER-NAME的值的方法,而只提供了输入静态值的选项。
每次实体值改变时如何更新内存??
编辑
您好,我附上了一些屏幕截图以显示到底出了什么问题。
我有一个名为“#USER_NAME”的实体,它将用户名保存在内存变量中。
我进行以下对话-
对话后的JSON payload如下。这非常有效-
我通过提供新的用户名再次更新对话。
这会很好地触发实体。您可以看到正确检测到的实体。
- 但是,内存值保持不变。
我想要的是用'John'替换'Dev'的内存变量。
内存是一个持久对象,所以如果你想重置它,你需要在构建器中有特定的条件,或者通过 webhook 获得后端代码来重新设置内存。
记住:
记忆 <> 意图
您可以在消息部分设置内存或使用例如要求自动更新,在这种情况下,每次触发技能时,它都会替换内存 ID 中的值
编辑:因为设置的内存字段需要 JSON 你不能随意使用内存,但是如果你在聊天相关的地方重置内存 ID(在我的示例中,我会在之后立即删除它saying Hi XXX) 所以当技能再次被触发时它会 "replace" 它具有新的值
在要求中,我将金色实体#Person 设置为变量 "name",如果缺少我会询问她的名字。
Sample Image