2017-03-23 34 views
6

我正在構建一項Alexa技能,可以讓Alexa用戶與面向消費者的電子商務網站進行交互。有功能可以調用網站上已存在的代表。現在,我想建立一個語音應用程序作爲一個側面項目,通過對話擴展相同的選項。將需要位置,通話類別等插槽。它基本上是一個應用程序/事務處理機器人。在未來,如果這是成功的,我希望可以在不同的物聯網設備上訪問同一個通用應用程序(如Google Home Assistant等)。因此,我想抽象出語音交互和具有相同(一般)的流程和API進行交互。使用Lex和Alexa的區別

這讓我做不同的技術,如api.ai,wit.ai,萊克斯一些研究,等

但是,因爲這是一個Alexa的應用程序,我已經在一般依靠AWS和Amazon,我想我寧願使用Lex,或者現在只寫一個本地的Alexa應用程序。

我很難理解兩者之間的差異。據我所知,Alexa的使用萊克斯建,我看到他們有同樣的意圖,槽等

類似的概念,但,我要找的兩個服務之間的差異:

  1. 使用會Lex讓我更容易與其他設備集成?或者有什麼好處?

  2. 使用Lex會讓我在設計/修改對話流時有更大的靈活性嗎? Lex似乎更復雜一點,因此可能會允許更多的功能。

  3. 還是隻是說Lex提供了幾乎完全相同的功能,並且只是用於不是Alexa的設備?

  4. Lex是否提供比Alexa更多的分析處理?在Alexa中,我只能看到intents/slots,但如果我能看到Lex中的實際文本,那將是理想的。

回答

0

我最後只寫了一個Alexa技能,然後是一個單獨的Google Action。 Alexa在NLP方式上相當獨立並且截然不同。這意味着我無法寫出一種技巧,在我不幸遇到的時間段內可以使用這兩項技能。

但是,我已經保持了對這一新興技術,最近,我發現這篇文章:https://venturebeat.com/2017/09/07/amazon-gives-developers-more-ways-to-build-alexa-skills/

它基本上是說,一個萊克斯技能現在可以移植到Alexa的。

基於這個最近的變化,我認爲可以將Lex用作Alexa,Google智能助理等的NLP工具。然後,NLP可以在設備之間共享。

如果我今天重新開始這些新的選擇,它可能是我最終做的。

2

在我看來(非常有限的Alexa開發經驗)AWS Lex允許更好地控制機器人對話框。它定義了單獨的驗證和執行代碼鉤子,在UI上啓用插槽的特定提示,支持意圖之間的編程轉換,提供適當的版本控制和別名處理等。所以它看起來更像是一種企業產品,而不是「消費者級」的Alexa技能。

但令人驚訝的是,它缺少一些重要的特徵,例如它沒有內置的「布爾」插槽類型,所以你必須編碼是/否問題。或者根本沒有lex的Cloudwatch日誌。另外,(增長中的)集成列表將使其更通用。

儘管作爲一個龐大的AWS粉絲,但我不得不說,api.ai至少在現在看來似乎是一個更合理更精緻,功能豐富的主張。

關於與其他設備的集成,我不認爲任何這些平臺都能保證這一點。看起來,如果你的目標是谷歌的家,而不是他們的平臺,如果你的目標是Alexa,那麼它就是alexa或api.ai(不知道谷歌是否會在未來推動這一點)。但是,如果您打算與聊天平臺集成或直接集成到網絡應用程序中,那麼我認爲所有主流平臺都可以爲您提供,或在不久的將來。

順便說一句,你檢查過IBM Watson或Microsoft Bot框架(與LUIS)嗎?他們也是非常有能力,完整的框架,不要打折!

3

Alexa技能工具包(ASK)用於培養在Alexa生態系統和設備中使用的技能,並讓開發人員利用所有Alexa功能,如智能家居和Flash簡報API,流式音頻和豐富的GUI體驗。 Amazon Lex機器人支持語音和文本,並可以在移動和消息傳遞平臺上部署。

Lex Faqs

1

有使用外部NLP服務來處理是Alexa在其原生提供原始文本的危險步履蹣跚交互模型。亞馬遜可能不會證明你的技能。這很不幸聽到,但他們的藉口是暴露私人用戶數據的威脅,用戶可能沒有意識到他們正在發送。這是令人厭惡的,因爲要做任何事情都必須避免Alexa的原生NLP系統。我不相信LEX超越了它。你陷入困境。這也許會使Alexa迴歸自然對話的長期。我們一直在隱形模式下準備我們的滑雪板,亞馬遜代表表示我們的方法是「黑客」,發佈時可能無法獲得認證。我還不確定答案是什麼。 Google Home或其他語音平臺是否存在此原始文本問題?謹防。