Я пытаюсь пакет PyAiml написать чатбот. Я написал очень базовую программу со всеми этими файлами цели по умолчанию от A.L.I.C.E. Пока все работает нормально, кроме <, что тег >. Я думал, что это проблема сеанса. Затем я исправил сеанс. Но до сих пор не повезло с <, что > тег для контекстной беседы. Кто-нибудь знает, как заставить его работать? Или у PyAiml есть некоторая ошибка с <, что > разбор тегов?pyaiml не отвечает на <that> тег
Вот моя программа бот и оченьминимальная AIML файл я тестирую с:
testbot.py
import aiml
import marshal
import os
from pprint import pprint
BOOTSTRAP_FILE = "/var/www/html/chatbot/std-startup.xml"
BOT_SESSION_PATH = "/var/www/html/chatbot/"
sess_id = 'user_id_moshfiqur'
while True:
k = aiml.Kernel()
k.bootstrap(learnFiles=BOOTSTRAP_FILE, commands="load aiml b")
if os.path.isfile(BOT_SESSION_PATH + sess_id + ".ses"):
sessionFile = file(BOT_SESSION_PATH + sess_id + ".ses", "rb")
sessionData = marshal.load(sessionFile)
sessionFile.close()
for pred, value in sessionData.items():
k.setPredicate(pred, value, sess_id)
response = k.respond(raw_input(">> "), sessionID=sess_id)
sessionData = k.getSessionData(sess_id)
pprint(sessionData)
sessionFile = file(BOT_SESSION_PATH + sess_id + ".ses", "wb")
marshal.dump(sessionData, sessionFile)
sessionFile.close()
pprint("<< " + response)
minimal.aiml
<aiml version="1.0.1" encoding="UTF-8">
<category>
<pattern>TEST1</pattern>
<template>testing one</template>
</category>
<category>
<pattern>TEST2</pattern>
<that>testing one</that>
<template>Success</template>
</category>
</aiml>
Честно ваш ответ выглядит сложным для меня :) Но это, наверное, потому что я не имеют такого большого опыта с прицелом. Я постараюсь понять ваш ответ. Что касается моего оригинального решения, как вы сказали, у цели нет проблем, то знаете ли вы, почему он не работает? Как вы сделали свою работу? Используя это решение? – sparrow