最近和中科院同学吃饭的时候无意中提到他最近的一个项目是用语音识别技术和聊天机器人实现人机交互,简单来说就是我们说话,程序识别出我们在说什么,然后通过聊天机器人与我们交流。觉得很有意思,所以决定简单的实现一下,和大家一起学习。01.使用模块本项目主要使用了三个主要模块,分别是:speech_recognitionpython函数库,其主要功能是将我们的录音通过麦克风保存到指定的文件;百度语音识别API接口,主要功能是识别我们的语音并将其转换为文字;青云客提供的聊天机器人API接口,主要用于与我们进行智能聊天。简单介绍了三个主要模块,下面描述一下程序设计流程。首先是使用speech_recognition来录制语音,程序如下:在上面的程序中,我们首先调用电脑的麦克风,然后在获取到音频数据之后,将我们的数据保存到根目录下的recording.wav文件中目录。运行上面的程序后,我们只要保证自己电脑的麦克风工作正常,就可以实现录音的功能了。但注意录音是有时间限制的,我们需要尽快回复,否则无法录下大家的好声音。录制完我们的音频数据之后,下一步就是调用百度的语音识别API。我们首先需要在百度语音技术开发平台下创建一个语音识别应用。链接如下:https://console.bce.baidu.com/ai/?fromai=1#/ai/speech/app/create创建完成后,我们会得到对应的AppID、APIKey和SecretKey。如下图所示:02.进行语音识别接下来我们将根据平台给的教程进行语音识别,并将其转化为文本返回给我们。程序如下图所示。平台不仅支持普通话识别,还支持英语、粤语、四川话的识别。小编试了英文,效果很好。至于广东话和四川话,我实在是不会,所以就没试了。如果你有兴趣,你可以自己尝试一下。下面链接给出了平台的python接口函数,详细参数可以参考。http://ai.baidu.com/docs#/ASR-Online-Python-SDK/top03。智能聊天***是使用智能机器人聊天。为了给大家打造最好最方便的聊天程序和聊天环境,小编为大家仔细对比了三款在线聊天机器人。有图灵机器人、小i机器人、青云客提供的在线机器人接口。其中图灵机器人的效果应该是最突出的,但是需要几个月的时间,小i机器人的连接也是断断续续的,所以小编选择了青云客提供的在线机器人。效果也很好。这部分程序如下图所示。最后,小编将三个程序块组合在一起,得到如下测试结果。是不是觉得很神奇?完全不需要打字,只需要用嘴巴就可以和机器人互动,真的很不错。另外,小编把整个程序写成了类的形式,非常方便大家理解和阅读。您只需要在DOS下运行该程序。
