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
Tweet

More Decks by Ryan Chung

Other Decks in Technology

Transcript

  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