#python-3.x #aiml
#python-3.x #aiml
Вопрос:
Я пытаюсь запустить примерный скрипт чат-бота на Python, который:
import aiml
import os
kernel = aiml.Kernel()
kernel.bootstrap(learnFiles = os.path.abspath("home/pi/watson/std-startup.xml"), commands = "load aiml b")
kernel.saveBrain("bot_brain.brn")
# kernel now ready for use
while True:
message = input("Enter your message to the bot: ")
if message == "quit":
exit()
elif message == "save":
kernel.saveBrain("bot_brain.brn")
else:
bot_response = kernel.respond(message)
print(bot_response)
Стандартный запуск:
aiml version="2.0">
<category>
<!-- Pattern to match in user input -->
<!-- If user enters "load aiml b" -->
<pattern>load aiml b</pattern>
<!-- Template is the response to the pattern -->
<!-- This learn an aiml file -->
<template>
<learn>basic_chat.aiml</learn>
<!-- You can add more aiml files here -->
<!--<learn>more_aiml.aiml</learn>-->
</template>
</category>
</aiml>
Когда я запускаю скрипт, я получаю следующее:
ПРЕДУПРЕЖДЕНИЕ: Не найдено соответствия для ввода: загрузите aiml b и basic_chat.aiml не загружается
Если я запущу этот простой скрипт
import aiml
import os
kernel = aiml.Kernel()
kernel.learn("basic_chat.aiml")
while True:
message = input("Enter your message to the bot: ")
if message == "quit":
exit()
elif message == "save":
kernel.saveBrain("bot_brain.brn")
else:
bot_response = kernel.respond(message)
print(bot_response)
это работает нормально.
Это нормально, но в конечном итоге я хочу добавить еще много файлов aiml в чат-бота, и я думаю, что для этого мне нужен загрузочный файл.
Ответ №1:
Ошибка в моем заголовке AIML при запуске Syandard. Измените на:
<aiml version = "2.0" encoding = "UTF-8">
Решена проблема