Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Chatbot Development - Using DialogFlow

Ryan Chung
November 08, 2017

Chatbot Development - Using DialogFlow

Ryan Chung

November 08, 2017

Transcript

256 slides
  1. 人工智慧語意分析工具應用 [email protected] 實作範例 • 天氣機器人 –語意確認 –資料查詢 –五日查詢 • 電影機器人

    –文法規則 –電影資料庫 –查詢比對 2 • 電商機器人 –自建資料 –自訂型態 –圖文卡片 • 電燈開關 –資料更新 –網頁模擬 –物聯網概念
  2. 人工智慧語意分析工具應用 [email protected] 問題 • 如何讓機器人聽得懂人話? – 特定指令 – 日常生活會說的句子 明天下午三點

    到北車集合 4月22日15:00在 台北火車站碰面 明天下午三點整在 北平西路3號會合 哈摟!我看明天我們 就在台北車站碰面好 了,下午三點,要記 得哦 ㄟ,還記得明天的約 會嗎?是下午三點, 在火車站,別遲到! 提醒你一下,三點在 北車碰頭,不見不散 ! 3
  3. 人工智慧語意分析工具應用 [email protected] 語意分析常見名詞 • Intent 意圖 – 使用者對談的目的 • Entity

    關鍵資訊 – 達成目的的必要輸入資訊 • Utterance 例句 – 使用者常用的句型 9
  4. 人工智慧語意分析工具應用 [email protected] 啟動webhook • 在DialogFlow中,進入WeatherBot專案 • 點擊左邊Intents,然後進入「Get Weather Status」Intent •

    最下方Fulfillment右方箭頭展開 – Enable Fulfillment • 打開開關 Enable webhook call for this intent • 右上角 Save 33
  5. 人工智慧語意分析工具應用 [email protected] 安裝Node.js • 選擇穩定版 (Recommend For Most Users) –

    Windows Installer:下載msi檔 – macOS Installer:下載pkg檔 • 如何確認安裝? – 打開終端機,輸入:node -v https://nodejs.org/en/ 35
  6. 人工智慧語意分析工具應用 [email protected] 安裝Ngrok • 建議放置位置 – Windows:主要使用者資料夾 – Mac:應用程式 •

    設定為在哪裡都可以執行 – Windows:進階系統設定 -> 環境變數 -> 系統變數 -> Path -> 編輯 -> 新增 – Mac:ln -s /Applications/ngrok ngrok https://ngrok.com/download 36
  7. 人工智慧語意分析工具應用 [email protected] 設定Open Weather Map API Key • 新增config資料夾 •

    在config資料夾中新增檔案:default.json Your API Key here 40 專案內檔案
  8. 人工智慧語意分析工具應用 [email protected] 專案初始化 • 在VS Code中,按下 Ctrl + ~ 開啟終端機

    • 輸入npm init • 按下多次enter,使用預設值建立package.json 安裝需要的套件 • 在VS Code中,按下 Ctrl + ~ 開啟終端機 • 安裝能夠一次安裝需求模組的套件 – 在終端機輸入npm install npm-install-all -g • 針對特定檔案中的需求來安裝套件 – 在終端機輸入npm-install-all index.js 41
  9. 人工智慧語意分析工具應用 [email protected] 執行並開啟除錯模式 • 點擊VS Code中左邊選單中的第四個(偵錯) • 上方Play按鈕右邊下拉新增設定... 選Node.js •

    再一次,新增設定,選擇「{ } Node.js 透過NPM 啟動」 • 按下Play按鈕 • 下方偵錯主控台確認伺服器是否已啟動 43
  10. 人工智慧語意分析工具應用 [email protected] 部署至Heroku • 註冊帳號 • 右上角 New -> Create

    new app • 設定App name:weather-bot-XXYYZZ • 區域:美國 • Create App https://www.heroku.com/ 49
  11. 人工智慧語意分析工具應用 [email protected] Deploy using Heroku Git • 使用Heroku Git (Use

    Heroku CLI) • 下載與安裝 Heroku CLI • 終端機 heroku login cd my-project-dic git init heroku git:remote –a YourProjectNameHere https://devcenter.heroku.com/articles/heroku-command-line 是你在Heroku中的專案名稱哦! 通常長得像 oo-bot-xxyyzz 切換到專案資料夾路徑下,若已經在裡面則可忽略此步驟 50
  12. 人工智慧語意分析工具應用 [email protected] 開始部署上傳(每次更新步驟亦同) • git add . • git commit

    –am "make it better" • git push heroku master • heroku restart 雙引號這邊像是你的上傳筆記 在這裡寫上這次更新的內容 之後code更新時再加這一步 第一次不用 51
  13. 人工智慧語意分析工具應用 [email protected] Create new channel • 輸入 App icon、name、description •

    選擇 Developer Trial • 設定 Category、Subcategory • 輸入 Email address • Confirm 58
  14. 人工智慧語意分析工具應用 [email protected] 取得相關資訊 • 進入新建立的Channel -> Channel settings • 拿到Channel

    ID、Channel secret 貼至DialogFlow • Issue to get Channel access token 也貼過去 • 在DialogFlow那邊先按Start • 回到Line Console,Use webhooks Enabled • 把Webhook URL從DialogFlow那邊貼過來 • 把Auto-reply messages、Greeting messages Disabled 59
  15. 人工智慧語意分析工具應用 [email protected] 常見問題 • Webhook沒有啟動 – Channel settings – 或是從Line@Manager檢查(https://admin-official.line.me)

    • Heroku沒有啟動 – heroku ps:scale web=1 • Webhook URL搞錯 – 貼到Line的Webhook URL是從Dialogflow產生的,不是 Heroku的網址 61
  16. 人工智慧語意分析工具應用 [email protected] 五日預測會拿到什麼? • list – 陣列 – 所有預測資料 •

    main.temp – 氣溫 • weather[0].description – 天氣描述 • dt_txt – 日期時間 64
  17. 人工智慧語意分析工具應用 [email protected] fulfillmentMessages - card https://dialogflow.com/docs/fulfillment#response "fulfillmentMessages": [ { "card":

    { "title": "card title", "subtitle": "card text", "imageUri": "https://assistant.google.com/static/images/molecule/Molecule-Formation-stop.png", "buttons": [ { "text": "button text", "postback": "https://assistant.google.com/" } ] } } ] 71
  18. 人工智慧語意分析工具應用 [email protected] Lab : 回傳一個文字、一個影像 74 • Text • Image

    https://dialogflow.com/docs/reference/v1-v2-migration-guide-fulfillment#fulfillment_messages_reference • Quick Reply
  19. 人工智慧語意分析工具應用 [email protected] MovieBot 架構 • 語意分析 + 聊天機器人+ 電影資料庫 +

    部署上線 FulFillment • 設定回應 The Movie DB • 電影資料 DialogFlow 意圖:查詢電影簡介 資料:電影名稱 API Line 78
  20. 人工智慧語意分析工具應用 [email protected] DialogFlow Recap • 建立Agent – 名稱:MovieBot – 語言:zh-TW

    • 建立Intent – 名稱:Get Movie Intro • 輸入例句 – ❞我想要查電影簡介 – ❞我想知道教父的劇情 • 把教父反白,選擇 @sys.any,設定變數名稱為MovieName 95
  21. 人工智慧語意分析工具應用 [email protected] 啟動webhook • 在DialogFlow中,進入MovieBot專案 • 點擊左邊Intents,然後進入「Get Movie Intro」Intent •

    最下方Fulfillment,點擊 Enable Fulfillment • 打開 Enable webhook call for this intent • 右上方點擊Save 98
  22. 人工智慧語意分析工具應用 [email protected] 開發前準備事項 • 安裝 VS Code – https://code.visualstudio.com/ •

    安裝 Node – https://nodejs.org/en/download/ • 安裝 Ngrok – https://ngrok.com/download 100
  23. 人工智慧語意分析工具應用 [email protected] 安裝Node.js • 選擇穩定版 (Recommend For Most Users) –

    Windows Installer:下載msi檔 – macOS Installer:下載pkg檔 • 如何確認安裝? – 打開終端機,輸入:node -v https://nodejs.org/en/ 101
  24. 人工智慧語意分析工具應用 [email protected] 安裝Ngrok • 建議放置位置 – Windows:主要使用者資料夾 – Mac:應用程式 •

    設定為在哪裡都可以執行 – Windows:我的電腦 -> 右鍵 -> 內容 -> 進階系統設定 -> 環境變數 -> 系統變數 -> Path -> 編輯 -> 新增 – Mac:ln -s /Applications/ngrok ngrok https://ngrok.com/download 102
  25. 人工智慧語意分析工具應用 [email protected] TheMovieDB.org • 註冊帳號、填寫相關資料 • 點擊個人頭像 -> 帳戶設定 •

    左邊清單點擊API • Request an API Key • 複製API Key(v3 auth)至上一頁 https://www.themoviedb.org/account/signup 108
  26. 人工智慧語意分析工具應用 [email protected] 專案初始化 • 在VS Code中,按下 Ctrl + ~ 開啟終端機

    • 輸入npm init • 按下多次enter,使用預設值建立package.json 安裝需要的套件 • 在VS Code中,按下 Ctrl + ~ 開啟終端機 • 安裝能夠一次安裝需求模組的套件 – 在終端機輸入npm install npm-install-all -g – 需要管理者權限(Mac加sudo) • 針對特定檔案中的需求來安裝套件 – 在終端機輸入npm-install-all index.js 110
  27. 人工智慧語意分析工具應用 [email protected] Create new channel • 輸入 App icon、name、description •

    選擇 Free Plan • 設定 Category、Subcategory • 輸入 Email address • Confirm 118
  28. 人工智慧語意分析工具應用 [email protected] 取得相關資訊 • 進入新建立的Channel -> Channel settings • 拿到Channel

    ID、Channel secret 貼至DialogFlow • Issue to get Channel access token 也貼過去 • 在DialogFlow那邊先按Start • 回到Line Console,Use webhooks Enabled • 把Webhook URL從DialogFlow那邊貼過來 • 把Auto-reply messages、Greeting messages Disabled 119
  29. 人工智慧語意分析工具應用 [email protected] 部署至Heroku • 註冊帳號 • 右上角 New -> Create

    new app • 設定App name:movie-bot-XXYYZZ • 區域:美國 • Create App https://www.heroku.com/ 123
  30. 人工智慧語意分析工具應用 [email protected] Deploy using Heroku Git • 使用Heroku Git (Use

    Heroku CLI) • 下載與安裝 Heroku CLI • 終端機 heroku login cd my-project-dic git init heroku git:remote –a YourProjectNameHere https://devcenter.heroku.com/articles/heroku-command-line 是你在Heroku中的專案名稱哦! 通常長得像 oo-bot-xxyyzz 切換到專案資料夾路徑下,若已經在裡面則可忽略此步驟 124
  31. 人工智慧語意分析工具應用 [email protected] 開始部署上傳(每次更新步驟亦同) • git add . • git commit

    –am "make it better" • git push heroku master • heroku restart 雙引號這邊像是你的上傳筆記 在這裡寫上這次更新的內容 之後code更新時再加這一步 第一次不用 125
  32. 人工智慧語意分析工具應用 [email protected] Recap • Dialogflow – 語意分析、前端整合 • TheMovieDB API

    – 資料來源 • Ngrok – 暫時讓本機變成Server • Heroku – 雲端主機服務 • 電影其他資訊查詢 – 評分、演員、年代... • 電影時刻查詢 – 各地電影院時刻資料 • 多媒體 – 電影預告、電影配樂 • 電影推薦 – 測驗、查詢記錄... Extra 130
  33. 人工智慧語意分析工具應用 [email protected] Chatbot Development Get Your Own Data Source: https://alivetek.com

    透過對話介面,經營電商小舖的老闆 可以讓消費者依據分類查詢商品,並 瀏覽熱門商品! 132
  34. 人工智慧語意分析工具應用 [email protected] 電商機器人開發 1.0 • 目標 – 輸入:查詢類別 – 回傳:該類別的商品資訊

    • 介面 – Line • 工具/技術 – DialogFlow – Node.JS • 資料 – 自建資料,放置於Google Sheets 134
  35. 人工智慧語意分析工具應用 [email protected] 商品瀏覽服務架構 • 語意分析 + 聊天機器人+ 資料庫 + 部署上線

    FulFillment • 設定回應 Google Drive • 資料儲存 DialogFlow 意圖:商品瀏覽 資料:商品類別 SheetDB Line 136
  36. 人工智慧語意分析工具應用 [email protected] 開發流程 • 安裝所需工具以及準備好商品資料 – Google Account, Heroku Account,

    Heroku CLI • 分析使用者輸入,確定目的 – Google Dialogflow Natural Language Processing • 依據目的,取得使用者所需資料 – Fulfillment Programming • 將撰寫好的程式碼利用Ngrok暫時上線 – Using Ngrok to turn your NB to Server • 在Line中實際測試 – Integrate to Line 137
  37. 人工智慧語意分析工具應用 [email protected] 開發流程 • 安裝所需工具以及準備好商品資料 – Google Account, Heroku Account,

    Heroku CLI • 分析使用者輸入,確定目的 – Google Dialogflow Natural Language Processing • 依據目的,取得使用者所需資料 – Fulfillment Programming • 將撰寫好的程式碼利用Ngrok暫時上線 – Using Ngrok to turn your NB to Server • 在Line中實際測試 – Integrate to Line 138
  38. 人工智慧語意分析工具應用 [email protected] Dialogflow – 建立新的Agent • 輸入Agent名稱 – ECbotXXYY •

    設定預設語言 – Chinese(Traditional) – zh-tw • 設定時區 – (GMT+8:00) Asia/Hong_Kong • 按下右上方CREATE按鈕 https://console.dialogflow.com/api-client/#/newAgent 140
  39. 人工智慧語意分析工具應用 [email protected] Dialogflow – 建立新的Intent • Intents -> CREATE INTENT

    – 輸入Intent名稱為:CheckProductsByCategory • Training phrases 輸入常見例句 – ADD TRAINING PHRASES 141
  40. 人工智慧語意分析工具應用 [email protected] Dialogflow – 建立新的Entity • Entities -> CREATE ENTITY

    – 輸入Entity名稱為:CategoryType • 輸入分類名稱以及同義字 142
  41. 人工智慧語意分析工具應用 [email protected] 開發流程 • 安裝所需工具以及準備好商品資料 – Google Account, Heroku Account,

    Heroku CLI • 分析使用者輸入,確定目的 – Google Dialogflow Natural Language Processing • 依據目的,取得使用者所需資料 – Fulfillment Programming • 將撰寫好的程式碼利用Ngrok暫時上線 – Using Ngrok to turn your NB to Server • 在Line中實際測試 – Integrate to Line 151
  42. 人工智慧語意分析工具應用 [email protected] 開發前準備事項 • 安裝 VS Code – https://code.visualstudio.com/ •

    安裝 Node – https://nodejs.org/en/download/ • 安裝 Ngrok – https://ngrok.com/download 152
  43. 人工智慧語意分析工具應用 [email protected] 安裝Node.js • 選擇穩定版 (Recommend For Most Users) –

    Windows Installer:下載msi檔 – macOS Installer:下載pkg檔 • 如何確認安裝? – 打開終端機,輸入:node -v https://nodejs.org/en/ 153
  44. 人工智慧語意分析工具應用 [email protected] 安裝Ngrok • 建議放置位置 – Windows:主要使用者資料夾 – Mac:應用程式 •

    設定為在哪裡都可以執行 – Windows:我的電腦 -> 右鍵 -> 內容 -> 進階系統設定 -> 環境變數 -> 系統變數 -> Path -> 編輯 -> 新增 – Mac:ln -s /Applications/ngrok ngrok https://ngrok.com/download 154
  45. 人工智慧語意分析工具應用 [email protected] 建立開發專案 • 專案資料夾:ECBot • 主要程式:index.js • 終端機指令(在VS Code中,按下

    Ctrl + ~ 開啟終端機) npm init • package.json 在scripts中增加 "start":"node index.js", "debug":"node --inspect index.js" https://github.com/ryan403/ECbot 156
  46. 人工智慧語意分析工具應用 [email protected] 套件安裝 • 在VS Code中,按下 Ctrl + ~ 開啟終端機

    • 安裝能夠一次安裝需求模組的套件 – 在終端機輸入npm install npm-install-all -g – 需要管理者權限(Mac加sudo) • 針對特定檔案中的需求來安裝套件 – 在終端機輸入npm-install-all index.js 161
  47. 人工智慧語意分析工具應用 [email protected] 開發流程 • 安裝所需工具以及準備好商品資料 – Google Account, Heroku Account,

    Heroku CLI • 分析使用者輸入,確定目的 – Google Dialogflow Natural Language Processing • 依據目的,取得使用者所需資料 – Fulfillment Programming • 將撰寫好的程式碼利用Ngrok暫時上線 – Using Ngrok to turn your NB to Server • 在Line中實際測試 – Integrate to Line 162
  48. 人工智慧語意分析工具應用 [email protected] 開發流程 • 安裝所需工具以及準備好商品資料 – Google Account, Heroku Account,

    Heroku CLI • 分析使用者輸入,確定目的 – Google Dialogflow Natural Language Processing • 依據目的,取得使用者所需資料 – Fulfillment Programming • 將撰寫好的程式碼利用Ngrok暫時上線 – Using Ngrok to turn your NB to Server • 在Line中實際測試 – Integrate to Line 167
  49. 人工智慧語意分析工具應用 [email protected] Create new channel • 輸入 App icon、name、description •

    選擇 Free Plan • 設定 Category、Subcategory • 輸入 Email address • Confirm 170
  50. 人工智慧語意分析工具應用 [email protected] 取得相關資訊 • 進入新建立的Channel -> Channel settings • 拿到Channel

    ID、Channel secret 貼至DialogFlow • Issue to get Channel access token 也貼過去 • 在DialogFlow那邊先按Start • 回到Line Console,Use webhooks Enabled • 把Webhook URL從DialogFlow那邊貼過來 • 把Auto-reply messages、Greeting messages Disabled 171
  51. 人工智慧語意分析工具應用 [email protected] 部署至Heroku • 註冊帳號 • 右上角 New -> Create

    new app • 設定App name:ec-bot-XXYYZZ • 區域:美國 • Create App https://www.heroku.com/ 175
  52. 人工智慧語意分析工具應用 [email protected] Deploy using Heroku Git • 使用Heroku Git (Use

    Heroku CLI) • 下載與安裝 Heroku CLI • 終端機 heroku login cd my-project-dic git init heroku git:remote –a YourProjectNameHere https://devcenter.heroku.com/articles/heroku-command-line 是你在Heroku中的專案名稱哦! 通常長得像 ec-bot-xxyyzz 176
  53. 人工智慧語意分析工具應用 [email protected] 開始部署上傳(每次更新步驟亦同) • git add . • git commit

    –am "make it better" • git push heroku master • heroku restart 雙引號這邊像是你的上傳筆記 在這裡寫上這次更新的內容 之後code更新時再加這一步 第一次不用 177
  54. 人工智慧語意分析工具應用 [email protected] 建立應用程式 • 取完名字後,設定Messenger • 選擇粉絲專頁產生存取權杖 • 貼回DialogFlow •

    設定Verify Token:任意字串均可 • 複製Callback URL,回到FB應用程式 • 設定Webhooks回呼網址、驗證權杖(Verify Token) • 勾選messages, messaging_postbacks • 設定應用程式訂閱對應的粉絲專頁 https://developers.facebook.com/ 185
  55. 人工智慧語意分析工具應用 [email protected] FB應用程式 • 新增測試人員 – 左邊面板 -> 角色 ->

    角色 -> 測試人員 – 回到粉絲專頁傳送訊息進行測試 • 正式上線 – 應用程式 -> 應用程式審查 -> 開始提交 187
  56. 人工智慧語意分析工具應用 [email protected] Smart Control Your Devices 狀態:開 / 關 Connect

    近端 遠端 查看門鎖狀態 發送虛擬鑰匙 遠端解鎖 查詢記錄 191
  57. 人工智慧語意分析工具應用 [email protected] 電燈開發模擬實作 我想要 開燈 Dialogflow 語意分析 電燈狀態 通關密語 Webhook

    Host at Heroku 通關密語確認 設定電燈狀態 Google Sheets Web Page 顯示電燈狀態 SheetDB 193
  58. 人工智慧語意分析工具應用 [email protected] 課前可準備事項 • 申請Google帳號(有Gmail亦可) • 申請Heroku帳號 https://signup.heroku.com/login • 安裝Heroku

    CLI指令列工具 – Windows 64-bit • https://cli-assets.heroku.com/heroku-x64.exe – Mac • https://cli-assets.heroku.com/heroku.pkg 194
  59. 人工智慧語意分析工具應用 [email protected] 開發流程 • 安裝所需工具以及準備好設備名稱與狀態資料 – Google Account, Heroku Account,

    Heroku CLI • 分析使用者輸入,確定目的 – Google Dialogflow Natural Language Processing • 依據目的,取得要更新的狀態以及密碼 – Fulfillment Programming • 將撰寫好的程式碼部署上線 – Push your code to Heroku • 在Web/Line/FB中實際測試 – Integrate to Messenger 196
  60. 人工智慧語意分析工具應用 [email protected] 開發流程 • 安裝所需工具以及準備好設備名稱與狀態資料 – Google Account, Heroku Account,

    Heroku CLI • 分析使用者輸入,確定目的 – Google Dialogflow Natural Language Processing • 依據目的,取得要更新的狀態以及密碼 – Fulfillment Programming • 將撰寫好的程式碼部署上線 – Push your code to Heroku • 在Web/Line/FB中實際測試 – Integrate to Messenger 197
  61. 人工智慧語意分析工具應用 [email protected] Dialogflow – 建立新的Agent • 輸入Agent名稱 – SmartHomeXXYY •

    設定預設語言 – Chinese(Traditional) – zh-tw • 設定時區 – (GMT+8:00) Asia/Hong_Kong • 按下右上方CREATE按鈕 199 https://console.dialogflow.com/api-client/#/newAgent
  62. 人工智慧語意分析工具應用 [email protected] Dialogflow – 建立新的Intent • Intents -> CREATE INTENT

    – 輸入Intent名稱為:LightSwitch • Training phrases 輸入常見例句 – ADD TRAINING PHRASES 200
  63. 人工智慧語意分析工具應用 [email protected] Dialogflow – 建立新的Entity • Entities -> CREATE ENTITY

    – 輸入Entity名稱為:LightStatus • 輸入分類名稱以及同義字 201
  64. 人工智慧語意分析工具應用 [email protected] 開發流程 • 安裝所需工具以及準備好設備名稱與狀態資料 – Google Account, Heroku Account,

    Heroku CLI • 分析使用者輸入,確定目的 – Google Dialogflow Natural Language Processing • 依據目的,取得要更新的狀態以及密碼 – Fulfillment Programming • 將撰寫好的程式碼部署上線 – Push your code to Heroku • 在Web/Line/FB中實際測試 – Integrate to Messenger 208
  65. 人工智慧語意分析工具應用 [email protected] 建立開發專案 • 專案資料夾:SmartHome • 主要程式:index.js • 終端機指令 npm

    init • package.json 在scripts中增加 "start":"node index.js", "debug":"node --inspect index.js" 211
  66. 人工智慧語意分析工具應用 [email protected] 開發流程 • 安裝所需工具以及準備好設備名稱與狀態資料 – Google Account, Heroku Account,

    Heroku CLI • 分析使用者輸入,確定目的 – Google Dialogflow Natural Language Processing • 依據目的,取得要更新的狀態以及密碼 – Fulfillment Programming • 將撰寫好的程式碼部署上線 – Push your code to Heroku • 在Web/Line/FB中實際測試 – Integrate to Messenger 216
  67. 人工智慧語意分析工具應用 [email protected] 部署至Heroku • 註冊帳號 • 右上角 New -> Create

    new app • 設定App name:smart-home-XXYY • 區域:美國 • Create App https://www.heroku.com/ 218
  68. 人工智慧語意分析工具應用 [email protected] Deploy using Heroku Git • 使用Heroku Git (Use

    Heroku CLI) • 下載與安裝 Heroku CLI • 終端機 heroku login cd my-project-dic git init heroku git:remote –a YourProjectNameHere https://devcenter.heroku.com/articles/heroku-command-line 是你在Heroku中的專案名稱哦! 通常長得像 smart-home-xxyyzz 219
  69. 人工智慧語意分析工具應用 [email protected] 開始部署上傳(每次更新步驟亦同) • git add . • git commit

    –am "make it better" • git push heroku master • heroku restart 雙引號這邊像是你的上傳筆記 在這裡寫上這次更新的內容 之後code更新時再加這一步 第一次不用 220
  70. 人工智慧語意分析工具應用 [email protected] 開發流程 • 安裝所需工具以及準備好設備名稱與狀態資料 – Google Account, Heroku Account,

    Heroku CLI • 分析使用者輸入,確定目的 – Google Dialogflow Natural Language Processing • 依據目的,取得要更新的狀態以及密碼 – Fulfillment Programming • 將撰寫好的程式碼部署上線 – Push your code to Heroku • 在Web/Line/FB中實際測試 – Integrate to Messenger 224
  71. 人工智慧語意分析工具應用 [email protected] 對話流程 人 <-> 人 人 <-> Chatbot/VA 開啟對話

    寒暄語 Hello、你好、嗨 喚醒語 Invocation 系統指定啟動語 Alexa, Hi Siri, OK Google 提出需求 台北的天氣如何? 一般人均可直接理解對方的需求 釐清意圖 Intent 透過語句解析,確定對方的意圖是什麼 訓練 釐清意圖 N/A 由於同一意圖有多種表達方式 所以要多提供例句讓機器對應至特定意圖 取得 關鍵資訊 若對方漏說了地方與時間 持續問答取得資訊 取出關鍵資訊 Entity 預先定義好滿足該意圖所需的關鍵資訊 持續與使用者對話取得所有需求關鍵資訊 確認 條件滿足 跟對方確定取得必要資訊後 開始進行查詢 依據關鍵資訊與意圖 進行下一階段資料查詢(API 介接) 回應 回應查詢結果 新聞說今天臺北在下雨,氣溫19度 依據查詢結果 以文字、圖形或語音的方式回應 延伸問答 依據目前資訊的延伸問題 那明天的狀況也一樣嗎? 須將既有輸入資訊暫存 更新資料查詢並進行回應 229

More Decks by Ryan Chung

Other Decks in Technology