是否可以使用 pythons ChatterBot 模块从 sqlite3 数据库文件中提取答案?
Is it possible to pull answers from an sqlite3 database file with pythons ChatterBot module?
是否可以使用现有数据库训练聊天机器人(使用 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
它不会从中提取答案。它忽略它并使用自己的训练数据。
这是可能的,但您需要自己编写 Trainer
class 来读取您的 sqlite 文件的内容,以便可以使用它来训练聊天机器人。
另一种方法是编写一个脚本将您的 sqlite 数据转换为训练语料库格式,以便您可以使用现有方法训练您的机器人。
有关语料库格式的更多信息可在此处找到:
http://chatterbot-corpus.readthedocs.io/en/latest/data.html
是否可以使用现有数据库训练聊天机器人(使用 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
它不会从中提取答案。它忽略它并使用自己的训练数据。
这是可能的,但您需要自己编写 Trainer
class 来读取您的 sqlite 文件的内容,以便可以使用它来训练聊天机器人。
另一种方法是编写一个脚本将您的 sqlite 数据转换为训练语料库格式,以便您可以使用现有方法训练您的机器人。
有关语料库格式的更多信息可在此处找到: http://chatterbot-corpus.readthedocs.io/en/latest/data.html