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
20180621_Node学園LT
Search
たけだ
September 21, 2022
Technology
0
22
20180621_Node学園LT
Node学園勉強会LT
AzureのサーバレスでNode.jsテンプレート使ってチャットボット作れるよ
たけだ
September 21, 2022
Tweet
Share
More Decks by たけだ
See All by たけだ
あの頃数百自治体のコロナワクチン 予約フォームを救ったWaiting Roomの運用
taketakekaho
2
2.6k
あの頃数百自治体のコロナワクチン予約フォームを救ったWaiting Roomの運用
taketakekaho
2
350
Cloudflare_MeetUp_Sapporo_KickOff.pdf
taketakekaho
1
180
AWS初心者抜けきれない私がAWS SamuraiとAWS Community Builderの特権フル活用したらどんなものが作れるか挑戦したこと
taketakekaho
0
75
EC2 T2つまずきやすいCPUクレジット再演
taketakekaho
0
77
AWSとLINEをつないでAIボットを作ろう!初心者編
taketakekaho
0
77
AWSとLINEをつないでAIボットを作ろう
taketakekaho
0
72
LGWANでも使えるシナリオ型チャットボットをAWS ECSで構築し数百自治体に提供している話
taketakekaho
0
1.4k
コミュニティを活用した勉強習慣化.pdf
taketakekaho
1
410
Other Decks in Technology
See All in Technology
コンテナセキュリティの基本と脅威への対策
kyohmizu
3
750
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
infiniteloop_inc
2
10k
ExaDB-D dbaascli で出来ること
oracle4engineer
PRO
0
2.1k
AWSに詳しくない人でも始められるコスト最適化ガイド
yuhta28
0
150
データベース02: データベースの概念
trycycle
0
150
JSON攻略法.pdf
miyakemito
8
4.9k
Google Cloud の AI を支える裏側のインフラを垣間見る!
maroon1st
0
340
SIEMを用いて、セキュリティログ分析の可視化と分析を実現し、PDCAサイクルを回してみた
coconala_engineer
0
280
VSCodeの拡張機能を作っている話
ebarakazuhiro
1
290
ServiceNow Knowledge Learning Rise up
manarobot
0
200
アクセス制御にまつわる改善 / Improving access control
itkq
0
520
ゼロから始めるVue.jsコミュニティ貢献 / first-vuejs-community-contribution-link-and-motivation
lmi
1
120
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
227
16k
Atom: Resistance is Futile
akmur
259
25k
Side Projects
sachag
451
41k
Faster Mobile Websites
deanohume
299
30k
A Philosophy of Restraint
colly
197
16k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
9
8.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
14
1.5k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
Building Applications with DynamoDB
mza
88
5.6k
Build your cross-platform service in a week with App Engine
jlugia
225
17k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.6k
How to name files
jennybc
65
93k
Transcript
AzureのサーバレスでNode.jsテンプレート使って 超絶簡単にAIチャットボット作れるよっていう話 東京Node学園 #node_girls 2018/06/20 たける
注意 •資料公開しますんで手順などはさらっと進みますがあと で見てみてください。 •私なんかでよければSNSシェアOKです。
自己紹介 たける 株式会社チェンジ エンジニア • 業務でスマートデバイスを導入・活用する際のコンサルティング及び業務アプリ開発 (主にチャットやチャットボットに関わるコンサルティング、開発、ツール販売、導入支援など) • 元SIer(某銀行の融資システム維持開発のインフラ担当) •
プログラミングレベル:ひよっこ(Node.js、C#) • チョットデキル:Azure、Office365、CognitiveService、チャット製品全般、チャットボット作成ツール • アマリデキナイケドキョウミアル:AWS、IoT、Ionic、Low-Code、音声系 • ハマっていること:スキューバダイビング、ゴルフ、リゾート、お酒、チャットボット作り
ちょっとアンケートとらせてください https://bit.ly/2LRJeiX
(追記) ぉお。
勉強会に参加するようになったきっかけ 9年間金融系SE(プロジェクトマネージャー) 飽きた 2017年2月 大企業からベンチャー企業に転職。 圧倒的にWEB系や開発者としての知識が足りないことに気づく
メールや読み物の半分以上が英語。やばい。 常に新しい情報のインプット必要(事業内容:NewITトランスフォーメーション イミフ ) 会社の9割がコンサルタント職種でエンジニア少なくて共感できる人少ない 「勉強会 エンジニア」で検索したらたくさんあるじゃん 月7くらいで参加 ハンズオン大好き
チャットボットって? • 「チャット」+「ロボット」 =「チャットボット」 • チャットをUIとしてボットアカウントに接 続したプログラムが処理を自動的に実 行してくれる • 自然言語AIとつながってるSiriとかりん
なとか有名。 • LINEとかSlackとかチャットツールから 提供されてるAPI使う
チャットボットとの出会い • 転職して初めて参画したプロジェクトが「チャットボットコンサル」 • ちゃっとぼっと・・・?何それ美味しいの・・・? • 当時ググってもあまり出てこず。本もほとんど出版されておらず。 • IT系勉強会なら多少あってコソコソ勉強してた •
いつの間にか「チャットボット得意な人」扱い • 「チャットボットサービス作って!」っていうムチャぶり
作ってやったさ。 • 開発期間2か月でリリース • 超アジャイル開発(後から知った) • 奇跡
Node.jsとの出会い • Node.jsとの出会い≒Node学園との出会い • それ以降のびすけさんのqiitaとか見ながらチャットボット勉強
AzureでAIチャットボット作ってみる 「QnAMaker」っていうFAQボット用のAIとつないで超簡単に作ります
Azureアカウント • 必要なもの • クレジットカード • Microsoftアカウント(無料で1分で作れる)
Azureログイン (https://portal.azure.com) • ダッシュボード • 無料アカウントで 22,500円使い切っても 課金されない • 無料アカウントから有償
アカウントへの切り替えす れば従量課金アカウント になる • ゲストユーザ招待して複 数メンバーでも利用可
Azureで何する? • Azure FunctionsBot • サーバレスのリソースの中にチャットボットフレームワークが用意されている。言 語C#かNode.jsが対応されてる。 • QnAMaker •
FAQ(よくある質問と回答データ) を登録するだけで簡単にFAQボット が作れる自然言語のゆらぎに対応 したAI。学習させるとさらに 賢くなる(はず)
QnAMakerリソース作る • 検索して
• 適当に設定して(プランは無料選んで) • 作成クリックして数分待つ • デプロイ成功
QnAMakerにデータ入れる(https://www.qnamaker.ai ) • [Create a knowledge base]から新規作成 • さっき作ったリソース指定 •
よくある質問集のURLを指定 • 自動的にURL先から質問と回答データ 判定して登録(ただ日本語まだ苦手)
QnAMaker登録でけた • URLだけで自動抽出して登録する機能、便利ね。
QnAMakerテスト • 登録されたFAQの文言の表現をちょっと変えて みても回答してくれる。 • 日本語もっと頑張れ。
QnAMaker公開 • [PUBLISH]クリックして公開 • キーとか表示されるんでメモ ( ..)φメモメモ
FunctionsBotリソース作る • FunctionsBot作成 • プログラムテンプレート選択で 「Node.js」選択 • 「Question and Answer」選択
• 数分でデプロイ完了
QnAmakerとつなぐ • アプリケーション設定でさっきメモしたキーなどコピペ
チャットから使ってみる • 用意されたチャンネルなら 簡単につなげる • なくても「DirectLine」で アダプタを作ればつなげら れる(LINEとか)
Skype / Teams / Skype for Business 接続が簡単に
Web埋め込み型のチャットボット設置
ブラウザ上に開発エディターもあるのでちょっとした開発ならここでOK
ブラウザ上に開発エディターもあるのでちょっとした開発ならここでOK
私はローカルに落としてVS Codeで開発してます • もっと他にもいい開発環境方法あるよ!って方知ってたら教えてください。 (私Azureではほぼ ぼっち開発者)
ね?簡単でしょ?是非皆さんも作ってみてください♪ って話をするはずだった
一昨日(6/18)の話 • さてそろそろLTの準備しようと思って Node.jsでボット作ってみたら… うんともすんとも動かず。。 • ログ見ても何も残っておらず。
まただ… • 何か始めると高確率でバグを引く • コミュニティ見てもあがっておらず。 • え?この機能使ってるの世界中で私 だけじゃないか?って思ってしまうほどの 標準的な所。 •
サポート問合せするとやっぱりいつも報 告1人目。 • 確かにAzureのサーバレス (FunctionsBot)でボット開発して る人はグローバルでもあまりいないっぽ い。皆PaaS(WebApps)で作って る。
なぜ直らないのだ。 • 今回のはまだいい。LT 向けだし。 • 実際の案件でぼっち 開発してる時こういう のにぶち当たるとけっこ うツライ。 •
公開されて結構経っ てるリソースにも不具 合結構ある。
そう。 た ぶ ん こ う い う 状 態
。
さっそくサポートに報告 • 3,000円~/月 • Azureサポートめっ ちゃいい • マジオススメ。 • 数えてみたら200件/
年以上チケット切って た。すげえ私。
バグじゃなくて改善依頼とかならコミュニティに上げる • こんな機能あったらいいな!などはコミュニティ ( https://cognitive.uservoice.com/ )にあげる。 • (私含めて)英語苦手な人や日本語特有のフィードバックはサポートに手伝って もらってあげることもできる(と思う)。 •
日本人でフィードバック上げる人ほとんどいない…
Azureサポートエンジニア、とても優秀です。 • 緊急度や優先度をヒアリングし、とても理解ある対応してくれる。 • 問合せした当日の夜には暫定対処方法の回答くれた。 • 今日の朝(問合せ2日後)にはバグ直してくれた。 • いい人多い。
つまり 消防車は呼べば来る。
まとめ • Azureサーバレスでチャットボット簡単に作れるよ♪ • 皆も作ろうよ! • 使っていて見つけたバグやフィードバックはサポートやコミュニティに報告しよう! (サポート契約ないなら私に共有して再現できたら報告あげますよ!)