当前位置:首页 » 《随便一记》 » 正文

python实现 AI语音小助手

9 人参与  2024年04月30日 15:30  分类 : 《随便一记》  评论

点击全文阅读


AI语音小助手

介绍

调用通义,百度的API
语音录制与识别:使用PyAudio库录制用户语音,以WAV格式保存至speech.wav文件。随后通过百度语音识别API(AipSpeech)将语音转为文本,支持多种语言(普通话、英文、粤语、四川话)。

软件架构

软件架构说明

该软件采用客户端-服务器架构,具体为客户端负责语音采集、处理与播放,服务器端负责语音识别与文本生成。以下是详细的架构说明:
客户端:

语音录制:客户端通过PyAudio库实现麦克风音频流的实时采集。设置采样率、声道数、采样宽度等参数,持续一定时间(此处为4秒)记录音频数据。

语音文件保存:采集到的音频数据以WAV格式保存至本地文件speech.wav,便于后续传输至服务器进行识别。

语音识别结果处理:客户端接收服务器返回的语音识别结果,将其封装为消息对象(包含角色标识与内容),并传递给call_with_messages函数以生成AI助手的文本回复。

语音播报:使用pygame.mixer库加载并播放由百度语音合成API生成的音频文件(用户语音识别结果和AI助手的回答)。播放完毕后,清理资源并删除临时音频文件。

循环交互:客户端通过while循环等待用户输入,决定是否继续下一轮语音交互。

服务器端:

语音识别:客户端将保存的speech.wav文件上传至百度语音识别服务(通过AipSpeech库接口),指定识别语言参数。服务器返回识别结果,客户端解析并提取文本内容。

文本生成:客户端将用户语音识别结果封装为消息对象,调用dashscope库接口与Qwen Turbo模型交互。模型生成的AI助手回复作为call_with_messages函数的输出。

语音合成:客户端将用户语音识别结果和AI助手的文本回复分别发送至百度语音合成服务,生成对应的MP3格式语音文件。这些文件随后被客户端下载并播放。

通信方式:

客户端与百度服务器:采用HTTP/HTTPS协议进行网络通信,客户端向百度语音识别与语音合成API发送POST请求(携带音频数据或文本信息),接收并解析JSON格式的响应结果。

客户端内部:通过函数调用与数据结构传递(如列表、字典)实现各模块之间的通信。

数据流:

用户语音 → 客户端录制 → WAV文件保存 → 上传至百度语音识别服务 → 文本结果返回客户端。

文本结果 → 包装为消息对象 → 传递给call_with_messages函数 → AI助手回复生成。

用户语音识别结果与AI助手回复 → 分别发送至百度语音合成服务 → MP3文件生成并返回客户端。

MP3文件 → 客户端加载并播放 → 播放完毕后删除临时文件。

总结来说,该软件架构清晰,职责分明,客户端负责用户交互与音频处理,服务器端承担语音识别与文本生成任务,二者通过标准化网络接口高效协作,共同实现多语言语音对话系统功能。

安装教程

放入pycharm运行,依次下载所需软件包

然后,填入自己的通义,百度api。

特技

语音录制与识别:使用PyAudio库录制用户语音,以WAV格式保存至speech.wav文件。随后通过百度语音识别API(AipSpeech)将语音转为文本,支持多种语言(普通话、英文、粤语、四川话)。用户通过输入数字选择识别语言。

AI对话生成:利用dashscope库调用Qwen Turbo模型,根据用户语音识别结果生成AI助手的文本回复。回复内容通过call_with_messages函数获取,该函数处理Dashscope API响应,确保输出小助手的回答。

语音播报:使用百度语音合成API(baidu_text_to_speech函数)将用户语音识别结果和AI助手的回答分别转化为语音。生成的音频文件以MP3格式存储并使用pygame.mixer播放。播放完毕后,临时音频文件立即被删除。

循环交互:程序以循环方式运行,用户输入y时继续下一轮交互。每轮交互包括用户语音录制、识别、AI对话生成及双端语音播报。


下载

我的Gitee地址:https://gitee.com/wqqqqqqqqqqqqqqqqq/tongyi-ai-voice-assistant

git@gitee.com:wqqqqqqqqqqqqqqqqq/tongyi-ai-voice-assistant.git


点击全文阅读


本文链接:http://zhangshiyu.com/post/102446.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 我拒绝给系花捐款后,全系同学悔疯了在线阅读_小说后续在线阅读_无删减免费完结_
  • 我让位给女友的透视眼竹马,他却说如果能重生再也不来了。虐心反转_玉石林若女友推荐_小说后续在线阅读_无删减免费完结_
  • 相国独子的丫鬟砸坏我的玉佩后,我当场拒婚阅读_玉佩陈郡谢氏全新_小说后续在线阅读_无删减免费完结_
  • 手术时,我看着病人惨死最新试读_淼淼陆知衍姜颜全本完结_小说后续在线阅读_无删减免费完结_
  • 男友霸道给我开黑卡,转头却骂我是捞女最新章节_肖年顾客黑卡热文_小说后续在线阅读_无删减免费完结_
  • 他在回忆尽头全集_贺南舟许清梨叶絮完结txt_小说后续在线阅读_无删减免费完结_
  • 旅游结婚那天未婚夫另娶女秘书,我让他们一无所有连载_老公迎宾超长版_小说后续在线阅读_无删减免费完结_
  • 完结文异界修仙我的直播间能打赏核弹列表_完结文异界修仙我的直播间能打赏核弹(江流年沈红菱)
  • 全书浏览陪弟弟混骑行圈,离婚你哭什么?(韩星河柳千雪)_陪弟弟混骑行圈,离婚你哭什么?(韩星河柳千雪)全书结局
  • 老公出轨我助攻虐心反转_秦绍卿卿阿溪后续加长_小说后续在线阅读_无删减免费完结_
  • 替老婆坐牢出狱那天,我被送去斗兽场精校文本_许言沈宇郑子番茄热门_小说后续在线阅读_无删减免费完结_
  • 沐巍澜温溪:结局+番外(爱如一刹花火)电子书畅享阅读无广告

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1