Watsonを使ってAIアプリを作ってみよう!-ハンズオン-
-
Upload
bmxug -
Category
Technology
-
view
1.707 -
download
0
Transcript of Watsonを使ってAIアプリを作ってみよう!-ハンズオン-
![Page 1: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/1.jpg)
© 2016 IBM Corporation
Watsonを使ってAIアプリを作ってみよう!
2017年7月12日(水)
日本アイ・ビー・エム株式会社岸田 吉弘
Bluemix ハンズオン
![Page 2: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/2.jpg)
2© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
1. WatsonのAPI、Conversationの使い方がわかる
2. 外部APIの呼び出し方がわかる
3. Watsonと外部APIを組み合わせてWebアプリがつくれる
今日のゴール
![Page 3: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/3.jpg)
3© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
1. WatsonのAPI、Conversationの使い方がわかる
– (ハンズオン1)シンプルなチャットボットをつくる
2. 外部APIの呼び出し方がわかる
– (ハンズオン2)「楽天トラベル空室検索API」を呼び出す
3. Watsonと外部APIを組み合わせてWebアプリがつくれる
– (ハンズオン3)ホテル検索ができるチャットボットをつくる
今日のゴール
![Page 4: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/4.jpg)
4© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
Watsonと外部APIを組み合わせてWebアプリがつくれる
今日つくるもの
7月12日に東京駅周辺で1泊したい!
予算は1万円!
「ホテルXX」ってところが空いてるよ!
Watson君
(イメージ図)
![Page 5: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/5.jpg)
5© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
1. WatsonのAPI、Conversationの使い方がわかる
– (ハンズオン)シンプルなチャットボットをつくる
2. 外部APIの呼び出し方がわかる
– (ハンズオン)「楽天トラベル空室検索API」を呼び出す
3. Watsonと外部APIを組み合わせてWebアプリがつくれる
– (ハンズオン)ホテル検索ができるチャットボットをつくる
今日のゴール
![Page 6: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/6.jpg)
6© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712まずはWatsonについて
![Page 7: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/7.jpg)
7© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
http://www.ibm.com/smarterplanet/jp/ja/ibmwatson/
Watsonは、コンピューターでありながら、人と同じように情報から学び、
経験から学習するコグニティブ・テクノロジーです。
Watson = AI = Augmented Intelligence (拡張知能)
LearningUnderstanding Reasoning
学習により専門知識を身につける。
ヒトのコミュニケーション(言語・音声・画像)を理解する。
事実から紐付けて答えを見つけ出す。(推論する)
Watsonとは?
![Page 8: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/8.jpg)
8© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712Watson API一覧
Personality Insightsテキストから筆者の性格を推定する
Language Translator(一部日本語未対応)
自然言語テキストについて他言語へ翻訳を行う
Conversationアプリケーションに自然言語インターフェースを追加してエンドユーザとのやり取りを自動化
Natural Language Understanding(日本語未対応)
自然言語処理を通じてキーワード抽出、エンティティー抽出、心情分析、感情分析、概念タグ付け、関係抽出、分類法種別、作成者抽出などを行う
Text to Speechテキスト文章を音声に変換する
Speech to Text音声をテキスト文章に変換する
Visual Recognition画像コンテンツに含まれる意味を検出する
Natural Language Classifierテキスト文章の分類を行う(質問の意図推定など)
Tone Analyzer(日本語未対応)
テキストの感情、社交性、文体を解析する
Retrieve and Rank自然言語の質問に対して回答の候補を返す
分析系
音声系
画像系
言語系
Document Conversion文書を新しい形式に変換する
Discovery(日本語未対応)
認知検索およびコンテンツ分析エンジンをアプリケーションに追加して、優れた意思決定を行うのに役立つパターン、傾向、およびアクション可能な洞察を識別する
(2017年7月現在)
![Page 9: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/9.jpg)
9© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712Conversationとは
チャットアプリ
XXさん、おはようございます
10時-12時 お客様MTG @箱崎
…19時 新人歓迎会 @
銀座
今日の予定を教えて
Conversation を呼び出す
回答メッセージを受け取る
今日の予定を教えて
10時-12時 お客様MTG...
会話フローに沿って、意図と目的語に対する応答メッセージを返す
意図:「知りたい」目的語:「今日」「予定」
Conversationはチャットボットを実装するためのAPIです
ユーザの発言の意図を理解し、その意図に応じて応答メッセージを返します
会話に必要な情報をやりとりをしながら抜き出し、適切な応答を選択します
![Page 10: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/10.jpg)
10© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712Conversationで重要な3つの要素
Intents(インテント / 意図)
✓対話相手の要求・意図を認識する- 「ライトをつけて」 → スイッチ入
- 「音楽をかけて」 → スイッチ入
- 「音量をもっと大きく」 → 大きくする
Entities(エンティティ / 目的語)
✓要求の対象を明確にする- 「ライトをつけて」 → ライト
- 「音楽をかけて」 → 音楽
- 「音量をもっと大きく」 → 音量
Dialogs(ダイアログ / 対話)
✓対話の流れを設計する- 「音楽をかけて」→ 「音楽のジャンル取得」→ 指定ジャンルの音楽を開始
![Page 11: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/11.jpg)
11© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712インテントの登録
異なる表現や言葉のゆらぎを吸収し、意図を正しく理解するため 同じ行為を要求したとしても、様々な言い方があるため 例:食べたい、おなかがすいた、腹減った
同じ意図の文章を複数登録すると、類似の表現を「食事」に関係があると理解するようになる
![Page 12: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/12.jpg)
12© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712エンティティの登録
インテントの「目的」となる対象物を特定するため 例:”何を”食べるのか。そば?パスタ?ラーメン?
同じ意味の単語でも、様々な言い方があるため、シノニム(類義語)も登録する 例:晩ご飯、夜ご飯、夕飯、夕食、ディナー
”何を”食べるか、を明確にするための「food」のエンティティ
![Page 13: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/13.jpg)
13© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ビルトインされているエンティティ
Conversationには、デフォルトで提供しているエンティティも存在する
種別 認識できるもの 例
sys-time 時間 13時20分、13:20
sys-date 曜日と日付 今日、金曜日、7月12日
sys-currency 通過 20 cents、$20
sys-percentage 割合 15%、10パーセント
sys-number 数値 123、3.1415、百七十
System entities 一覧
![Page 14: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/14.jpg)
14© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ダイアログとは
ユーザーの要求(インテントとエンティティ)と、それに応じた回答を組み合わせていく 各ノードはコンディション(条件)とレスポンス(対応)で構成される
ご用件はなんですか
何が食べたいですか
近くにおすすめの蕎麦屋があります
またどうぞ!
お腹が空いた そばがいいな
やっぱ今はいいや
#食事 @そば
![Page 15: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/15.jpg)
15© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ハンズオン1
シンプルなチャットボットをつくる
チャットボット
こんにちは!お元気ですか?
こんにちは
うん、いい感じ!
素晴らしい!その調子で頑張ってください!
(イメージ図)
やること・Node-REDの環境構築・Conversation サービスの作成・Conversationでのワークスペース作成
![Page 16: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/16.jpg)
16© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712Bluemixへログイン
ブラウザで「bluemix.net」と入力し、Bluemixへログインします地域を「米国南部」に変更してください
![Page 17: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/17.jpg)
17© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
右上の「カタログ」をクリックし、「ボイラープレート」カテゴリにある「Node-RED Starter」をクリックします
Node-RED環境の準備
![Page 18: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/18.jpg)
18© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
アプリ名のところに
「noderedapp-名前」と入力
Node-RED環境の準備
アプリの名前を入力し、右下の「作成」ボタンをクリックします
![Page 19: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/19.jpg)
19© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712Node-RED環境の準備
アプリが「実行中」になるまで待ちます「実行中」になったら、右側の「アプ...」をクリックします
![Page 20: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/20.jpg)
20© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
Node-REDとは、デバイス、API、オンラインサービスなどの機能を繋げてアプリケーションを作成していくプラットフォームです
ノード
(カプセル化された機能)
Node-REDとは?
![Page 21: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/21.jpg)
21© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
Node-REDを最初に使う時には、認証情報の登録が必要です Node-REDの編集者を制限し、他人からの改変を防ぐことができます
右下の「Next」ボタンをクリックし、ユーザー名とパスワードを入力します
Node-REDのセットアップ
任意のユーザー名とパスワードを入力
(その下のチェックはつけない)
![Page 22: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/22.jpg)
22© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712Node-REDのセットアップ
その後は何もせず、右下の「Next」、「Finish」をクリックします
![Page 23: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/23.jpg)
23© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712Node-REDのセットアップ
少し待つと、認証情報が登録され、以下の画面が表示されます 右下の「Go to your Node-RED flow editor」をクリックし、先ほど登録し
た認証情報を入力。入力を終えたら「ログイン」をクリックします
![Page 24: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/24.jpg)
24© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
このような画面が表示されます
Node-REDのセットアップ
Node-REDの環境構築完了です! ノードのドラッグ&ドロップでアプリケーションを開発していきます
![Page 25: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/25.jpg)
25© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712Watson APIの追加
Node-REDのアプリからWatsonを使うためには、Watson APIのサービスを新たに作成し、Node-REDのアプリと接続する必要があります
Bluemixの画面に戻り、左側のメニューの「接続」をクリックしてから右上にある「新規に接続」をクリックします
![Page 26: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/26.jpg)
26© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712Watson APIの追加
「Watson」カテゴリーにある「Conversation」をクリックします
![Page 27: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/27.jpg)
27© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712Watson APIの追加
「接続」で先ほど作成したアプリを指定し、右下の「作成」をクリックします
![Page 28: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/28.jpg)
28© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712Watson APIの追加
アプリの再ステージを行い、「実行中」になるまで再度待ちます 「実行中」になったら、先ほど追加した「Conversation-XX」をクリックします
![Page 29: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/29.jpg)
29© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ワークスペースを開く
サービスの詳細画面が開きます 「Launch tool」をクリックし、Conversationツールを起動します
![Page 30: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/30.jpg)
30© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ワークスペースの作成
新規にチャットボットを作成してみましょう 「Create」ボタンをクリックし、ワークスペースを作成します
ワークスペースは一連の会話のパッケージです
ワークスペースの名前を入力
(例:サンプル・チャットボット)
![Page 31: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/31.jpg)
31© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712インテントの作成
「Create new」ボタンをクリックして、インテントを作成します 「Import」で既存のインテントをインポートすることも可能です
![Page 32: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/32.jpg)
32© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
「Intent name」に「#あいさつ」と入力し、インテントを作成してみましょう あいさつの文書をいくつか入力します
ここに文章を入力して例文を登録していく
典型的な文をいくつか入力すると類似の言葉を「あいさつ」の話であると理解するようになる
![Page 33: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/33.jpg)
33© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712インテントの作成
インテントが正しく設定できたか、確認してみましょう 画面右上のボタンをクリックし、テストツールを開きます
あいさつに関する文章であることを理解して
いる
![Page 34: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/34.jpg)
34© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712Tips
インテントやエンティティを作成すると、自動的にWatsonのトレーニングが開始されます
トレーニングが完了しないと変更が反映されません トレーニングが完了してから、テストツールでの動作確認を行ってください
![Page 35: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/35.jpg)
35© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712エンティティの作成
エンティティタブをクリックし、中央にある「Create new」ボタンをクリックして、エンティティを作成します 「Import」で既存のエンティティをインポートすることも可能です
![Page 36: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/36.jpg)
36© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712エンティティの作成
「yes」と「no」のエンティティを作成します
エンティティ名
言葉の揺らぎや癖に対応できるように同じ意味を指す単語(シノニム)を登録
![Page 37: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/37.jpg)
37© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ダイアログの作成
ダイアログタブをクリックし、中央にある「Create」ボタンをクリックして、ダイアログを作成します
![Page 38: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/38.jpg)
38© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712作成するシナリオ
チャットボット
こんにちは!お元気ですか?
こんにちは
うん、いい感じ!
素晴らしい!その調子で頑張ってください!
(イメージ図)
![Page 39: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/39.jpg)
39© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ダイアログの作成
ダイアログには、はじめから「ようこそ」と「その他」ノードが入っています
どのインテント、エンティティにも属さない文章だった時に出す
メッセージ(エラー処理)
会話が始まった時に出すメッセージ
![Page 40: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/40.jpg)
40© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ダイアログの作成
「Add node」をクリックし、ノードを追加します 各ノードはcondition(条件)とresponse(対応)で構成されます
<? input.text ?>で、ユーザーの入力メッセージをオウム返しする
条件:“ユーザの入力が「あいさつ」に関する文章だった場合”
複数の回答を順番に返したり、ランダムに返したりできる
ノード名
![Page 41: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/41.jpg)
41© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ダイアログの作成
あいさつノードが選択されている状態で、「Add child node」をクリックし、子ノードを追加します
![Page 42: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/42.jpg)
42© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ダイアログの作成
あいさつノードが選択されている状態で、「Add child node」をクリックし、子ノードを追加します
![Page 43: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/43.jpg)
43© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ダイアログの作成
テストツールを起動して、作成したフローの動作確認をしてみましょう
![Page 44: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/44.jpg)
44© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
1. WatsonのAPI、Conversationの使い方がわかる
– (ハンズオン1)シンプルなチャットボットをつくる
2. 外部APIの呼び出し方がわかる
– (ハンズオン2)「楽天トラベル空室検索API」を呼び出す
3. Watsonと外部APIを組み合わせてWebアプリがつくれる
– (ハンズオン3)ホテル検索ができるチャットボットをつくる
今日のゴール
![Page 45: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/45.jpg)
45© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712楽天トラベル
宿泊予約・航空券予約ができるオンライン総合旅行サイト
https://travel.rakuten.co.jp/
![Page 46: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/46.jpg)
46© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712楽天トラベルAPI
今回はこの「楽天トラベル空室検索API」を使います!https://webservice.rakuten.co.jp/document/#travelApi
![Page 47: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/47.jpg)
47© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712APIとは?
〒103−8510の住所が知りたい
「東京都中央区日本橋箱崎町日本アイ・ビー・エム 株式
会社 箱崎事業所」だよ
郵便番号 API
企業が持っているデータを、ネットワークを通じて利用できるようにしたもの 利用者はAPIを通じて様々なデータを取得し、それらを利用したアプリや
ウェブサイトを開発できる
データ提供事業者
例:郵便番号API
出典:https://webservice.faq.rakuten.co.jp/app/answers/detail/a_id/13774
![Page 48: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/48.jpg)
48© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712APIの使い方
ベースURLに、パラメータを付加してHTTP(S)リクエストを送信する
➢ 楽天トラベル空室検索APIの場合
• ベースURL: https://app.rakuten.co.jp/services/api/Travel/VacantHotelSearch/20170426
• パラメータ(必須):アプリID、地区情報• パラメータ(任意):チェックイン日、チェックアウト日、上限金額…
![Page 49: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/49.jpg)
49© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ハンズオン2
「楽天トラベル空室検索API」を呼び出す
やること・楽天ウェブサービスへの登録・Node-RED上からの楽天API呼び出し
![Page 50: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/50.jpg)
50© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712APIの準備
楽天ウェブサービス(https://webservice.rakuten.co.jp/) にアクセスし、「+アプリID発行」をクリックします
楽天会員でログインしてください
![Page 51: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/51.jpg)
51© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712APIの準備
アプリ新規作成フォームに必要事項を入力します
アプリ名:任意の名前(例:Watson-botアプリ)
アプリURL:作成したアプリのURL
(例:https://noderedapp-名前.mybluemix.net)
![Page 52: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/52.jpg)
52© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712APIの準備
アプリIDが発行されるので、コピーしておいてくださいのちほど、APIコールの時に必要になります
![Page 53: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/53.jpg)
53© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
2. 「api_test.txt」ファイルを全コピーし、貼り付け
1.右メニューから[読み込み]→[クリップボード]を選択
3.読み込みボタンをクリック
Node-REDフローのインポート
APIテスト用のNode-REDフローをインポートしますファイルは「api_test.txt」をコピーしてください
![Page 54: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/54.jpg)
54© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712楽天アプリID設定
2. 「XXX…」の部分をメモしておいたapplicationIdで上書きする。
3. デプロイボタンを押す。
楽天トラベルAPIを利用するためには「楽天アプリID」の設定が必要ですメモしておいたIDを、URLの末尾に上書きして設定します
(XXXXXXの部分を上書きしてください)
1. ノードをダブルクリック
![Page 55: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/55.jpg)
55© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712楽天トラベルAPIのテスト
timestampノードの左横のボタンをクリックして、APIを呼び出しますパラメータ設定を変更しながら、デバッグタブに何が表示されるか確認しましょう
1.ノードの左横のボタンをクリック
2.デバッグタブに
回答が返ってくるのを確認する。
![Page 56: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/56.jpg)
56© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
1. WatsonのAPI、Conversationの使い方がわかる
– (ハンズオン1)シンプルなチャットボットをつくる
2. 外部APIの呼び出し方がわかる
– (ハンズオン2)「楽天トラベル空室検索API」を呼び出す
3. Watsonと外部APIを組み合わせてWebアプリがつくれる
– (ハンズオン3)ホテル検索ができるチャットボットをつくる
今日のゴール
![Page 57: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/57.jpg)
57© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ハンズオン3
ホテル検索ができるチャットボットをつくる
やること・Conversationでのワークスペース作成・Node-REDでのアプリ構築
![Page 58: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/58.jpg)
58© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
Webアプリ
Node.js
Conversation
入力
応答
楽天トラベル空室検索API
Conversationで「宿泊日」、「宿泊日数」、「地域」、「予算」を聞き、それをパラメータとして楽天トラベルAPIを呼び出す
API呼び出し
1.Conversationで、ユーザに条件を確認する
(宿泊日、宿泊日数、地域、予算)
2.確認した条件をアプリ内で保持する 3.条件を元に
楽天トラベルAPIを呼び出す
アプリの構成
![Page 59: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/59.jpg)
59© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ワークスペースのインポート
ホテル検索用のワークスペースをインポートします。ファイルは「conversation.json」を指定してください
![Page 60: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/60.jpg)
60© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712インテントの作成
「ホテル検索」というインテントを作成します余裕がある方は、正しく登録できたかテストツールで動作確認してみましょう
ホテル検索に関する文章だと認識されている
![Page 61: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/61.jpg)
61© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ダイアログにインテントを設定する
#ホテル検索 と入力
ホテル検索に関するする文章が入力されると会話が続くようにするために、ダイアログの「ホテル検索」ノードの条件に「#ホテル検索」と入力します
ホテル検索に関する文章だと、
会話が続いていく
![Page 62: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/62.jpg)
62© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712システムエンティティ
会話中に日付を認識する「@sys-date」と、数字を認識する「@sys-number」が有効になっているので、「今日」や「7月12日」のような表現でもWatsonが認識してくれます
「今日」が2017−07-12だと認識している
@sys-dateがオフだと「今日」が日付だと
認識されない
![Page 63: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/63.jpg)
63© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ダイアログ
「地域確認」ノードの子ノードとして、「値段確認」ノードを追加します
ノード名:値段確認
条件:@sys-number
レスポンス:予算は1泊あたり<? @sys-number ?>円ですね。ではこれより、宿泊可能なホテルを検索します。
![Page 64: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/64.jpg)
64© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712ワークスペースIDの確認
作成したワークスペースをAPIから利用する場合には「Workspace ID」が必要になります
Conversationツールから、Workspace IDをコピーしておきます
workspace_idをコピーして控えておく
![Page 65: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/65.jpg)
65© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
2. 「bot-flow.txt」ファイルを全コピーし、貼り付け
1.右メニューから[読み込み]→[クリップボード]を選択
3.読み込みボタンをクリック
Node-REDフローのインポート
Webアプリ用のNode-REDフローをインポートしますファイルは「bot-flow.txt」をコピーしてください
![Page 66: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/66.jpg)
66© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
1.workspace_idを設定する
2.ノードの左横のボタンをクリック
3.デバッグタブに
回答が返ってくるのを確認する。
Node-REDでConversationを動かす
先ほど作成したConversationのワークスペースが、Node-REDでどのように動くか確認してみましょう
![Page 67: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/67.jpg)
67© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
workspace_idを設定する
アプリIDを設定する
workspace_id と 楽天API アプリIDを設定します
資格情報の設定
![Page 68: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/68.jpg)
68© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712
これでアプリは完成です。お疲れさまでした!Node-REDのURLを元に、httpノードで設定したパスを指定してアプリに
アクセスします http://noderedapp-名前.mybluemix.net/bot
完成!
![Page 69: Watsonを使ってAIアプリを作ってみよう!-ハンズオン-](https://reader033.fdocuments.net/reader033/viewer/2022052117/5a6e34687f8b9a484d8b6e79/html5/thumbnails/69.jpg)
69© 2017 IBM Corporation
資料:
ibm.biz/bmxug0712