0

我已经通过 pip 安装了 AIML ,并在core文件夹中写入了文件startup.pystd-startup.xmlbasic.aimlbot_brain.brn 。当我尝试运行startup.py时,我收到以下警告:

Loading std-startup.xml... done (0.06 seconds)
WARNING: No match found for input: load aiml b

Kernel bootstrap completed in 0.10 seconds
Saving brain to core/bot_brain.brn... done (0.00 seconds)

这是std-startup.xml的内容:

<aiml version="1.0.1" encoding="UTF-8">
    <!-- std-startup.xml -->

    <category>
        <pattern>load aiml b</pattern>
        <template>
            <learn>basic.aiml</learn>
        </template>
    </category>

</aiml>

这是 Python 脚本:

import aiml
import os

kernel = aiml.Kernel()

if os.path.isfile("core/bot_brain.brn"):
    kernel.bootstrap(brainFile = "core/bot_brain.brn")
else:
    kernel.bootstrap(learnFiles = "std-startup.xml", commands = "load aiml b")
    kernel.saveBrain("core/bot_brain.brn")

while True:
    msg = raw_input(">")
    if msg == "exit":
        exit(0)
    elif msg == "save":
        kernel.saveBrain("core/bot_brain.brn")
    else:
        bot_response = kernel.respond(msg)
        print("bot: " + bot_response)

对于每个输入,我都会得到 error No match found for input。我做错了什么?除了bot_brain.brn之外,所有内容都在同一个目录中。

4

1 回答 1

1

问题解决了;我必须用大写字母输入:

<category>
    <pattern>LOAD AIML B</pattern>
    <template>
        <learn>basic.aiml</learn>
    </template>
</category>
于 2016-07-06T13:23:47.303 回答