树莓派做一个聊天机器人
首先来安装所需要的第三方库:
pip3 install baidu-aip
为了播放音频,还需要安装播放器:
sudo apt-get install omxplayersudo apt-get -y install mpg321
然后来看第一步,录音,通过麦克风录入音频,文件保存在当前目录下,一个函数解决:
def Sound_Recording(path) :# 1.录音,通过麦克风录入音领,文件保存在当前目录下。print("Recording: ")os.system('sudo arecord -D "plughw:1,0" -f S16_LE -r 16000 -d 4' + path)# time.sleep(2)# print("play:" )# os.system( 'sudo omxplayer +path)
其次来看第二步,通过调用百度语音识别的的API将音频文件转换为文本文件,这里需要在百度开发者平台申请一个应用:
APP_ID = '16****18'
API_KEY = 'MBb******************U02'
SECRET_KEY = 'WEGcGnz******************0ih51bN'
client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)def speech_recognition(path) :# 2.通过调用百度语音识别的API将音频文件转换为文本文件。with open(path, 'rb') as fp :voices = fp.read()try :result = client.asr(voices, 'wav', 16000, {'dev_pid' : 1537.})# print(result )result_text = result["result"][0]print("you said: " + result_text)return result_textexcept KeyError :print("KeyError")
然后是第三步,将文本文件通过图灵机器人的API进行对话处理,保存回复文本文件,这里同样需要在图灵机器人平台申请一个聊天机器人:
turing_api_key = 'fad1ed7e**************1b14206fd0'
api_url = 'http://openapi.tuling123.com/openapi/api/v2'
headers = {'Content-Type':'application/json;charset=UTF-8'}def Tu_Ling(text_words=""):
#3.将文本文件通过图灵机器人的API进行对话处理,保存恢复文本文件,req={"reqType":0,"perception": {"inputText": {"text": text_words},"selfInfo": {"location": {"city": "天津","province":"天津","street": "天津科技大学"}}},"userInfo": {"apiKey": turing_api_key,"userId": "Alex"}}req["perception"]["inputText"]["text"] = text_wordsresponse = requests.request("post",api_url, json=req, headers=headers)response_dict = json.loads(response.text)result = response_dict ["results"][0]["values"]["text"]print("AI Robot said: "+ result)return result
最后一步,将回复文本文件转换为语音。:
def speech_synthesis(text_words=""):
#4.将回复文本文件转换为语音。result = client.synthesis(text_words, 'zh', 1, {'per':4, 'vol':10, 'pit':9, 'spd':5})if not isinstance(result, dict):with open('auido.mp3','wb') as f:f.write(result)os. system('mpg321 auido.mp3')
树莓派做一个聊天机器人相关推荐
- python制作聊天机器人原理_用 Python 来做一个聊天机器人吧!(一)
在我的一个回答里,我提到了用 Python 搭建聊天机器人.从今天开始,我就带着大家从0开始搭建一个聊天机器人. (顺便说一句,我喜欢把链接像上面这样加在文字里,如果找不到文中所说的资源,可以看看周围 ...
- 来做一个聊天机器人吧[1]
来做一个聊天机器人吧[1] 前言 准备 GUI开发 聊天模块1.0版本 语音合成1.0版本 版本1.0 前言 课程设计自己选了这个课题,因为之前就对NLP(Natural Language Proce ...
- C/S架构网络聊天软件——Java Chat Application 用java做一个聊天机器人
Fighting! 一.C/S概念 1.1 什么是C/S 1.2 C/S与B/S的区别 二.主页面 三.介绍 四.特征 五.jServer 六.jMessenger 七.使用代码 7.1 导入项目后报 ...
- python第三方聊天机器人_用 Python 来做一个聊天机器人吧!(特别篇)
何去何从? 原计划第三篇要写机器学习的内容,然而文章还没写完,酷Q没了. 可是,真的没有办法了吗? 我们相信冬天总会过去,不过,在春天到来之前,生一丛篝火取暖,也算是聊胜于无吧. 这篇文章,我将介绍如 ...
- python制作聊天机器人_如何制作一个聊天机器人?
这样,我们岂安科技的斜杠青年用1100字教你做一个聊天机器人出来吧.关键词Zulip.Python.以下,GO~ ------- Zulip是什么 Zulip是移动和桌面办公聊天解决方案开发商 一个强 ...
- 机器学习做自动聊天机器人_我和一个治疗机器人聊天,缓解了我对Covid的恐惧。 这很奇怪。
机器学习做自动聊天机器人 重点 (Top highlight) On a hot afternoon in June, I downloaded a free mental health app ca ...
- 当你对一个聊天机器人敞开了心扉
▼ 点击上方蓝字 关注网易智能 聚焦AI,读懂下一个大时代! [网易智能讯 2月2日消息]几个月前,凯特·普客给她的朋友Jasper发了一条信息,内容与她的同事有关.普客19岁,在她的家乡华盛顿州斯波 ...
- 如何设计一个聊天机器人?谈谈聊天机器人技术栈
如果你正在为一个客户设计一个聊天机器人(咨询,开发,原型设计--),这段对话可能听起来很熟悉: 客户:「实现我的机器人最佳技术的是什么?」 我:「不仅仅是一项技术,而是一系列的多种技术.每项技术都可以 ...
- 机器学习做自动聊天机器人_您不应该使用聊天机器人的3个原因
机器学习做自动聊天机器人 现在,基于云的聊天机器人几乎是旧技术. 他们已经有四年了. 和接待肯定是混合的 . 上周,几家合作机构的研究人员公布了正式的书面内容,称为``第二次对话智能挑战赛'',这是聊 ...
最新文章
- ansible yml语法
- cad常用字体_2300多种CAD字体免费送给你!绘图必备,一键解决你的CAD文字乱码问题...
- 字典树模板+洛谷P2580 于是他错误的点名开始了
- jdk1.8对synchronized锁的优化
- 小米发布2021年第二季度财报:小米手机二季度平均售价1116.7元
- 又一国产新机定价逆天!网友:千万不要作...
- ajax鼠标滚动请求 或 手机往下拉请求
- Android开发学习——基础学习
- XCode SDK接入时提示: UIApplicationInvalidInterfaceOrientation
- 《面向对象分析与设计》一1.4面向对象方法的主要优点
- 分享一组我在ins上收集的程序员最爱桌面壁纸
- 国际计算机网络信息与安全管理,计算机信息网络国际联网单位安全管理制度
- git 出现错误fatal: Unable to create ‘project_path/.git/index.lock‘: File exists.
- gym101964 G.Matrix Queries(思维+线段树)
- Ubuntu中文件颜色的含义
- 【转】 bio 与块设备驱动
- docker安全之容器资源控制 安全加固
- 和快手大牛的技术面谈,附超全教程文档
- Python中的字符串驻留机制
- 华为硬件工程师手册_漫画解读—华为最强科普:什么是DSP?
热门文章
- 基本数据类型(列表,元祖,字典,集合)
- STM32 ADC 采样 频率的确定
- 数据库 Linux下的MySQL数据库管理
- object-c编程tips-timer
- Web 四种常见的POST提交数据方式
- Computer Network Homework3’ s hard question
- libevent(1)
- MvvmLight学习心得三
- linux之cp/scp命令+scp命令详解
- load方法引入本地html报错,分享基于plus.downloader的图片懒加载功能,支持本地缓存v1.1.0...