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
350
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
43
VS Code の静的分析でリアルタイムのコードフィードバックを取得
taijihagino
PRO
0
87
Backstage of Enterprise Conference
taijihagino
PRO
1
170
どの種は何の花を咲かす?DevRelのターゲットオーディエンスを知ることの意味
taijihagino
PRO
2
250
Datadogの便利な使い方 - 意外と知らない?CoScreenとCloudcraft
taijihagino
PRO
1
1.5k
DatadogとPagerDutyで改善するシステム障害対応
taijihagino
PRO
0
610
ソフトウェアチームのパフォーマンスを向上させる鍵: パイプラインのオブザーバービリティ
taijihagino
PRO
1
130
エンドツーエンドの可視性を実現するクエスト
taijihagino
PRO
1
440
JDDUG (Japan Datadog User Group)始動の舞台裏
taijihagino
PRO
2
320
Other Decks in Technology
See All in Technology
飲食店予約台帳を支えるインタラクティブ UI 設計と実装
siropaca
6
1.4k
2.5Dモデルのすべて
yu4u
2
610
株式会社EventHub・エンジニア採用資料
eventhub
0
4.2k
君も受託系GISエンジニアにならないか
sudataka
2
370
PL900試験から学ぶ Power Platform 基礎知識講座
kumikeyy
0
110
Ask! NIKKEI RAG検索技術の深層
hotchpotch
13
2.8k
テストアーキテクチャ設計で実現する高品質で高スピードな開発の実践 / Test Architecture Design in Practice
ropqa
3
710
管理者しか知らないOutlookの裏側のAIを覗く#AzureTravelers
hirotomotaguchi
2
240
Culture Deck
optfit
0
330
プロセス改善による品質向上事例
tomasagi
1
1.6k
個人開発から公式機能へ: PlaywrightとRailsをつなげた3年の軌跡
yusukeiwaki
11
2.7k
Data-centric AI入門第6章:Data-centric AIの実践例
x_ttyszk
1
370
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
RailsConf 2023
tenderlove
29
1k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
51k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Faster Mobile Websites
deanohume
306
31k
Bash Introduction
62gerente
610
210k
GraphQLとの向き合い方2022年版
quramy
44
13k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
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