摘要:關于這個例子的完整介紹,請參考公眾號汪子熙的兩篇文章與人工智能和增強現(xiàn)實技術結合的又一個創(chuàng)新案例和使用創(chuàng)建具有人工智能的聊天機器人本文介紹如何用代碼同網(wǎng)站上創(chuàng)建好的模型交互。
關于這個例子的完整介紹,請參考公眾號 “汪子熙”的兩篇文章:
SAP C/4HANA與人工智能和增強現(xiàn)實(AR)技術結合的又一個創(chuàng)新案例
和使用Recast.AI創(chuàng)建具有人工智能的聊天機器人:
本文介紹如何用Java代碼同recast.AI網(wǎng)站上創(chuàng)建好的模型交互。
我創(chuàng)建了一個名為get-product-infomation的機器學習模型,用"Add an expression"下面的這么多句子去喂這個模型:
一會測試時,我會用這個句子進行測試 " I am looking for some materials", 所以先記下來。
如果任意輸入一句話,recast.AI識別出來意圖為get-product-infomation, 我希望AI自動返回一些句子,這些句子定義在recast.AI模型的Actions標簽頁下面:
比如這個Actions模型的意思是,從Sure, what type of product are you going to produce?和Cool, what products do you want to produce?里隨機挑選一句返回。
下圖右半部份是recast.AI的測試控制臺。
下面是用Java代碼方式消費這個人工智能模型的例子:
public class RecastAIService { private final static String RECAST_AI_URL = "https://api.recast.ai/build/v1/dialog"; private final static String DEVELOPER_TOKEN = "Token feb6b413a1a8cf8efdd53f48ba1d4"; public Answer dialog(final String content, final String conversationId) throws ClientProtocolException, IOException{ CloseableHttpClient httpClient = HttpClients.createDefault(); HttpPost postRequest = new HttpPost(RECAST_AI_URL); postRequest.addHeader("Authorization", DEVELOPER_TOKEN); postRequest.addHeader("Content-Type", "application/json"); String body = "{"message": {"content":"" + content + "","type":"text"}, "conversation_id": "" + conversationId +""}"; HttpEntity entity = new StringEntity(body); postRequest.setEntity(entity); HttpResponse response = httpClient.execute(postRequest); if(response.getStatusLine().getStatusCode() == 200){ String result = EntityUtils.toString(response.getEntity()); JSONObject resultJsonObj = JSON.parseObject(result); JSONObject results = (JSONObject) resultJsonObj.get("results"); JSONArray messages = results.getJSONArray("messages"); JSONObject nlp = (JSONObject) results.get("nlp"); JSONArray intents = nlp.getJSONArray("intents"); Answer answer = new Answer(); if (null != messages && messages.size() > 0){ JSONObject messageJson = messages.getJSONObject(0); answer.setContent(messageJson.getString("content")); } if (null != intents && intents.size() > 0){ JSONObject intentJson = intents.getJSONObject(0); answer.setIntent(intentJson.getString("slug")); } return answer; } logger.debug("Failed to access recastai. The response code is" + response.getStatusLine().getStatusCode()); return null; }
測試代碼:
傳入I am looking for some materials,recast.AI解析出這個句子的意圖有99%的可能性是get-product-information:
Java代碼返回的句子也確實是recast.AI模型里維護的回復之一:
要獲取更多Jerry的原創(chuàng)文章,請關注公眾號"汪子熙":
文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://www.ezyhdfw.cn/yun/19892.html
摘要:也完美地將不需要應用開發(fā)人員了解的機器學習底層細節(jié)進行了封裝,我們將要做的這個聊天機器人甚至不需要太多的編碼?;氐轿覄?chuàng)建的聊天機器人,目前沒有分配任何。最后,我們可以把這個創(chuàng)建好的聊天機器人進行發(fā)布,讓它可以被其他平臺消費。 很多SAP顧問朋友們對于人工智能/機器學習這個話題非常感興趣,也在不斷思考如何將這種新技術和SAP傳統(tǒng)產品相結合。Jerry之前的微信公眾號文章C4C和微信集成系...
摘要:機器學習在客戶管理場景中的應用使用機器學習進行客戶管理,我們可以得到客戶度全方位的視圖??梢钥吹綑C器學習給為和這兩個產品計算的相關分數(shù)是和。關于機器學習在中的更多應用,請參考幫助文檔。 關于機器學習這個話題,我相信我這個公眾號1500多位關注者里,一定有很多朋友的水平比Jerry高得多。如果您看過我以前兩篇文章,您就會發(fā)現(xiàn),我對機器學習僅僅停留在會使用API的層面上。 使用Java程...
閱讀 2110·2021-10-08 10:04
閱讀 3150·2021-09-22 10:02
閱讀 2396·2019-08-30 15:56
閱讀 884·2019-08-30 15:54
閱讀 989·2019-08-30 15:54
閱讀 1350·2019-08-30 15:53
閱讀 2572·2019-08-30 11:21
閱讀 3616·2019-08-30 10:56