pyaiml21从Kernel加载Brain方法不工作



在Linux Mint 上使用Python 3.8.10

我已经把我的aiml简化为一个最小的版本来测试,但loadBrain方法并不能成功加载保存的大脑。

这是aiml代码,作为"q.aml">

<?xml version="1.0" encoding="UTF-8"?>
<aiml>
<category>
<pattern>*</pattern>
<template>test successful</template>
</category>
</aiml>

这是python,非常简单的

from pyaiml21 import Kernel
k=Kernel()
# k.loadBrain('q.brn')
k.learn('q.aiml')
while True:
a=input('>')
if a == 'quit':
break
else:
print (k.respond(a,'luke'))
k.saveBrain('q.brn')

您可以看到我第一次使用learn方法运行它。然后在下一次运行时,我将其注释掉,并取消对loadBrain行的注释。没有快乐。

我刚收到

>test
unknown

作为输出,当我期待"测试成功"时。请注意,saveBrain方法确实保存了一个非空文件。我能假设是loadBrain坏了吗??

序言<?xml version="1.0" encoding="UTF-8"?>是不必要的,是您问题的罪魁祸首。请删除它,然后重试。

最新更新