訊飛AIUI語音助手功能集成 一
訊飛AIUI語音助手功能集成 二
訊飛AIUI語音助手功能集成 三
官方網站
項目中需要用到語音識別和播報功能。看了網上關於智能語音的大廠,由於一直使用訊飛輸入法,感覺不錯,這里選擇訊飛的SDK。
如果是直接到訊飛的開放平台,則會看到提供的服務和語音交互相關的有以下。 語音識別 語音合成 語音分析 和 自然語言處理。
第一次接觸,直接使用的 語音識別和語音合成相關的功能,但缺少了語義的解析。只能機械的使用自己定義的模板來翻譯,效果很不好。
最后查看 AIUI 文檔。AIUI 是訊飛提供的一套成熟的人機交互智能解決方案。創建好應用后可以直接接入現有的技能實現 常見的“天氣播報”,“新聞播放”等,如果自己應用中有特殊的交互處理,可以自定義相關技能來命中識別定義的意圖,來執行相關的命令。
1. 文檔流程
參考 AIUI文檔中心 快速入門 以下只作簡單的記錄,方便日后查詢
打開官網后,選擇頂部應用接入,然后點擊進入應用。如果還沒有應用需要創建自己的應用,按照提示創建即可。
創建完應用后,點擊應用進入。如下圖。
其中左側一列為應用的基本標簽頁,可以點擊看下相關功能。
應用信息
應用信息中的 APPID 是在集成時需要使用的。
應用配置
點開其中的高級設置,如下圖
-
情景模式
情景模式是應用使用的場景。一個應用可能會有 老年人模式,青少年模式等,每個模式中對應的 技能也是不一樣的。這里可以添加任意模式。
在語音交互時,可以通過程序主動切換到對應的模式。比如應用中有對應的切換模式按鈕。
-
識別設置
根據需要選擇需要的,一般 識別結果添加標點 除外 其他全選。
-
識別熱詞
對於應用中有一些特有的詞,可以下載模板,添加進來。如 有的應用可能有自己的組合詞 如 測量類的 血氧 可能會翻譯為 學養 ,家醫 翻譯為 加一 +1 等。把這些容易混淆的詞加入熱詞中,配上權重,會更容易識別。
-
語義理解
其中的關鍵詞過濾,主要是用在喚醒詞的過濾。
語義技能:
這其中設置了 技能的概念。 參考 AIUI文檔中心 技能開發
這里作簡單記錄。
我們需要語音交互讓app去做的任何一件事情都是一個技能。比如 打開 某某,播放 某某。這里以 設計一個 控制播放類的技能為例。
一般我們口語化的說法是,播放人在江湖,我要看藍貓淘氣三千問,播放電視,打開電影,快進十分鍾,快退一分鍾,暫停,播放。
這里我們可以拆分這兩種形式,一種是打開視頻類的,一種是控制視頻類的。
我們把 播放 要看 打開 歸為一個實體類,這個實體類為 open類
我們把 快進 快退 暫停 繼續 關閉 播放 歸為一個實體類,這個實體類為 control類
然后把 open類+名稱 的形式稱為 播放類意圖
把 control類 的形式稱為 控制類意圖。
點擊語義技能中的 自定義技能,添加技能。會跳轉到技能控制台。
其中有 我的技能 我的實體 我的輔助詞 設備人設 我的問答庫。 主要在 我的技能和我的實體。
點擊創建技能
這里取名為 播放控制
創建成功后,跳轉到意圖界面,這里我們創建意圖,暫時不引用官方意圖。
繼續填寫 意圖名稱和標識
完成后,會看到如下界面
主要有這幾個版塊
-
語料
語料簡單的說可以認為 ,一個操作有多少種可能的說法,盡量多的涵蓋。在輸入語料時會匹配到我們設定的實體或者官方的實體。比如我們剛才設置的 控制類實體 {play_control} 只要語料中包括 play_control 中的內容都屬於包含了。可以先看創建實體部分。
實體部分創建完成后。
我們輸入我們的常規語料如 快進十分鍾。
這時會看到 快退已經匹配了我們設置的實體庫中的 play_control 十分鍾匹配的是訊飛自帶的時間實體。
如果我們轉入倒退十分鍾看情況
由於倒退不在實體中,所以只匹配了 十分鍾。
這時我們點擊構建技能。
由於實體 play_control 已經被引用,所以實體中的所有詞條都會匹配。並且語料庫中增加了 倒退十分鍾,所以這里 倒退十分鍾也能被識別,但倒退五分鍾可能就識別不了。
這里可以看到,匹配的實體。
單個實體控制我們需要添加進語料,如 暫停 播放。 只是單純的指令。
這樣我們就能夠單獨的匹配實體了
構建完技能后,選擇左側的發布。就可以在自定義技能中使用該技能了
選擇發布后,點擊構建技能,構建成功后,選擇最下方的發布上線
然后回到 應用配置界面
選擇剛才的 播放控制,然后點擊右上角保存修改
在右側模擬測試中,看下 剛才的 命令是否能夠識別
能夠正常識別 ,說明該技能已經成功
-
實體
點擊左上角我的列表,然后選擇 我的實體 點擊創建實體
點擊進入后,創建詞條,每個詞條可以設置對應的別名,這樣擴展能力更大,返回的json中 默認 normValue為詞條名稱,value為 別名。
創建好后,點擊構建實體
-
輔助詞
可以設置口語中的語氣詞或者其他用到的輔助詞 ,如 你可以來一下嗎,這里的一下 可以作為輔助詞
-
技能回復
需要采集用戶數據的指定問答類型的交互。可能參考 文檔 快速開始中的功能
-
意圖確認
在問答類交互最后槽值填滿后是否會確認一下,正常做法是需要確認操作。