Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
IBM CloudとWatson APIでチャットボットアプリを作成
Search
Taiji HAGINO
PRO
November 07, 2017
Technology
0
340
IBM CloudとWatson APIでチャットボットアプリを作成
ハンズオンワークショップ用の資料です
Taiji HAGINO
PRO
November 07, 2017
Tweet
Share
More Decks by Taiji HAGINO
See All by Taiji HAGINO
Automatic Creation of Azure Environment Configuration Diagrams! with Datadog Cloudcraft
taijihagino
PRO
0
20
VS Code の静的分析でリアルタイムのコードフィードバックを取得
taijihagino
PRO
0
52
Backstage of Enterprise Conference
taijihagino
PRO
1
140
どの種は何の花を咲かす?DevRelのターゲットオーディエンスを知ることの意味
taijihagino
PRO
2
210
Datadogの便利な使い方 - 意外と知らない?CoScreenとCloudcraft
taijihagino
PRO
1
1.3k
DatadogとPagerDutyで改善するシステム障害対応
taijihagino
PRO
0
450
ソフトウェアチームのパフォーマンスを向上させる鍵: パイプラインのオブザーバービリティ
taijihagino
PRO
1
100
エンドツーエンドの可視性を実現するクエスト
taijihagino
PRO
1
370
JDDUG (Japan Datadog User Group)始動の舞台裏
taijihagino
PRO
2
260
Other Decks in Technology
See All in Technology
『Firebase Dynamic Links終了に備える』 FlutterアプリでのAdjust導入とDeeplink最適化
techiro
0
130
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
120
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
120
Security-JAWS【第35回】勉強会クラウドにおけるマルウェアやコンテンツ改ざんへの対策
4su_para
0
180
TypeScript、上達の瞬間
sadnessojisan
46
13k
日経電子版のStoreKit2フルリニューアル
shimastripe
1
140
AIチャットボット開発への生成AI活用
ryomrt
0
170
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
160
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.2k
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
230
iOSチームとAndroidチームでブランチ運用が違ったので整理してます
sansantech
PRO
0
150
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
310
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
52
13k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
How to train your dragon (web standard)
notwaldorf
88
5.7k
What's new in Ruby 2.0
geeforr
343
31k
GitHub's CSS Performance
jonrohan
1030
460k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Transcript
Make Chatbot App with Watson IBM Cloud + Watson APIでチャットボットを作る
はじめに
§ ⽬的 • Watson Conversation APIを使ったチャットボットを開発し、IBM Cloudや Watsonの開発スキルを習得いただく。 § 必要なもの
• 開発⽤端末(Mac、Windowsなど) • Webブラウザ(Chrome、Firefox、Internet Explorerなど) • IBM Cloudアカウント(無償のライトアカウントでもOK) • Slackアカウント § このハンズオンで習得できること • IBM Cloudでのアプリケーション開発の流れ • Watson Conversation APIの使い⽅ ©Copyright IBM 3
今回作成するアプリのイメージ
システム全体像 Slack Watson Conversation 外部API(例) ユーザー インターフェース サービスおよびAPI クラウド ぐるなびWebサービス
駅すぱあとWebサービス 美味しい店 教えて 何が ⾷べたい? LINE Webブラウザ
Step 0 IBM Cloudアカウント作成
必須事項を⼊⼒し、「アカウントの作成」をクリックします クレジットカードの登録は不要です! 以下にアクセスします https://console.bluemix.net/registration/free
Bluemixチームからメールが届くので「Confirm Account」をクリックしてアカ ウントをアクティベーション、その後「ログイン」をクリックします 8
ダッシュボードへアクセスできました 9
デフォルトで組織とスペースが作成されていることを確認します ※作成されていない場合は、このタイミングで作成します
Step 1 Watson APIの作成
カタログのWatsonカテゴリーから「Conversation」を選択します。
Conversation APIを作成します 価格プランはデフォルトでライトが選択されているのでそのままでOKです
Step 2 Conversation APIの設定
IBM Watson Conversation の設計の基本 lIntents(意図) ü対話相⼿の要求を受け取る。Intents を明確にする - 「ライトをつけて」 →
スイッチ⼊ - 「⾳楽をかけて」 → スイッチ⼊ - 「⾳楽をもっと⼤きく」 → ⾳量を上げる lEntities(⽬的語) ü要求の対象となるEntityを明確にする - 「ライトをつけて」 → ライト - 「⾳楽をかけて」 → ⾳楽 - 「⾳量をもっと⼤きく」 → ⾳量 lDialogs(対話) ü対話の流れを設計する - 「⾳楽をかけて」→ 「⾳楽のジャンル取得」→ 指定ジャンルの⾳楽を開始
ダッシュボードからConversation APIを選択します
Conversation定義ツールを起動するため「Launch tool」をクリックします
Watson Conversationの画⾯でログインし、「Create」でワークスペースの作成を⾏います
今回は「駅コンシェルジュBOT」という名前でワークスペースを作成します 名称を⼊⼒し、「Create」をクリックします
Intentsを作成します 既存の定義情報があればImportもできますが、今回は「Create new」で新規作成します
Intent nameに「意図」を⽰す名称を付け、User exampleをいくつか登録します l 受け取る意図の幅を登録 ü 同じ⾏為を要求するにも、いろいろな⾔い⽅があ る。 ⾔い⽅の違いを許容して意図を理解する 例:
つけて、オン、いれて、点灯して、かけて、 ü 機械学習を利⽤して、⾔葉の揺らぎを吸収して、 意図を正しく理解する 典型的な⽂をいくつか⼊⼒すると 類似の⾔葉を「⾷事」の話である と理解する様になる
Intentsをテストします 「おなかすかない?」という⾔葉は定義してませんが、さきほど定義した、 「お腹が空いた」「お腹減った」から類推して#⾷事のIntentだと判断しました
では、ためしに類推できなさそうな⾔葉を⼊れてみましょう 「プロテインとらなきゃ」という⾔葉が#⾷事 のIntentとして学習されました
Entitiesを作成します 既存の定義情報があればImportもできますが、今回は「Create new」で新規作成します
Entity nameに「⽬的・対象」を⽰す名称を付け、User exampleをいくつか登録します ⾔葉の揺らぎや癖に対応でき るように同じ意味を指す単語 (シノニム)を登録します。
Dialogを作成します 既存の定義情報があればImportもできますが、今回は「Create new」で新規作成します
Add nodeで会話のフローを登録します 今回は分かりやすくシンプルにするため、先程登録したIntentとEntityそれぞれひとつづつに 対するフローのみを登録します
まず、#⾷事 に対する会話フローです 先程定義した #⾷事 に該当する場合に、この会話⽂を返します
次に、@food に対する会話フローです 先程定義した @food に該当する場合に、この会話⽂を返します
Step 3 Slackとの連携
今⽇の練習⽤に、Slackを⼀つ⽤意しておきます Conversation ToolのDeployからSlackを選択します
Authorize Slackをクリックし、今回⽤に準備したSlackチャネルを連携します
Slackへチャットボットがユーザーとして追加されるので、DMで会話してみます 会話ができたらOKです
Slack Watson Conversation 外部API(例) ユーザー インターフェース サービスおよびAPI クラウド ぐるなびWebサービス 駅すぱあとWebサービス
美味しい店 教えて 何が ⾷べたい? LINE Webブラウザ システム全体像で描いている外部APIはこの流れで呼出を⾏います(今回は割愛します)
参考サイト 例えば、以下の資料から触ってみるとIBM Cloudが学べます [1] IBM Cloud の基礎 http://www.ibm.com/developerworks/jp/bluemix/fundamentals/ [2] IBM
Cloud Docs ⽇本語版 https://console.ng.bluemix.net/docs/?locale=ja [3] IBM Code Patterns 英語版 https://developer.ibm.com/code/patterns/ [4] Medium Blog ※デベロッパーアドボケイトによるCode Patternの⽇本語解説 https://medium.com/search?q=ibmjpcode
None