基于Python+百度语音的智能语音ChatGPT聊天机器人(机器学习+深度学习+语义识别)含全部工程源码 适合个人二次开发

   日期:2024-12-26    作者:longlixinye 移动:http://ljhr2012.riyuangf.com/mobile/quote/44216.html


基于Python+百度语音的智能语音ChatGPT聊天机器人(机器学习+深度学习+语义识别)含全部工程源码 适合个人二次开发


目录

  • 前言
  • 总体设计
  • 系统整体结构图
  • 系统流程图
  • 运行环境
  • Python 环境
  • Pycharm 环境
  • ChatterBot 环境
  • 模块实现
  • 1. 模型构建
  • 2. 服务器端
  • 3. 客户端
  • 4. 语音录入
  • 5. 接口调用
  • 6.模型训练及保存
  • 系统测试
  • 1. 模型效果
  • 2. 模型应用
  • 源代码下载地址
  • 其它资料下载


本项目基于机器学习和语义识别技术,让机器人理解文本并进行合适的答复。伙伴们可以通过该工程源码,进行个人二次开发,比如使用语音与机器人交流,实现智能问答、智能音箱及智能机器宠物等等。

当然针对现在最火爆的ChatGPT等通用大语言模型,伙伴们可以直接将其应用在模块实现第6部分,其它详细的接口使用操作,大家可以关注我博客的其它关于ChatGPT接口使用的说明。

本部分包括系统整体结构图和系统流程图。

系统整体结构如图所示。

系统流程如图所示。

本部分包括 Python 环境、Pycharm 环境和 ChatterBot 环境。

需要 Python 3.6 及以上配置,进入 python 官方网站:www.python.org,选择自己所需版本号,单击 DownLoad,添加环境变量。

PyCharm 是 一 款 功 能 强 大 的 Python 编辑器,具有跨平台性 , 下 载 地 址 :
http://www.jetbrains.com/pycharm/download/#section=windowsPyCharm ,把 pycharm和 python解释器进行连接。

基于 chatterbot 0.8.7 开发,打开 cmd 进入 python 所在的磁盘,输入:

等待安装即可。

本项目包括 6 个模块:模型构建、服务器端、客户端、语音录入、接口调用、模型训练
及保存,下面分别给出各模块的功能介绍及相关代码。

进入百度云官网:https://ai.baidu.com/,进入我的控制台,打开百度语音进入语音应用
管理界面,创建一个新的应用,如图所示。

记录 APPID、API Key 和 Secret Key 三个值。

请求方式和参数网址:https://cloud.baidu.com/doc/SPEECH/s/Qk38y8lrl

通过调用百度语音 API 实现相应的转换功能,在百度云应用管理中心可以看到记录,即为调用成功。

此模块主要处理用户的登录校验,房间的人员消息处理,通过 config.py 中配置的列表PORT 生成几个不同房间,相关代码如下:

在开启客户端前,运行服务器端,CommandHandler 类拆解 client 客户端发送信息中的命令,并绑定函数。通过 config.py 中配置列表 PORT = range(1, 3)生成两个房间,地址分别是 127.0.0.1:1 和 127.0.0.1:2,如图所示。

该模块提供登录窗口、聊天窗口以及各种响应事件,相关代码如下:

1)登录窗口设计

设计登录窗口的 GUI 界面,添加包括标题、地址栏、用户信息栏和登录退出按钮的几个控件并绑定登录、退出等各种事件。

2)聊天窗口设计
设计聊天窗口的 GUI 界面,添加包括当前用户显示、信息输入框、语音输入按钮、发送和关闭按钮等各种控件并绑定发送消息、输入消息等事件。

该模块提供录音功能并将文件保存在本地, Recorder 的采样率与百度语音转文字的采样率相同,相关代码如下:

语音录入时,控制面板输出如图所示。

此时在相应路径中可以看到录制成功的语音文件,格式为.Wav,如图所示。

该模块调用 chatbot 返回文本信息、百度 API 语音识别、百度 API 转文本为语音,相关代码如下:

该模块主要训练 chatbot 机器人,保存在本地 sqlite 数据库,提供两种语料训练方法。如果使用ChatGPT的话,可以将此步省略,直接使用其API接口

1) 语句训练
直接写训练语句,也可开启通过聊天时的语句自动,相关代码如下:

2) 语料库训练
通过自定义语料库训练。
安装chatbot后默认提供的中文语料格式E:Python36Libsitepackageschatterbot_corpusdataChinese。参照格式,写入自己的语料文件。

本部分包括模型效果和模型应用。

将所需语料库数据带入模型进行训练,如图所示。

训练结果如图所示。

本部分包括程序运行、应用使用说明和程序功能实现。

1) 程序运行

  • rainChat.py 训练本地 chatbot 机器人(每次更新训练内容,运行一次即可);如果使用ChatGPT的话,可以将此步省略,直接使用其API接口
  • server.py 开启服务器;
  • client.py 运行客户端,每次运行都可登陆一个用户。

2) 应用使用说明

运行程序后,用户初始登录界面如图所示。界面从上至下,两个文本框:一个输入服务地址,一个输入用户名;两个按钮:一个用于登录,一个用于项目退出。

用户输入服务地址和登录后进入聊天界面。主体为聊天展示框,底部从左到右分别有语音输入按钮、文字输入文本框、发送按钮和聊天室关闭按钮,如图所示。

3) 程序功能实现

(1)在聊天框输入“机器人”可以呼叫语音助手,输入“用户聊天”退出语音机器人模式,如图所示。

(2)长按“语音”按钮录入语音与机器人进行对话,如图所示。

(3)退出机器人聊天模式还可实现多人聊天,如图所示。

基于Python+百度语音的智能语音ChatGPT聊天机器人(机器学习+深度学习+语义识别)含全部工程源码

如果大家想继续了解人工智能相关学习路线和知识体系,欢迎大家翻阅我的另外一篇博客《重磅 | 完备的人工智能AI 学习——基础知识学习路线,所有资料免关注免套路直接网盘下载》
这篇博客参考了Github知名开源平台,AI技术平台以及相关领域专家:Datawhale,ApacheCN,AI有道和黄海广博士等约有近100G相关资料,希望能帮助到所有小伙伴们。



特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


举报收藏 0评论 0
0相关评论
相关最新动态
推荐最新动态
点击排行
{
网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号