Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
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
360
IBM CloudとWatson APIでチャットボットアプリを作成
ハンズオンワークショップ用の資料です
Taiji HAGINO
PRO
November 07, 2017
Tweet
Share
More Decks by Taiji HAGINO
See All by Taiji HAGINO
5分で知るMicrosoft Ignite
taiponrock
PRO
0
390
Bridging the Gap:Why Developer Relations and Product Management Must Work Together
taiponrock
PRO
0
44
What Four Approaches Taught Me About Developer Productivity
taiponrock
PRO
0
23
Automatic Creation of Azure Environment Configuration Diagrams! with Datadog Cloudcraft
taiponrock
PRO
0
74
VS Code の静的分析でリアルタイムのコードフィードバックを取得
taiponrock
PRO
0
180
Backstage of Enterprise Conference
taiponrock
PRO
1
220
どの種は何の花を咲かす?DevRelのターゲットオーディエンスを知ることの意味
taiponrock
PRO
2
380
Datadogの便利な使い方 - 意外と知らない?CoScreenとCloudcraft
taiponrock
PRO
1
1.9k
DatadogとPagerDutyで改善するシステム障害対応
taiponrock
PRO
0
800
Other Decks in Technology
See All in Technology
Kiro Autonomous AgentとKiro Powers の紹介 / kiro-autonomous-agent-and-powers
tomoki10
0
520
エンジニアリングをやめたくないので問い続ける
estie
2
1.2k
寫了幾年 Code,然後呢?軟體工程師必須重新認識的 DevOps
cheng_wei_chen
1
1.4k
Lookerで実現するセキュアな外部データ提供
zozotech
PRO
0
150
mairuでつくるクレデンシャルレス開発環境 / Credential-less development environment using Mailru
mirakui
5
530
Power of Kiro : あなたの㌔はパワステ搭載ですか?
r3_yamauchi
PRO
0
160
AWS Security Agentの紹介/introducing-aws-security-agent
tomoki10
0
290
文字列の並び順 / Unicode Collation
tmtms
3
600
「図面」から「法則」へ 〜メタ視点で読み解く現代のソフトウェアアーキテクチャ〜
scova0731
0
300
今からでも間に合う!速習Devin入門とその活用方法
ismk
1
740
Challenging Hardware Contests with Zephyr and Lessons Learned
iotengineer22
0
230
[デモです] NotebookLM で作ったスライドの例
kongmingstrap
0
160
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Become a Pro
speakerdeck
PRO
31
5.7k
Documentation Writing (for coders)
carmenintech
76
5.2k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
[SF Ruby Conf 2025] Rails X
palkan
0
530
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
The Cost Of JavaScript in 2023
addyosmani
55
9.4k
Thoughts on Productivity
jonyablonski
73
5k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Navigating Team Friction
lara
191
16k
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