0

我刚刚开始使用 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 个问题。

4

1 回答 1

0

你的意思是答案是默认的?如果是,您可能应该设置一个阈值。没有阈值,您无法指定何时获取默认值。

于 2019-04-17T00:09:35.747 回答