用python开发中文的会话聊天机器人

时间:2018-07-02 04:37:54

标签: python chatbot wechat chatterbot xiaomi

我想用python开发一个中文的对话式聊天机器人,就像用户说“你好”,意思是中文的“你好”,而聊天机器人会回应。我认为从头开始构建并为chatbot编写每个预期的响应将非常困难。我想找到一个开放源代码库来与我的API连接,从而能够响应用户并与用户进行保护。我已经知道微软开发的名为“小冰”的聊天机器人,该聊天机器人是专门为中国人开发的,但是我不知道他们是否为开发人员提供API。还有一个名为brobot(https://github.com/lizadaly/brobot/的github项目。 ) 但我不知道它是否提供中文支持。来自任何人的任何建议或指导,将不胜感激。

1 个答案:

答案 0 :(得分:1)

看看ChatterBot Python模块。它是独立于语言的。意味着您可以使用任何语言进行培训。 样本片段来训练您的机器人。

from chatterbot import ChatBot
from chatterbot.trainers import ListTrainer

chatbot = ChatBot("bot")    # create an instance of ChatBot and name it.
chatbot.set_trainer(ListTrainer)

data = ["你好",
        "我很高兴认识你"]    # add data for training

chatbot.train(data)        # train the bot

while True:
    try:
        user_input = input("you - ")                 # ask something to bot
        bot_input = chatbot.get_response(user_input)   # get curresponding output from bot
        print("bot - ",bot_input)
    except(KeyboardInterrupt, EOFError, SystemExit):
        break

输出

List Trainer: [####################] 100%
you - 你好
bot -  我很高兴认识你

您可以通过越来越多的对话来训练它。只需将这些对话添加到文本文件中并进行培训即可。 有关训练数据的更多信息,请参阅ChatterBot文档。