是否可以使用pythons ChatterBot模块从sqlite3数据库文件中提取答案?

时间:2018-04-05 01:31:08

标签: python-3.x chatterbot

是否可以使用现有数据库训练聊天机器人(使用ChatterBot)?

我有一个相对较大的sqlite3 db文件,其中包含大约3GB的会话。如果完全可以从该数据库中提取答案而不是将其转换为json,然后创建我自己的语料库,我希望这样做。

当我按照他们的教程说。

from chatterbot import ChatBot

bot = ChatBot( "Terminal",
    storage_adapter="chatterbot.storage.SQLStorageAdapter",
    logic_adapters=[
    "chatterbot.logic.MathematicalEvaluation",
    "chatterbot.logic.TimeLogicAdapter",
    "chatterbot.logic.BestMatch"
    ],
    input_adapter="chatterbot.input.TerminalAdapter",
    output_adapter="chatterbot.output.TerminalAdapter",
    database="database.db"
   )

print("Type something to begin...")

while True:
    try:
        bot_input = bot.get_response(None)


    except (KeyboardInterrupt, EOFError, SystemExit):
        break

它没有从中得出答案。它忽略它并使用自己的训练数据。

1 个答案:

答案 0 :(得分:2)

这是可能的,但您需要编写自己的Trainer类来阅读您的sqlite文件的内容,以便可以使用它训练聊天机器人。

另一种方法是编写脚本将sqlite数据转换为训练语料库格式,以便您可以使用现有方法训练您的机器人。

有关语料库格式的更多信息,请访问: http://chatterbot-corpus.readthedocs.io/en/latest/data.html