我刚刚开始使用 Chatterbot 聊天机器人,通过简单的语句对其进行训练。它能够准确地回答它接受训练的陈述,它无法理解的简单偏差。我怎样才能让机器人足够聪明,以便从它训练的单词中挑选并最终做出反应?
例如:火车数据:嗨 -> 你好测试数据:嗨!.. 这也应该用你好回应。
除了使用大型语料库训练模型之外,还可以对机器人进行任何配置吗?
下面是示例代码。
import json
from chatterbot import ChatBot
from chatterbot.trainers import ListTrainer
# Create a new instance of a ChatBot
bot = ChatBot(
'Terminal',
storage_adapter='chatterbot.storage.SQLStorageAdapter',
database_uri='sqlite:///database.sqlite3',
logic_adapters=[
{
'import_path': 'chatterbot.logic.BestMatch',
'default_response': 'I am sorry, but I do not understand.',
}
],
)
trainer = ListTrainer(bot)
trainer.train(["Hi", "Hello"])
trainer.train(["Bye", "Bye"])
bot_response = bot.get_response("Hi")
print(1),print(bot_response)
bot_response = bot.get_response("Hi there")
print(2),print(bot_response)
bot_response = bot.get_response("hi!")
print(3),print(bot_response)
此代码仅返回第一个问题的有效答案 Hello 以及它无法回答的接下来的 2 个问题。