Python3,10行代码,训练聊天机器人,咱也能让机器人说多国语言。
【摘要】 这下可知道如何训练机器人了。
1、引言
小云:鱼哥,你还欠我点东西。
小鱼:额… 我还欠南北呢我。
小云:你确定不欠啊。
小鱼:这还有确定, 这是必须 一定,以及肯定。
小云:我提醒你一下, 聊天机器人。
小鱼:聊天机器人咋了。
小云:… 训练聊天机器人。
小鱼:那你就训练啊,
小云:… 我只说了吧,还记得这篇《Python3, 33行代码搞了一个聊天机器人, 这下再也不怕没人说话了。》
小鱼:记得啊, 前两天发布的内容。
小云:那你说,下一篇会安排 训练聊天机器人内容
小鱼:昂…就这啊。
小云:对啊,就这。
小鱼:分分钟的事。
小云:鱼哥,你这是…
小鱼:搞啊。
2、代码实战
2.1 安装
因为聊天机器人使用的是chatterbot库, 所以,我们就要安装。
pip install chatterbot
其余安装方式,可以参照这两篇:
- 《Python3,选择Python自动安装第三方库,从此跟pip说拜拜!!》
- 《Python3:我低调的只用一行代码,就导入Python所有库!》
2.2 ChatterBot介绍
定义:
- ChatterBot库是一个基于Python的聊天机器人库,
- 可以用于创建自然语言处理机器人;
常用方法:
- ChatBot:创建聊天机器人的类。
- Train:用于训练聊天机器人的方法。
- get_response:用于获取聊天机器人的回答的方法。
- Corpus:用于加载和训练聊天机器人的语料库。
2.3 实战
代码示例
# -*- coding:utf-8 -*-
# @Time : 2023-08-20
# @Author : Carl_DJ
'''
实现功能:
训练聊天机器人。
'''
from chatterbot import ChatBot
from chatterbot.trainers import ChatterBotCorpusTrainer
# 创建聊天机器人
bot = ChatBot('MyBot')
# 创建一个基于语料库的训练器
trainer = ChatterBotCorpusTrainer(bot)
# 使用英文语料库进行训练
trainer.train('chatterbot.corpus.english')
# 使用中文语料库进行训练
trainer.train('chatterbot.corpus.chinese')
# 在命令行中与机器人进行聊天
while True:
try:
user_input = input()
response = bot.get_response(user_input)
print(response)
# 如果输入“退出”,则结束聊天
except (KeyboardInterrupt, EOFError, SystemExit):
break
解析:
- 首先创建 chatbot对象,命名为 Mybot
- 其次,使用 ChatterBotCorpusTrainer 训练机器人
- 使用 chatterbot.corpus.english语料库进行训练, 包含:中文,英文,也可以使用我自己训练数据
- 最后,通过循环,不断接收用户的输入,并使用bot.get_response()方法获取机器人的回复,然后将其打印出来。
3、总结
看到这里,今天的分享差不多就该结束了。
今天主要进行的是一个简单的demo分享, 并没有添加更多的交互逻辑和功能。
后期, 小鱼会针对这部分,进行交互逻辑和功能的完善。
我是小鱼:
- CSDN 博客专家;
- 阿里云 专家博主;
- 51CTO博客专家;
- 51认证讲师等;
- 认证金牌面试官;
- 职场面试及培训规划师;
- 多个国内主流技术社区的认证专家博主;
- 多款主流产品(阿里云等)测评一、二等奖获得者;
关注我,带你学习更多更专业更前言的Python技术。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)