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
Alexaスキルを安心安全に開発運用するためのAWS自動化ソリューション
Search
chao2suke
February 23, 2019
Technology
0
660
Alexaスキルを安心安全に開発運用するためのAWS自動化ソリューション
2019/02/23 JAWS Days 2019 登壇資料
chao2suke
February 23, 2019
Tweet
Share
More Decks by chao2suke
See All by chao2suke
天井カメラで捉えた人物をコンピュータビジョンで解析した3年間のトライアンドエラーとこれから
chao2suke
0
2.2k
結局普通のエンジニアが今SageMaker使うと何ができるのかわかるLT
chao2suke
0
1.6k
機械学習の知識ゼロでも動かせるAIツールキットの世界
chao2suke
0
1.6k
「今」のAI技術と「3年後」のAI技術のご紹介
chao2suke
0
1k
Alexaに詳しい人は普段Alexaをどう扱っているか
chao2suke
0
850
奥深きAPLの世界
chao2suke
0
120
Alexaスキル & レジレスCafeにおけるStripe活用の取り組み
chao2suke
0
1.9k
Alexa x 機械学習でスキルをよりリッチにする方法
chao2suke
0
1.6k
#AAJUG vol.2 APL ハンズオン
chao2suke
0
2.6k
Other Decks in Technology
See All in Technology
CData Virtuality 日本ローンチイベントのKeynote
cdataj
0
100
Slackbot × RAG で実現する社内情報検索の最適化
howdy39
2
330
入門 KRR
donkomura
0
110
リスクから学ぶKubernetesコンテナセキュリティ/k8s-risk-and-security
mochizuki875
1
320
AWS Lambdaで実現するスケーラブルで低コストなWebサービス構築/YAPC::Hakodate2024
fujiwara3
7
3.3k
分析者起点の企画を成功させた連携面の工夫
lycorptech_jp
PRO
1
250
【shownet.conf_】AI技術とUX監視の応用でShowNetの基盤を支えるモニタリングシステム
shownet
PRO
0
380
【完全版】Dify - LINE Bot連携 考え方と実用テクニック
uezo
1
330
第45回 MLOps 勉強会 - ML Test Score を用いた機械学習システムの定量的なアセスメント
masatakashiwagi
3
310
YAPC::Hakodateの映像記録を支える技術
godan
4
230
【㈱アイモバイル】エンジニア向け会社説明資料
imobile
0
470
【shownet.conf_】コンピューティング資源を統合した分散コンテナ基盤の進化
shownet
PRO
0
410
Featured
See All Featured
Practical Orchestrator
shlominoach
186
10k
Navigating Team Friction
lara
183
14k
RailsConf 2023
tenderlove
28
840
Designing the Hi-DPI Web
ddemaree
280
34k
Thoughts on Productivity
jonyablonski
67
4.2k
How to Ace a Technical Interview
jacobian
275
23k
The Mythical Team-Month
searls
218
43k
Agile that works and the tools we love
rasmusluckow
327
21k
Fontdeck: Realign not Redesign
paulrobertlloyd
81
5.2k
The Brand Is Dead. Long Live the Brand.
mthomps
53
38k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Clear Off the Table
cherdarchuk
91
320k
Transcript
AlexaεΩϧΛ ҆৺ɾ҆શʹ։ൃӡ༻͢ΔͨΊͷ AWSࣗಈԽιϦϡʔγϣϯ Ϋϥεϝιουגࣜձࣾ ͤʔͷ
ࣗݾհ • ਗ਼߶࢙ʢͤʔͷʣ • Ϋϥεϝιουגࣜձࣾ AIιϦϡʔγϣϯ෦ ࡳຈΦϑΟεॴଐ AlexaςΫχΧϧΤόϯδΣϦετ /
VUIΞʔΩςΫτ • ࠷ۙAWS Certified Alexa Skill Builder - SpecialtyΛड͚ͯ AWSࢼݧݴޠ͕ͳͯ͘ײಈ
εΩϧΛͲͷΑ͏ʹ࡞͍ͬͯ·͔͢ʁ
؆୯͚ͩʹ༉அ͕ͪ͠ ɾ։ൃऀίϯιʔϧʢGUIʣ ͦͷͰͳΜͱͳܾ͘Ίͯ͠·͍͕ͪ ɾόοΫΤϯυʢLambdaʣ͕1ϖʔδʢindex.jsʣͷΈͰॻ ͚ΔαΠζͩͱɺ͍Ͱॻ͍ͯ͠·͍͕ͪ ͔ͭͯͷAWS͕ͦ͏ͩͬͨ
AWSΤϯδχΞϦϯάͷ εςοϓΞοϓ ϚωʔδϝϯτίϯιʔϧͰϙνϙν࡞Δ CLI & APIͰίʔυԽͯ͠ཧ͢Δ όονԽ & ௨ػೳΛՃͯ͠CI/CD͢Δ
AlexaΛίʔυཧ͢Δ ϑϩϯτΤϯυଆ ʢIntent/SlotɺΤϯυϙΠϯτཧ) όοΫΤϯυଆ ʢ࣮ίʔυʣ SMAPI (Skill Management API) ASK
CLI AWS Lambda
Codeܑఋ
CodeܑఋΛͬͨ Alexaڥߏங
Point ɾCodeStar(SAM)Λ͏ͱLambdaͷFunction໊ʹ ༨ܭͳpostfix͕ͭ͘ͷ͕ݏ => Apex(SalesForceͷΞϨ͡Όͳ͍ํʣ ΛͬͯLambdaΛDeploy ɾApexΛೖΕͨDockerΛECRʹηοτ => ΧελϜϏϧυϞσϧͰୟ͘ ɾߏங͕͍࣌ؒ(ࣗಈπʔϧ͋Δ͋Δʣ
=> CodePipelineΛͬͯSNSʹ݁ՌΛ௨ɺ ޙ͖ͳํ๏Ͱ௨͢Δ ɾΫϥΠΞϯτʹޙ΄Ͳ εΩϧτϥϯεϑΝʔ͢Δ͜ͱΛߟྀͯ͠ CodeCommitͰͳ͘GithubΛ࠾༻
buildspec.yml version: 0.2 env: variables: SKILL_NAME: demo STAGE: dev AWS_ACCOUNT_ID:
xxxxxxxxxxxx phases: pre_build: commands: - mkdir /root/.ask - "aws s3 sync s3://askconfig-${AWS_ACCOUNT_ID}-${AWS_REGION} /root/.ask/" - cd functions/skill - yarn - cd ../../
buildspec.yml build: commands: - echo Build started on `date` -
"/usr/local/bin/apex --env ${STAGE} deploy skill" - "aws lambda add-permission --statement-id 1 --function-name ${SKILL_NAME}_$ {STAGE} --action lambda:invokeFunction --principal alexa-appkit.amazon.com || true" - cd model - "sh build.${STAGE}.sh" post_build: commands: - echo Build completed on `date`
ෳڥ࡞ͬͯ·͔͢ʁ
ࣄͰΤϯδχΞϦϯά͢Δ࣌ͷجૅ ։ൃڥͰ։ൃ εςʔδϯάͰ͓٬༷֬ೝɺOKͳΒຊ൪ ෆ۩߹εςʔδϯάͰ࠶ݱɺ։ൃڥͰम෮
ຊ൪ڥAmazonνʔϜʹΑΔ৹͕ࠪ͋Δ ʢ͍͍ͩͨ5Ӧۀʣ AlexaͰෳڥΛ࡞ΔϙΠϯτ όοΫΤϯυίʔυ৹ࠪର֎
AlexaͰෳڥΛ࡞ΔϙΠϯτ ࣗಈͰΞοϓσʔτ͢ΔͱϑϩϯτͱόοΫʹ όʔδϣϯࠩҟ͕ग़Δ
ΤΠϦΞεΛ͏
ΤΠϦΞεΛ༻͍ͨෳڥߏங
ɾεςʔδϯάͱຊ൪ͳΔ͘ಉ͡ʹ͓͖͍ͯͨ͠ ͷͰReleaseϒϥϯνΛΘͣmasterʹ౷Ұ ɾώϡʔϚϯΤϥʔʹΑΔΦϖϛεΛ͙ͨΊ ΤΠϦΞεͱόʔδϣϯͷඥ͚ ͋͑ͯखಈͰߦ͏ ɾApexͷproject.json project.dev.json / project.prd.jsonͷ2छྨɺ config(ϩάείʔϓͳͲΛཧʣ
dev/stg/prdͷ3छྨ Point
ଞʹ͍Ζ͍Ζͬͯ·͕͢ ͦΕ·ͨผͷ
·ͱΊ ɾࠓ·Ͱͷ։ൃϊϋ Alexa։ൃʹͦͷ··͑·͢ ɾLambdaόʔδϣχϯάͯ͠ ΤΠϦΞεͰཧ͠·͠ΐ͏ ɾCodeBuildʹςετπʔϧΛಥͬࠐΜͰ CI/CDͰճ͠·͠ΐ͏