1.登陸百度AI的官網
1.注冊:沒有賬號注冊 2.創建應用

3.創建應用

4.查看應用的ID

5.Python代碼
from aip import AipSpeech APP_ID = "appid " API_KEY="**********" SECRET_KEY="**************" client = AipSpeech(APP_ID,API_KEY,SECRET_KEY)
6.語音識別
# 語音識別 def speech_sb(file_path_name): os.system(f'ffmpeg -y -i {file_path_name}.m4a -acodec pcm_s16le -f s16le -ac 1 -ar 16000 {file_path_name}.pcm') with open(f'{file_path_name}.pcm', 'rb') as fp: return fp.read()
## 調用語音識別
ret = client.asr(speech_sb('123'), 'pcm', 16000, {
'dev_pid': 1536,
})
7.語音合成
#語音合成 def speech_hc(title,text):
# title是生成文件的標題,text是喲啊合成的文本 result = client.synthesis(text) if not isinstance(result, dict): with open(f'{title}.mp3', 'wb') as f: f.write(result) return else: return result
8.自然語言處理加圖靈機器人
# 自然語音的處理 def my_npl(text,id):
#傳入要對比的文本,id主要用於圖靈機器人, print(nlp_client.simnet(text,"你叫什么名字").get('score')) if nlp_client.simnet(text,"你叫什么名字").get('score')>=0.7: ret_name = "我是Sopython,Sopython就是我" return ret_name else: ret_tj = tuling(text,id) if isinstance(ret, dict): ret_tj = ret_tj.get("results")[0].get("values").get('text') print(ret_tj) return ret_tj
#{'corpus_no': '6672231296183866724', 'err_msg': 'success.', 'err_no': 0, 'result': ['叫什么名字'], 'sn': '90391695291553499907'}
ret = my_npl(ret.get('result'),132) # 調用完語音識別之后,獲取到識別的結果傳入自然語言處理,id=132
# 如果自定義的自然語言處理成功的話,那么就返回自定的結果,否則的話調用圖靈機器人來回答問題
# 最后返回處理的結果,
9.圖靈機器人
1.注冊圖靈機器人 2.創建機器人

3.Python代碼
# 調用圖靈的機器人 def tuling(text, id): data = { "perception": { "inputText": { "text": f"{text}" } }, "userInfo": { "apiKey": "a1f6dbf66978411c9127585f7779cd04", "userId": f"{id}" } } res = requests.post("http://openapi.tuling123.com/openapi/api/v2", json=data) # print(res.content) res_json = res.json() return res_json
#返回圖靈機器人自己的答案
想了解更多關於百度AI信息:http://ai.baidu.com
想了解更多關於圖靈機器人信息:http://www.tuling123.com