2016-07-06 83 views
0
加载在AIML模式

我已经通过PIP安装AIML和写文件startup.pySTD-startup.xmlbasic.aimlbot_brain.brn核心夹。当我尝试运行startup.py,我得到这样的警告:无法通过Python

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) 

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

回答

0

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

<category> 
    <pattern>LOAD AIML B</pattern> 
    <template> 
     <learn>basic.aiml</learn> 
    </template> 
</category>