首页 > 解决方案 > 用python开发中文会话聊天机器人

问题描述

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

标签: pythonchatbotwechatchatterbotxiaomi

解决方案


看看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 文档。


推荐阅读