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
35
20180621_Node学園LT
Node学園勉強会LT
AzureのサーバレスでNode.jsテンプレート使ってチャットボット作れるよ
たけだ
September 21, 2022
Tweet
Share
More Decks by たけだ
See All by たけだ
公共系SaaS屋として確実にメールを届けるために日々実施していること
taketakekaho
1
590
トヨクモ4製品で実現している基幹システムとオペレーション自動化事例紹介
taketakekaho
1
48
あの頃数百自治体のコロナワクチン 予約フォームを救ったWaiting Roomの運用
taketakekaho
2
3.1k
あの頃数百自治体のコロナワクチン予約フォームを救ったWaiting Roomの運用
taketakekaho
2
560
Cloudflare_MeetUp_Sapporo_KickOff.pdf
taketakekaho
1
250
AWS初心者抜けきれない私がAWS SamuraiとAWS Community Builderの特権フル活用したらどんなものが作れるか挑戦したこと
taketakekaho
0
140
EC2 T2つまずきやすいCPUクレジット再演
taketakekaho
0
110
AWSとLINEをつないでAIボットを作ろう!初心者編
taketakekaho
0
100
AWSとLINEをつないでAIボットを作ろう
taketakekaho
0
97
Other Decks in Technology
See All in Technology
ECS モニタリング手法大整理
yendoooo
1
120
知られざるprops命名の慣習 アクション編
uhyo
11
2.6k
Effective Match Types - Scala Days 2025
bishabosha
1
110
マイクロモビリティシェアサービスを支える プラットフォームアーキテクチャ
grimoh
1
240
Postman MCP 関連機能アップデート / Postman MCP feature updates
yokawasa
1
160
「守る」から「進化させる」セキュリティへ ~AWS re:Inforce 2025参加報告~ / AWS re:Inforce 2025 Participation Report
yuj1osm
1
140
実践アプリケーション設計 ③ドメイン駆動設計
recruitengineers
PRO
3
260
LLMエージェント時代に適応した開発フロー
hiragram
1
420
ZOZOTOWNフロントエンドにおけるディレクトリの分割戦略
zozotech
PRO
18
5.5k
Webアクセシビリティ入門
recruitengineers
PRO
1
320
VPC Latticeのサービスエンドポイント機能を使用した複数VPCアクセス
duelist2020jp
0
260
Goでマークダウンの独自記法を実装する
lag129
0
220
Featured
See All Featured
Unsuck your backbone
ammeep
671
58k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Documentation Writing (for coders)
carmenintech
73
5k
Fireside Chat
paigeccino
39
3.6k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
780
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Site-Speed That Sticks
csswizardry
10
790
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Building Applications with DynamoDB
mza
96
6.6k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
183
54k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
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サーバレスでチャットボット簡単に作れるよ♪ • 皆も作ろうよ! • 使っていて見つけたバグやフィードバックはサポートやコミュニティに報告しよう! (サポート契約ないなら私に共有して再現できたら報告あげますよ!)