如何在python aiml中插入新模式

时间:2018-03-11 11:38:12

标签: python aiml

你好我试图在aiml中使用python( aiml library )插入新的模式我跟着这个tutorial,我可以使用预定义的模式ALICE聊天机器人并使用模板标签更改它的答案但是当我插入不在ALICE聊天机器人中的新模式时,程序会出现此错误 警告:找不到输入的匹配项:'' ,请帮助有没有办法使用python aiml库插入新模式?

下面是我的chatbot.py文件

    import aiml
    import sys

    mybot = aiml.Kernel()
    mybot.setBotPredicate('name','chefbot')
    mybot.learn('sample.aiml')

    while True:
       if input == "quit":
       sys.exit(0)
       input_text = input("> ")
       response = mybot.respond(input_text)
       print(response)

这是我的sample.aiml文件

<aiml version="1.0">
<category>
<pattern>WHY CAN NOT YOU EAT</pattern>
<template>Actually I eat only electricity.</template>
</category>
<category>
<pattern>EACH YEAR IN PRO BASEBALL THE *</pattern>
<template>The Gold Glove.</template>
</category>
<category>
<pattern>hello</pattern>
<template>Hello my friend how are you,i am chefbot</template>
</category>
<category>
<pattern>WHAT IS YOUR NAME</pattern>
<template>My name is chefbot</template>
</category>
<category>
<pattern>YOU CAN DO BETTER</pattern>
<template>Get that cake for me</template>
</category>
</aiml>

它对UpperCase中的模式作出响应,因为它们是在A.L.I.C.E bot中预定义的,但是在我用小写字母定义的模式上打印错误。 提前谢谢..

1 个答案:

答案 0 :(得分:0)

标签之间的所有文字都应为大写

每次修改aiml文件时,都需要重新启动bot

ķ