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
24
20180621_Node学園LT
Node学園勉強会LT
AzureのサーバレスでNode.jsテンプレート使ってチャットボット作れるよ
たけだ
September 21, 2022
Tweet
Share
More Decks by たけだ
See All by たけだ
あの頃数百自治体のコロナワクチン 予約フォームを救ったWaiting Roomの運用
taketakekaho
2
2.9k
あの頃数百自治体のコロナワクチン予約フォームを救ったWaiting Roomの運用
taketakekaho
2
430
Cloudflare_MeetUp_Sapporo_KickOff.pdf
taketakekaho
1
210
AWS初心者抜けきれない私がAWS SamuraiとAWS Community Builderの特権フル活用したらどんなものが作れるか挑戦したこと
taketakekaho
0
96
EC2 T2つまずきやすいCPUクレジット再演
taketakekaho
0
87
AWSとLINEをつないでAIボットを作ろう!初心者編
taketakekaho
0
86
AWSとLINEをつないでAIボットを作ろう
taketakekaho
0
81
LGWANでも使えるシナリオ型チャットボットをAWS ECSで構築し数百自治体に提供している話
taketakekaho
0
1.7k
コミュニティを活用した勉強習慣化.pdf
taketakekaho
1
460
Other Decks in Technology
See All in Technology
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
250
DMARC 対応の話 - MIXI CTO オフィスアワー #04
bbqallstars
1
160
スクラムチームを立ち上げる〜チーム開発で得られたもの・得られなかったもの〜
ohnoeight
2
350
CysharpのOSS群から見るModern C#の現在地
neuecc
2
3.2k
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.6k
なぜ今 AI Agent なのか _近藤憲児
kenjikondobai
4
1.4k
隣接領域をBeyondするFinatextのエンジニア組織設計 / beyond-engineering-areas
stajima
1
270
The Rise of LLMOps
asei
7
1.4k
dev 補講: プロダクトセキュリティ / Product security overview
wa6sn
1
2.3k
Engineer Career Talk
lycorp_recruit_jp
0
160
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
2
310
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Building Your Own Lightsaber
phodgson
103
6.1k
Visualization
eitanlees
145
15k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Happy Clients
brianwarren
98
6.7k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
What's new in Ruby 2.0
geeforr
343
31k
Designing for humans not robots
tammielis
250
25k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Statistics for Hackers
jakevdp
796
220k
YesSQL, Process and Tooling at Scale
rocio
169
14k
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サーバレスでチャットボット簡単に作れるよ♪ • 皆も作ろうよ! • 使っていて見つけたバグやフィードバックはサポートやコミュニティに報告しよう! (サポート契約ないなら私に共有して再現できたら報告あげますよ!)