哎呀,不錯哦!3步帶你用Python打造一款智能語音聊天小軟件
最近小編與中科院的同學吃飯的時候,偶然講起來他最近的一個項目就是利用語音識別的技術和聊天機器人來實現(xiàn)人機交互,簡而言之就是我們說話,程序識別出來我們講的是什么,然后通過聊天機器人跟我們實現(xiàn)交流。我感到非常的有意思,于是決定簡單實現(xiàn)一下,跟大家一起來學習一下。
01.使用模塊
本次項目主要用到了三個主要的模塊,分別為:
- speech_recognition python函數(shù)庫,其主要的作用是通過麥克風來將我們的錄音保存到指定的文件中;
- 百度語音識別的API接口,其主要作用是將我們的語音進行識別并轉(zhuǎn)換為文字;
- 青云客提供的聊天機器人的API接口,主要作用是與我們進行智能聊天。
有了三個主要模塊的簡短介紹,下面介紹一下程序的設計流程。
首先是利用speech_recognition來進行語音的錄入,程序如下:
上面的程序中,我們首先調(diào)用電腦的麥克風,然后獲取音頻數(shù)據(jù)后,將我們的數(shù)據(jù)保存到根目錄下的recording.wav文件中。運行上述程序后,我們只需要確保我們電腦的麥克風正常工作,就可以實現(xiàn)錄音的功能。但是注意的是該錄音有時間的限制,需要我們盡可能的快速反應,否則就不會錄到大家優(yōu)美的聲音啦。
錄制好我們的音頻數(shù)據(jù)后,接下來就是調(diào)用百度的語音識別API,我們首先要去百度的語音技術開發(fā)平臺下創(chuàng)建一個語音識別的應用。鏈接如下:
https://console.bce.baidu.com/ai/?fromai=1#/ai/speech/app/create
創(chuàng)建好之后,我們會得到對應的AppID、API Key和Secret Key。如下圖所示:
02.進行語音識別
接下來我們按照平臺給出的教程來實現(xiàn)語音識別,并轉(zhuǎn)換為文字返回給我們,程序如下圖所示。
該平臺下不僅僅支持普通話的識別,而且還支持英語,粵語和四川話的識別。小編嘗試了一下英語,效果也非常的不錯。至于粵語和四川話,小編確實是不會,所以就沒有加以嘗試,如果小伙伴有興趣的話,可以自行進行嘗試。
下面的鏈接給出了平臺的python的接口函數(shù),詳細的參數(shù)大家可以進行參閱。
http://ai.baidu.com/docs#/ASR-Online-Python-SDK/top
03.智能聊天
***便是利用智能機器人來進行聊天。為了給大家創(chuàng)造***的,最方便的聊天程序和聊天環(huán)境,小編為大家精心對比了三款在線的聊天機器人。有圖靈機器人、小i機器人和青云客提供的在線機器人接口。其中圖靈機器人的效果應該是最為出色的,但是要花錢包月,而小i機器人的連接也時斷時續(xù),所以小編挑選了青云客提供的在線機器人。效果也非常不錯。該部分的程序如下圖所示。
最終,小編將三個程序塊組合到一起,得到下面的測試結(jié)果。
是不是感覺很神奇,小編我完全不用打字,只需要動動口就可以和機器人進行互動交流,真的非常不錯。此外小編將整個程序?qū)懗闪祟惖男问?,非常方便大家理解和閱讀,大家只需要在dos下運行該程序即可,頗有點黑客帝國的味道哦,大家趕快動手學習吧。