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
「画像DE路線当てBot」で学ぶBot開発 / cogbot#8
Search
HikaruMaruyama
August 30, 2017
Programming
770
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
「画像DE路線当てBot」で学ぶBot開発 / cogbot#8
HikaruMaruyama
August 30, 2017
More Decks by HikaruMaruyama
See All by HikaruMaruyama
OSS CMS「Drupal 10」 エッセンシャル:最新版でのWeb開発の魅力を探る #oscnagoya
hmaruyama
0
280
スタイリッシュでモダンな「Gin」管理テーマの紹介 #drupal_haneda
hmaruyama
0
310
DrupalのWeb Profiler #drupal_haneda
hmaruyama
0
390
非エンジニアから開発者まで!DrupalPodを使用したDrupal環境の作成
hmaruyama
1
370
Drupal認定試験にチャレンジしよう!アクイア認定プログラムのご紹介 / introduction of Acquia Drupal Certification Program
hmaruyama
0
1k
「Docker/Kubernetes実践コンテナ開発入門」学習のポイント #dockerbg / 20191108
hmaruyama
0
180
enebularでobnizを Lチカ してみた #enebular / 20181122
hmaruyama
0
610
駅すぱあとWebサービス連携ハンズオンパート ノンプログラミングでClovaスキルハンズオン&お茶会 #linebootawards #Clova_CEK / 20180919
hmaruyama
1
670
Agent Friends Xperia Ear Duoで誰でも コミュニケーションにコミット #linebootawards / 20180826
hmaruyama
0
150
Other Decks in Programming
See All in Programming
エンジニア向け会社紹介/Findy Company Profile
findyinc
6
360k
これからAgentCoreを触る方へトレンドはGatewayです
har1101
6
460
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
290
The NotImplementedError Problem in Ruby
koic
1
1.1k
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
320
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
0
110
Performance Engineering for Everyone
elenatanasoiu
0
250
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
430
鹿野さんに聞く!『TypeScriptコードレシピ集』で磨く実践力
tonkotsuboy_com
4
970
吝嗇家のためのAI活用 / AI development for miser - ChatGPT + Issue Driven Development
tooppoo
0
170
Contextとはなにか
chiroruxx
1
390
ECSアプリログをFireLensでコスト削減しようとしたけど諦めた話 in Fargate×Node.js
akihisaikeda
2
4.2k
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Exploring anti-patterns in Rails
aemeredith
3
430
First, design no harm
axbom
PRO
2
1.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
460
Darren the Foodie - Storyboard
khoart
PRO
3
3.4k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
1k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
180
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
340
Balancing Empowerment & Direction
lara
6
1.2k
Scaling GitHub
holman
464
140k
Transcript
ୈ8ճ Cogbotษڧձ גࣜձࣾϰΝϧݚڀॴ ؙࢁͻ͔Δ ʮը૾DE࿏ઢͯBotʯ ͰֶͿBot։ൃ
Profile ؙࢁͻ͔Δ גࣜձࣾϰΝϧݚڀॴ ςΫχΧϧΤόϯδΣϦετ ਆಸݝ૬ݪࢢࡏॅ IJLBSVNBSVZBNB !NBSVZBNBIJBLSV IUUQIJJJJJJJIJLBSVIBUFOBEJBSZDPN
None
ઃཱ : 1976/7/26 ॴࡏ : ౦ژਿฒ۠ߴԁࣉ ैۀһ: 159໊(2017/4ݱࡏ)
1988 ࠃॳͷҊιϑτ Ӻ͢ͺ͋ͱ ͕ੜ͠·ͨ͠ɻ ݸਓར༻͚ͩͰͳ͘ɺ ϏδωεγʔϯͰଟ͘ͷ ࠾༻࣮͕͋Γ·͢ɻ Έͳ͞Μ͝ଘ Yahoo࿏ઢਤ
Ӻ͢ͺ͋ͱͷΤϯδϯͰ͢ɻ “Ҋ”ͷձࣾͰ͢
Ӻ͢ͺ͋ͱΛ࣠ʹ ༷ʑͳࣄۀΛల։͍ͯ͠·͢
ຊͷຊɿ Microsoft Bot framework ͦͷଞॾʑΛ༻͍ͨ Bot։ൃͷݟڞ༗
Ռ
΄Μͱ͜͏Γ͔ͨͬͨorz
ͬͨπʔϧ • Bot࣮ • Bot Builder SDK for Node.js •
࿏ઢΛఆ͢Δ෦ • cognitive services custom vision service • ӺΛऔಘ͢Δ෦ • Ӻ͢ͺ͋ͱWebαʔϏε • BotͷσϓϩΠઌ • azure • σϓϩΠͨ͠BotΛWebͰ؆୯ʹެ։͢Δ • microsoft bot framework
ؙࢁͷεςʔλε • ॳΊͯ৮Δ • azure • microsoft bot framework •
গ͠৮ͬͨ͜ͱ͕͋Δ • nodejs • ʮৄ͍͠ʯͱࣗ৴Λ࣋ͬͯݴ͑Δ • Ӻ͢ͺ͋ͱwebαʔϏε
গ͠ઢ…
Ӻ͢ͺ͋ͱ WebαʔϏε
“Ӻ͢ͺ͋ͱ”͕࣋ͭ ༷ʑͳػೳใΛ WebAPIͱͯ͠ఏڙ͠·͢ ͲΜͳαʔϏεʁ
ҊαʔϏεͪΖΜ ަ௨අਫ਼ࢉγεςϜɺ ෆಈ࢈ٻਓαΠτͰΑ͘ݟΔ ʮ௨ۈ/௨ֶ͔Β୳͢ʂʯͰ ΘΕΔ͜ͱ͕ଟ͍Ͱ͢ɻ ࣗࣾαʔϏεͷཪͰଟʑɻ ͲͷΑ͏ʹར༻͞Ε͍ͯΔͷʁ
ຊʹΓ·ͯ͠…
࡞खॱ 1. custom vision serviceͷઃఆ 2. Bot BuilderΛ༻͍ͨBot࣮ 3. BotΛazureʹσϓϩΠ
4. microsoft bot frameworkͷઃఆ
1. custom vision service ͷઃఆ • ҎԼͷURLͰΞΧϯτΛ࡞͠·͢ • https://azure.microsoft.com/ja-jp/services/ cognitive-services/custom-vision-service/
• େ࠼ࢠ͞Μͷqiitaهࣄ͕ຊʹΘ͔Γ͔ͬͨ͢Ͱ͢ • http://qiita.com/annie/items/ 293525901020685ad5f6 • ͜ΕΛΈͳ͕Βϙνϙνઃఆ͍͚ͯͩ͘͠
2. Bot BuilderΛ༻͍ͨ Bot࣮ • Bot Buildernodejs, C#͔બͰ͖ΔͷͰɺ ͓͖ͳํΛ •
ಓͷΓ͍ͷͰɺ͜͜αΫοͱ • ·ͣ࠷ॳɺެࣜυΩϡϝϯτʹॻ͍ͯ͋Δ௨Γ ʹ࣮ߦͯ͠ΈΔͷ͕٢ • https://docs.microsoft.com/en-us/bot- framework/nodejs/bot-builder-nodejs-quickstart • ͜͜ʹՌ(ιʔείʔυ)Λஔ͍ͯ·͢ • https://github.com/hmaruyama/train-finder-bot
2. Bot BuilderΛ༻͍ͨ Bot࣮ • ωοτ্ʹnodejsͷใ͕গͳ͍(ѹతC#) • nodejsͰcustom vision apiΛݺͼग़͢ࡍʹศརͳϥΠϒϥϦ
ͳ͍͔ͳʔͱௐ͍ͯͨΒɺcognitive servicesͷSDK͕ ͋Δ͜ͱΛൃݟ • https://github.com/joshbalfour/node-cognitive-services • ͔͠͠custom vision·ͩະରԠͩͬͨ • custom vision apiɺը૾Λఆ͢ΔAPIΛݺͼग़͢ࡍʹɺ ը૾ϑΝΠϧ·ͨը૾URLΛPOST͢Δೋͭͷํ๏͕͋Δ͕ɺ ը૾ϑΝΠϧͰૹΔํ๏͕nodejsͰͲ͏Δͷ͔Θ͔Βͳ͔ͬͨ
2. Bot BuilderΛ༻͍ͨ Bot࣮ • nodejsͷதͰӺ͢ͺ͋ͱwebαʔϏε ݺͼग़͍ͨ͠ͷͰɺΞΫηεΩʔΛൃߦ͢Δ • https://ekiworld.net/service/lp/webservice/ •
Ӻ͢ͺ͋ͱwebαʔϏεʹɺnodejsͰ͑Δ ศརͳϥΠϒϥϦ༻ҙ͍ͯ͠ͳ͍ͷͰɺ ࣗͰؤு࣮ͬͯ͢Δ
3. BotΛazureʹσϓϩΠ • azureແྉͰΞΧϯτΛ࡞Ͱ͖·͢ • https://azure.microsoft.com/ja-jp/free/ • μογϡϘʔυʹϩάΠϯͨ͠ΒɺʮWebAppʯΛ࡞ • ࡞࣌ʹOSΛબͰ͖ΔΜ͚ͩͲɺ
ʮWindowsʯʹ͢Δͷ͕ແͩͦ͏ • σϓϩΠํ๏Ұ൪؆୯ͦ͏ͳʮϩʔΧϧGitϦϙδτϦʯΛબ͠·ͨ͠ • σϓϩΠ͕ྃͨ͠ΒɺҎԼͷURLΛୟ͍ͯ ͪΌΜͱϨεϙϯε͕ฦΔ͔֬ೝ • http://{{࡞ͨ͠ϦιʔεͷURL}}/api/messages • git push͢Δ͚ͩͰͳΜͰnode্ཱ͕͕ͪΔͷ͔·ͩཧղͰ͖͍ͯͳ͍
4. microsoft bot framework ͷઃఆ • ҎԼͷURLͰΞΧϯτΛ࡞͠·͢ • https://dev.botframework.com/ •
ϩάΠϯͰ͖ͨΒBotΛొ͠·͢ • Botొ࣌ͷΤϯυϙΠϯτ”https”ͳ͜ͱʹҙ • ઌ΄ͲazureͰ࡞ͨ͠ϦιʔεURLhttpsʹ ରԠ͍ͯ͠ΔΆ͍ • https://{{࡞ͨ͠ϦιʔεͷURL}}/api/messages • Botొ࣌ʹදࣔ͞ΕΔMicrosoft App IDͱpassword ޙ΄Ͳར༻͢ΔͷͰͲ͔͜ʹίϐʔ͓ͯ͘͠
• Botొ͕ࡁΜͩΒɺazureͷμογϡϘʔυʹ ͬͯڥมΛઃఆ͢Δ • ʮΞϓϦέʔγϣϯઃఆʯʹͯBotొ࣌ʹ දࣔ͞ΕͨMicrosoft App IDͱpasswordΛ ڥมʹొ •
ڥม໊ιʔείʔυʹهड़ͯ͋͠Γ·͢ 4. microsoft bot framework ͷઃఆ
• bot frameworkʹϩάΠϯ͢Δͱɺskypeslackɺfacebook messangerͳͲҠΓͦ͠͏ͳΞΠςϜ͕ ฒΜͰ͍·͕͢ɺ͜͜Ұ൪؆୯ͦ͏ͳʮWebChatʯΛબ • WebChatΛΫϦοΫ͢ΔͱɺγʔΫϨοτΩʔͱ htmlຒΊࠐΈίʔυ(iframeλά)͕༻ҙ͞Ε͍ͯ·͢ • ٙɿγʔΫϨοτΩʔͳͥೋͭଘࡏ͢Δʁʁ
• iframeλάͷதʹURL͕هड़͞Ε͍ͯΔͷͰɺ URLΛϒϥβͰ։͖·͢ɻͦͷࡍʹ”YOUR_SECRET_HERE” ͷ෦γʔΫϨοτΩʔʹஔ͖͑Δ 4. microsoft bot framework ͷઃఆ
Ͱ͖ͨʂ
ײ • ؆୯ʹBot͕࡞Ͱ͖·ͨ͠ʂ...ͱݴ͍͍ͨͱ͜Ζ ͚ͩͲɺࢥ͍௨Γʹߦ͔ͳ͍໘͕ଟʑ͋ͬͯ ৺͕ંΕͦ͏ͩͬͨ • ׳ΕΔ·ͰਐΊΔͨͼʹ͕͔͔࣌ؒΓͦ͏ • ࣮ࡍͭ·͍ͮͨ࣌Γ߹͍ʹฉ͍ͯղܾ͍ͯͨ͠ •
ͦΕ͕ͳ͔ͬͨΒࠓൃදͰ͖͍ͯͳ͔͔ͬͨ • ࠷ॳΛΓӽ͑Εɺָ͍͠Bot࡞ʹ ࣌ؒΛׂ͚ͦ͏⽃ • ༨ྗ͕͋Εৄ͍͠खॱΛϒϩάʹ·ͱΊΔ͔Ͱ͢
·ͱΊ • ΤίγεςϜͷ͓͔͛Ͱɺগͳ͍ίʔυྔͰ ৭Μͳ͜ͱ͕αΫοͱͰ͖Δ • ͦͷΘΓʹɺ༷ʑͳαʔϏεΛར༻͢Δ͜ͱ ʹͳΔͨΊɺαʔϏεಠࣗͷ༷खॱΛ ཧղ͢Δඞཁ͕͋Δ
·ͱΊ • ͭ·͍ͮͨ࣌ʹɺ ૬ஊͰ͖ΔॴΛ࡞͓ͬͯ͘ͱ҆৺ • ΈΜͳͰॿ͚߹͍͖͍ͬͯͯͨ͠Ͱ͢Ͷ • ͦͷ࣮ݱʹɺ͜ͷίϛϡχςΟ͕ ͏·͘׆༻Ͱ͖ΔΜ͡Όͳ͍͔ͱࢥ͍·͢
ࠂ
ʮ࿏ઢDEిंͯBotʯ Λ͓ʹɺϋϯζΦϯΛ։࠵͢Δ͜ͱ͕ܾఆ 2017/9/26 19:00 ~ ৄࡉܾ·Γ࣍ୈɺ CogbotίϛϡχςΟ facebookάϧʔϓͳͲͰ ͓ΒͤͰ͖Εͱࢥ͍·͢ɻ