国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

使用Recast.AI創(chuàng)建具有人工智能的聊天機器人

gitmilk / 2835人閱讀

摘要:也完美地將不需要應(yīng)用開發(fā)人員了解的機器學(xué)習(xí)底層細(xì)節(jié)進(jìn)行了封裝,我們將要做的這個聊天機器人甚至不需要太多的編碼。回到我創(chuàng)建的聊天機器人,目前沒有分配任何。最后,我們可以把這個創(chuàng)建好的聊天機器人進(jìn)行發(fā)布,讓它可以被其他平臺消費。

很多SAP顧問朋友們對于人工智能/機器學(xué)習(xí)這個話題非常感興趣,也在不斷思考如何將這種新技術(shù)和SAP傳統(tǒng)產(chǎn)品相結(jié)合。Jerry之前的微信公眾號文章C4C和微信集成系列教程曾經(jīng)介紹了Partner如何利用SAP Cloud for Customer內(nèi)置的社交媒體集成框架,做一些簡單的開發(fā)將微信集成到C4C中去。該系列教程里其中一篇文章,介紹了如何將圖靈機器人集成到某個微信公眾號的消息服務(wù)器上去,讓該微信公眾號可以“智能地”同其關(guān)注粉絲聊天。

這個圖靈機器人的圖靈服務(wù)通過Restful API的方式暴露出來,所有和機器學(xué)習(xí)相關(guān)的細(xì)節(jié)都被www.tuling123.com封裝成黑盒子,應(yīng)用開發(fā)人員只管消費。這是第三方的人工智能解決方案。

2018年1月,SAP收購了一家法國的人工智能提供商,Recast.AI, 從此SAP也有了自己的人工智能解決方案。

現(xiàn)在,訪問https://recast.ai, 能看到一行醒目的提示:Recast.AI is now part of SAP。那么Recast.AI提供了怎樣的功能呢?最好的入門辦法,莫過于自己動手做一個Hello World例子出來。跟著Jerry一塊做一個吧。

我們的目的同本文開頭截圖展示的一致:開發(fā)一個在微信里使用的聊天機器人,不同之處在于這次我們使用SAP Recast.AI作為人工智能解決方案。

絕大多數(shù)SAP顧問朋友們關(guān)注的是如何利用人工智能基于SAP傳統(tǒng)產(chǎn)品做創(chuàng)新,給客戶帶來價值,而不是花大量時間精力去學(xué)習(xí)機器學(xué)習(xí)底層需要的那些艱深的數(shù)學(xué)知識。Recast.AI也完美地將不需要應(yīng)用開發(fā)人員了解的機器學(xué)習(xí)底層細(xì)節(jié)進(jìn)行了封裝,我們將要做的這個聊天機器人甚至不需要太多的編碼。

我們在Recast.AI網(wǎng)站上在線創(chuàng)建聊天機器人。一般網(wǎng)站首次登陸都需要先創(chuàng)建用戶,而Recast.AI除了常規(guī)用戶注冊方式外,還貼心地提供了使用Github賬號直接登錄的選擇,對于每天混Github的程序員來說,這太方便了。

點擊按鈕允許Recast.AI訪問您Github賬號的公有信息后,能看到這個歡迎界面:

點"START WITH A TEMPLATE"基于現(xiàn)成的模板創(chuàng)建一個機器人:

和我們在Fiori UI里進(jìn)行業(yè)務(wù)模型創(chuàng)建類似,首先維護(hù)機器人的ID和描述信息:

創(chuàng)建成功后,來到如下的機器人明細(xì)頁面,一共包含5個標(biāo)簽。本文只會用到Train, Build和Connect這三個標(biāo)簽。

Train標(biāo)簽下沒有任何內(nèi)容,只有一個提示:You have no intents.

什么是intent呢?在Android開發(fā)里也有intent的概念,intent是一個將要執(zhí)行的動作的抽象描述。Android框架根據(jù)此intent的描述,負(fù)責(zé)找到將要執(zhí)行動作對應(yīng)的組件,再把包含了附加參數(shù)的intent傳遞給決定出的負(fù)責(zé)組件。而在Recast.AI里的intent同樣是一個抽象概念。通俗地解釋,intent是一系列句子的集合,這些句子雖然從文字上來說表達(dá)方式各異,然而傳遞的是同一個意思。

比如下列三句話其實是在同一個問題:

你是一個程序員么?

你每天的工作是編寫代碼么?

你每天使用集成開發(fā)環(huán)境或者命令行進(jìn)行單步調(diào)試么?

我們可以把這三個句子歸為同一個intent,姑且命名為"程序員"。假設(shè)當(dāng)用戶又發(fā)送了一個新的文本到您的聊天機器人去:“你是靠編寫代碼維生么?” Recast.AI封裝好的算法會解析這個文本,將其和"程序員"intent里的語句進(jìn)行比較,如果判斷出來這個新的文本和intent中的某一句表達(dá)的意思非常接近,那么我們就能說這個新文本的intention(意圖)是"程序員"。此時,就可以讓機器人回復(fù)預(yù)先準(zhǔn)備好的回答,比如“是的,我是程序員,我很喜歡寫代碼”。

上面的描述實際上已經(jīng)涵蓋了本文聊天機器人創(chuàng)建完畢后,需要執(zhí)行哪些后續(xù)步驟。

回到我創(chuàng)建的聊天機器人,目前沒有分配任何intent。

那么我就點Create按鈕創(chuàng)建一個。當(dāng)然也可以點Search按鈕,從Recast社區(qū)上搜索一個別人創(chuàng)建好的intent。

現(xiàn)在新建的這個programmer intent還沒有任何語句,現(xiàn)在我們就來給它“喂”一些句子,這個動作稱為"Train(訓(xùn)練)"。輸入一個句子"Are you a programmer?",回車:

Recast.AI會自動將這個句子進(jìn)行分詞,并且識別出一個代詞(Pronoun) - You, 一個數(shù)量詞(Number) - a, 和一個工作描述(Job) - programmer。

我們再多喂幾個句子給這個intent:

Are you coding with Java or ABAP or JavaScript or C# or C++ or Python or Ruby?

Are you using Integrated Development Environment or Command Line to debug?

is Programming your daily work?

什么時候可以結(jié)束訓(xùn)練呢?首先給intent喂的句子越多,那么它分析新的語句的意圖(intention)是否和程序員相關(guān)的準(zhǔn)確度就越高。現(xiàn)在我們可以對這個intent進(jìn)行測試。點擊Train標(biāo)簽頁右上角的Test鏈接,會看到下圖的測試窗口。現(xiàn)在我給這個intent發(fā)送一條文本:

Are you working with Java every day?

Recast.AI將這個句子同我創(chuàng)建的"programmer" intent里的句子進(jìn)行比較,最后判斷出,這句話有99%的可能性屬于該intent(下圖字段confidence: 0.99)。

那么我們就結(jié)束訓(xùn)練,進(jìn)入下一個"Build"步驟。這個步驟負(fù)責(zé)定義當(dāng)您的聊天機器人成功識別到了您的輸入是在討論程序員后,應(yīng)該執(zhí)行何種動作。Recast.AI把機器人這種成功識別出文本的intention后執(zhí)行某種動作的能力,稱為skill。在Build標(biāo)簽頁點擊Create skill:

我給新建的skill取名:chat_with_programmer

給這個skill定義Triggers,意思是滿足何種條件會觸發(fā)這個skill?在Triggers標(biāo)簽頁下面使用Recast.AI預(yù)置的一些公式進(jìn)行條件定義。

下圖if@programmer,意思就是:如果聊天機器人計算出用戶發(fā)送的文本是屬于"programmer"這個intent:

Actions就是在這種條件下應(yīng)該執(zhí)行的具體動作。

這里我定義的Actions就是簡單地推送一些文本(SEND MESSAGE)給用戶。

準(zhǔn)備一些文本,機器人會從中間隨機地選取一條推送給用戶。

Yes, and I am learning Scala in my spare time.

Yes, I have been programming for 20 years.

Yes, I am a programmer, I love programming!

點擊Build標(biāo)簽頁的"CHAT WITH YOUR BOT"進(jìn)行測試。隨便輸入一句和程序員相關(guān)的話,比如"Are you working with Java?" 在測試頁面,看到了機器人自動給我推送了一個回復(fù),同時顯示了我之前創(chuàng)建的"chat_with_programmer" skill已經(jīng)被觸發(fā)(triggered)了。這意味著Build標(biāo)簽頁里的配置也已經(jīng)完成。

最后,我們可以把這個創(chuàng)建好的聊天機器人進(jìn)行發(fā)布,讓它可以被其他平臺消費。這里我選擇的是Webchat渠道,意思是在一個網(wǎng)頁內(nèi)嵌入這個聊天機器人的對話窗口。

點擊Connect標(biāo)簽頁,選擇Webchat:

可以對嵌入的聊天機器人的會話窗口的某些屬性進(jìn)行定制化,比如窗口標(biāo)題,用戶和機器人的圖片定制等。

點擊SAVE CHANGES,會生成一段包含Script標(biāo)簽的HTML代碼。直接拷貝到某個網(wǎng)頁里,就能使用了。

比如您可以把這個網(wǎng)頁作為HTML5應(yīng)用部署到SAP云平臺上,得到一個URL,然后把這個URL綁定到微信公眾號的某個自定義菜單上。當(dāng)用戶點擊了這個微信菜單后,就會在微信里打開聊天機器人的會話窗口。

具體步驟在我的博客里有介紹:

Wechat development series 5 – embedded your UI5 application to Wechat app

https://blogs.sap.com/2017/12...

下圖是我的聊天機器人在微信里工作的效果圖。

本文這個例子的完整步驟在SAP Recast.AI的官網(wǎng)上也有記載,不過是全英文的。大家有興趣可以動手做一做。感謝閱讀。

https://recast.ai/blog/build-...

要獲取更多Jerry的原創(chuàng)技術(shù)文章,請關(guān)注公眾號"汪子熙"或者掃描下面二維碼:

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/19822.html

相關(guān)文章

  • SAP人工智能服務(wù)Recast.AI一個簡單例子

    摘要:關(guān)于這個例子的完整介紹,請參考公眾號汪子熙的兩篇文章與人工智能和增強現(xiàn)實技術(shù)結(jié)合的又一個創(chuàng)新案例和使用創(chuàng)建具有人工智能的聊天機器人本文介紹如何用代碼同網(wǎng)站上創(chuàng)建好的模型交互。 關(guān)于這個例子的完整介紹,請參考公眾號 汪子熙的兩篇文章: showImg(https://segmentfault.com/img/remote/1460000017901513); SAP C/4HANA與人工...

    shiweifu 評論0 收藏0
  • 機器學(xué)習(xí)在SAP Cloud for Customer中應(yīng)用

    摘要:機器學(xué)習(xí)在客戶管理場景中的應(yīng)用使用機器學(xué)習(xí)進(jìn)行客戶管理,我們可以得到客戶度全方位的視圖。可以看到機器學(xué)習(xí)給為和這兩個產(chǎn)品計算的相關(guān)分?jǐn)?shù)是和。關(guān)于機器學(xué)習(xí)在中的更多應(yīng)用,請參考幫助文檔。 關(guān)于機器學(xué)習(xí)這個話題,我相信我這個公眾號1500多位關(guān)注者里,一定有很多朋友的水平比Jerry高得多。如果您看過我以前兩篇文章,您就會發(fā)現(xiàn),我對機器學(xué)習(xí)僅僅停留在會使用API的層面上。 使用Java程...

    Jeff 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<