今年聊天機器人備受矚目。科技巨頭諸如Facebook和微軟已經大規模發布了Bot框架,旨在量產聊天機器人。 在Facebook Messenger上開發了超過11,000個聊天機器人,并且有近23,000個開發人員注冊了Facebook 機器人引擎
(Facebook Bot Engine)。 此外,大量初創公司擁有自屬開發框架和功能性產品。 較小的交流平臺,如Telegram和Slack,也推出了“機器人商店”(“Bot Stores”),并成立基金吸引開發人員。
什么是Bot框架?
簡單地解釋,Bot框架用來制造機器人并定義其行為。作為聊天機器人開發者,開發和定向如此之多的交流平臺與聊天機器人開發 SDKs常會感到無所適從。Bot開發框架是這樣一種軟件框架,它能對聊天機器人開發過程中的人工內容做抽象化處理。
然而,盡管很多Bot開發框架宣稱“代碼一旦寫好可部署到任何地方”,你還是很可能為你的每一個目標交流平臺開發一個單獨的聊天機器人。Bot開發框架包括機器人制造者 SDK(Bot Builder SDK)、機器人連接器(Bot Connector)、開發者入口(Developer Portal)、機器人目錄(Bot Directory)以及一個用來測試已開發機器人的模擬器。 此外,Bot框架并不適合初學者用來學習聊天機器人開發。
機器人框架與機器人平臺的差別?
Bot框架(Bot Framework)有時錯誤地與Bot平臺(“Bot Platform”)通用。 在開發應用程序時,Bot平臺的作用是提供部署和運行應用程序的,Bot框架的作用是開發和綁定各種組件到應用程序。 Bot平臺是在線生態系統,其中聊天機器人可以被部署并與用戶進行交互,代表用戶執行操作,包括與其他平臺交互。
Bot開發框架是一組預定義函數和開發人員用來加快開發的類,一組可以使你更快更好編碼的工具。 簡單來說,初學者或非技術用戶可以用Bot平臺來開發不需要寫代碼的機器人,而Bot開發框架則被開發人員和碼農借助編程語言從頭開始構建機器人。
例如Bot平臺Motion.ai可使用戶無需編碼便能快速創建強大的機器人。 原因在于Motion.ai提供了一個能創建聊天機器人的工具包,使得機器人可與APIs相連并部署到任何一個可用的交流平臺。
一些著名的Bot框架:
Facebook bot引擎
2016年4月,Facebook實現了基于Wit.ai技術的Facebook Bot引擎。 Wit.ai在自己的云服務器運行,Bot引擎是一個包裝器,用于在Facebook Messenger平臺上部署機器人。 Facebook作為社交巨頭的力量在于海量用戶,因此他們不需要任何其他的Bot開發平臺,并且聊天機器人將僅限于Facebook Messenger(其本身即是一個巨大的空間)。
Facebook正在為Facebook Bot引擎采用一種新策略。如果開發人員獲得框架,Facebook Messenger用戶將享有各種專業聊天機器人
Facebook Bot引擎依賴于機器學習。提供Bot框架示例對話之后,它可以處理同一問題的很多不同變體。隨著開發人員不斷完善聊天機器人,它們的潛力也會越來越巨大。
Wit.ai提供一些選項:
它能提取出一些預定義的實體,比如時間、日期等等。
提取用戶的意圖。
提取情緒。
它可進行自我定義和提取。
微軟Bot框架
微軟幾乎與Facebook同時宣布了其Bot框架。盡管微軟的哲學和方法有點不同。就像Facebook的產品一樣,微軟的SDK可以被看作是2個彼此獨立的組件。
1. Bot連接器,集成框架
2. LUIS.ai,自然語言理解組件
微軟Bot框架的集成組件適用于Slack、Facebook Messenger、Telegram、Webchat、GroupMe、SMS、電子郵件和Skype,令人印象深刻。此外,Azure上有一個PaaS選項,就是用于Bots。
微軟Bot框架是一個全面的產品,用于構建和部署高質量的聊天機器人供用戶享受最喜歡的對話體驗。機器人開發人員都面臨著同樣的問題:機器人需要基本的輸入和輸出;它們必須具備語言和會話能力;機器人必須具有高性能,響應性和可擴展性;并且它們必須能夠向用戶提供理想的對話體驗。 微軟Bot框架提供了我們構建,連接,管理和發布智能聊天機器人所需要的一切,無論是通過文字/SMS,還是其他平臺諸如Slack、Skype、 Facebook Messenger、Kik等,聊天機器人都可以和用戶自然地交流。微軟Bot框架由許多組件組成,包括Bot創建者SDK(Bot Builder SDK)、開發人員門戶(Developer Portal)和Bot目錄(Bot Directory)。
API.ai
API.ai是另一個基于Web的bot開發框架。 API.ai似乎已經發現了讓用戶通過輸入多個話語來定義實體和意圖的缺陷,并因此提供了一個巨大的領域集(a huge set of domains)。API.ai為bot開發提供的一些SDK和庫,包括Android、iOS、Webkit HTML5、JavaScript、Node.js、Python等。
API.ai建立在如下幾個概念上:
代理器:代理器對應于應用。一旦我們訓練并測試一個代理器,我們就可以把它集成到我們的app或設備中去。
實體:實體表示那些通常專用于某一領域的概念,作為將NLP(自然語言處理)短語映射到捕獲其含義的批準短語的方式。
意圖:意圖表示用戶說什么和軟件需要采取什么動作之間的映射。
動作:動作對應于您的應用在用戶的輸入觸發特定的意圖時所采取的步驟。
上下文:上下文是表示用戶表達的當前上下文的字符串。這對于區分可能是不明確的并且因取決于前面的話而具有不同含義的短語是有用的。
API.ai 能被集成在很多流行的交流平臺、物聯網和虛擬個人助理平臺。它們中的一些包括Actions on Google、Slack、Facebook Messenger、Skype、Kik、Line、Telegram、Amazon Alexa、Twilio SMS和Twitter等。
Aspect CXP and Aspect NLU
Aspect客戶體驗平臺(CXP)是設計,實施和部署多渠道客戶服務應用程序的平臺。Aspect NLU是一個給出人類語言感覺的組件,其采用的方法與Wit.ai、API.ai和微軟Bot框架完全不同,并能為Facebook Messenger上的自助服務對話帶來人性化的交談口吻。這使它能夠通過自動化以聊天機器人特有的方式進行擴展。 Aspect CXP使得設計、實現和在多種交流渠道(諸如文本、語音、移動網、社交網絡)部署聊天機器人變得容易起來。這很適合那些需要復雜聊天機器人、客服應用和企業軟件的地方;不太適合對簡單機器人、嵌入式應用和物聯網應用的需求。
這些是市場上可用的、開發人員構建機器人的Bot框架。如果你的組織要花費大量的金錢和時間與客戶交流,你可以嘗試建立一個機器人來處理這種情況。對話用戶界面的時代(The era of Conversational User Interfaces )已經dao lai,成為掌握趨勢的先行者之一吧。
(審核編輯: 林靜)
分享