Файлы Aiml не будут загружаться

#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">
  

Решена проблема