Api.ai開放車載應(yīng)用API,從此車企可以開發(fā)屬于自己的語音交互
一些語音識別技術(shù)供應(yīng)商會為移動(dòng)設(shè)備的第三方開發(fā)者們提供語音識別的API,讓其自行開發(fā)具備語音識別能力的應(yīng)用,比如科大訊飛、百度等。而Speaktoit旗下的開放平臺Api.ai,這次是將API開放到了車載平臺上。具體是個(gè)什么玩法捏?
讓開發(fā)者自行開發(fā)的開放平臺
Speaktoit于五年前在加州成立,提供語音識別服務(wù)。Api.ai是Speaktoit公司的第二款產(chǎn)品,是允許開發(fā)者們自行為智能互聯(lián)設(shè)備開發(fā)語音交互能力的一個(gè)平臺。最近這個(gè)平臺開放了車載應(yīng)用的API,讓汽車制造商、第三方開發(fā)者都能夠借此平臺自行進(jìn)行語音交互能力的開發(fā)與定制,平臺僅提供技術(shù)支持。除了汽車之外,還可以進(jìn)行移動(dòng)設(shè)備、智能手表、智能家居、智能電視以及機(jī)器人的語音交互的開發(fā)。
與其說Api.ai是一個(gè)平臺,倒不如說這是一個(gè)只要注冊了就能使用的開發(fā)工具。開發(fā)者可以按照Api.ai上的流程,對語音交互的應(yīng)用場景、識別內(nèi)容、交互界面等等進(jìn)行定義,Api.ai則會根據(jù)你的定義,給出相關(guān)代碼等,便于開發(fā)者增加到App之中。
Api.ai運(yùn)行在Speaktoit的自然語音處理引擎之上,能夠理解自然語言,進(jìn)行語音識別、聲音識別,并提供語音轉(zhuǎn)文字等服務(wù)。而且,根據(jù)官網(wǎng)介紹,Api.ai使用的是深度學(xué)習(xí)技術(shù),能夠在使用過程中學(xué)習(xí)并提升能力。
與任何操作系統(tǒng)兼容,支持中文
那么,對于車企來說,要使用Api.ai,需要做點(diǎn)什么呢?主要的工作是定義出語音交互的應(yīng)用場景,按照Api.ai的規(guī)則,是定義出每個(gè)場景的Entity、Intent以及Context。
所謂Entity,指的是能夠描述出這一應(yīng)用場景的特定短語。比如說你要知道天氣,Entity就可以是城市,便于程序進(jìn)行定位并獲取天氣信息,而想聽歌,Entity則可以是音樂的流派,或者是歌手的名字,便于程序進(jìn)行查找。
如何定義Entity
以天氣為例,在選擇城市作為Entity之后,接下來的工作就是輸出城市名字所對應(yīng)的語音指令。比如紐約,可以是New York,也可以是NY,或者Big Apple。
現(xiàn)在的Api.ai上對應(yīng)一個(gè)應(yīng)用場景,只允許一個(gè)Entity作為識別對象,不過未來會開放多個(gè)Entity識別功能。開發(fā)者可以使用平臺已經(jīng)定義好的Entity,也可以自行定義。
Intent可以理解為對交互過程的定義,在這里,開發(fā)者需要定義用戶如何表達(dá)才能被程序識別、識別之后要做什么。
如何定義Intent
如上圖所示,User says是程序能夠識別的語音指令,這里給出的案例是詢問天氣,Action則是程序識別之后給出的回應(yīng),根據(jù)獲取的城市返回天氣信息。
而User says的內(nèi)容可以說是一個(gè)語音交互中最為重要的部分,俺們都知道,好的語音識別能力是讓用戶使用自然語音,而并非條碼式指令。所以,這里涵蓋的表達(dá)方式越多,最后的用戶體驗(yàn)效果自然會越好。
Api.ai提供在網(wǎng)頁上直接輸入的方式來增加,也允許開發(fā)者直接提交JSON、XML和CSV樣式。
至于最后一個(gè)Context,則是對Intent中用戶所下發(fā)的指令定義一個(gè)語義環(huán)境。同樣的語音指令,尤其是越簡單的,可以被理解的意思就越多。要如何確保識別出呢?Api.ai就是通過Context來定義Intent。
這樣,當(dāng)用戶指令與某個(gè)Intent中所設(shè)定的內(nèi)容相符合的時(shí)候,程序會讀取Intent對應(yīng)的Context,然后在之后的五分鐘之內(nèi),或者是之后的五項(xiàng)語音指令,都會是在這一Context下的內(nèi)容。假設(shè)定義的Context是音樂,那么在開啟音樂之后,五分鐘或五個(gè)指令之內(nèi),所相關(guān)的語音指令都會與 “音樂”所對應(yīng)的Intent下去對應(yīng),然后再執(zhí)行相關(guān)命令。也就是開始播放音樂之后,如果你又不想聽了,發(fā)出關(guān)閉的指令,那么關(guān)閉的也會是音樂,而不會是導(dǎo)航。
雖然每一個(gè)Context對應(yīng)的時(shí)間是五分鐘或者五個(gè)語音指令,但是當(dāng)新的指令發(fā)出時(shí),系統(tǒng)識別后會自動(dòng)更新時(shí)間和指令次數(shù)。
以上關(guān)于Entity、Intent以及Context的定義都是在一個(gè)特定的Agent下完成,Api.ai上面的Agent相當(dāng)于一個(gè)App。
所以,我們知道,在Api.ai平臺之上,汽車制造商或者車載系統(tǒng)的開發(fā)者所需要完成的是對語音交互的應(yīng)用場景和使用邏輯進(jìn)行完整的定義,以便于程序能夠更好地理解用戶發(fā)出的指令并做出反應(yīng)。
據(jù)Api.ai上介紹,這套平臺屬于中立平臺,能夠兼容任一操作系統(tǒng)。對應(yīng)車載應(yīng)用,目前已經(jīng)開放的場景包括車載第三方應(yīng)用、地圖、導(dǎo)航、興趣點(diǎn)推薦、聊天、社交、智能家居、天氣、瀏覽網(wǎng)絡(luò)、查詢信息、時(shí)間&日期、預(yù)定等功能。
現(xiàn)在一些車載系統(tǒng)語音交互功能的強(qiáng)大是依靠云端的語音識別,不過Api.ai提供了云端、本地以及嵌入式三種不同方案來進(jìn)行部署。本地與嵌入式兩種方式不需要連接網(wǎng)絡(luò),也不需要向云端發(fā)送數(shù)據(jù),相較于云端方案來說更為安全。
不過,最難得的還是在Api.ai的支持語音列表上,明晃晃地寫著支持中文。
目前Api.ai上,非商用應(yīng)用、免費(fèi)項(xiàng)目與開源項(xiàng)目可以免費(fèi)使用,如果是商業(yè)應(yīng)用,有兩種交費(fèi)方式:按照一條指令0.0003美元(相當(dāng)于不到0.002元人民幣),或者是與Api.ai進(jìn)行商業(yè)分成。
車云小結(jié)
這種提供技術(shù)支持讓汽車制造商可以自行開發(fā)應(yīng)用的方式想必會受“保守”的車企所歡迎。畢竟俺們都知道,汽車制造商對蘋果、谷歌大開方便之門是迫于形勢,并不代表他們愿意被制掣。君不見,奧迪、豐田、福特都開始采取措施應(yīng)對了么?