我使用Chatterbot制作了一个简单的反馈循环程序。以下代码需要一到两分钟的时间来响应自身,并且加载时间相似。我的问题是关于效率 - 为获得chatterbot的响应正常需要一到两分钟?如果不是,我怎样才能提高效率呢?
其他详细信息 - 如果我在聊天机器人创建中未将静音性能警告参数设置为true,则会出现以下错误。
UnsuitableForProductionWarning:JsonFileStorageAdapter不是 建议用于生产环境 self.UnsuitableForProductionWarning
这是我的代码。
from chatterbot import ChatBot
from chatterbot.trainers import ChatterBotCorpusTrainer
chatterbot = ChatBot("Training Example",silence_performance_warning=True,storage_adapter='chatterbot.storage.JsonFileStorageAdapter')
chatterbot.set_trainer(ChatterBotCorpusTrainer)
chatterbot.train(
"chatterbot.corpus.english.greetings",
"chatterbot.corpus.english.conversations"
)
print("Ready")
print("1 : How are you?")
response = "How are you?"
first = False
while True:
response = chatterbot.get_response(str(response))
if first:
print("1 : "+str(response))
first = False
else:
print("2 : "+str(response))
first = True
据我所知,由于机器人响应自身的性质,它最终只能重复输出一条消息。我不担心。
更新 - 问题出在visual studio 2015中。我发现使用标准IDLE运行我的代码会立即返回我预期的输出。
答案 0 :(得分:1)
为您处理的每个请求训练模型都很难。使用单独的脚本来训练和挑选训练有素的模型,然后在您的交互式脚本中加载腌制模型(您向我们展示的模型,减去培训)并使用它来处理响应。