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
実践Streamlit & Flask - AIプロジェクトをいい感じにする技術(予告編) / Web application development starting with Streamlit
Search
Shinichi Nakagawa
September 22, 2021
Programming
0
400
実践Streamlit & Flask - AIプロジェクトをいい感じにする技術(予告編) / Web application development starting with Streamlit
https://2021.pycon.jp/
の発表...のプロトタイプ
#Streamlit #WebDevelopment #DataScience
Shinichi Nakagawa
September 22, 2021
Tweet
Share
More Decks by Shinichi Nakagawa
See All by Shinichi Nakagawa
Terraform, GitHub Actions, Cloud Buildでデータ基盤をProvisioningする / Data Platform provisioning for Google Cloud and Terraform
shinyorke
2
2.1k
Cloud RunとCloud PubSubでサーバレスなデータ基盤2024 with Terraform / Cloud Run and PubSub with Terraform
shinyorke
8
2.1k
自らを強いエンジニアにするための3つの習慣 / I need to be myself, I can't be no one else
shinyorke
76
53k
阪神タイガース優勝のひみつ - Pythonでシュッと調べた件 / SABRmetrics for Python
shinyorke
1
990
Pythonとクラウドと野球の推し活. / Baseball Data Platform for Python and Google Cloud
shinyorke
2
2.3k
月額コーヒー3.34杯分のコストでオオタニサンの活躍を見守るデータ基盤のはなし / Pyhack Con
shinyorke
2
390
俺のDXを実現するためのサーバレスなデータ基盤開発と運用 / Serverless Data Platform and Baseball
shinyorke
5
11k
機械学習エンジニアが目指すキャリアパスとその実話 / My Journey to Become a ML Engineer
shinyorke
6
14k
一人でも小さく始められるGoogle Cloudで実現するほぼサーバレスなデータ基盤 / Serverless Dataplatform for Google Cloud
shinyorke
0
450
Other Decks in Programming
See All in Programming
『Railsオワコン』と言われる時代に、なぜブルーモ証券はRailsを選ぶのか
free_world21
1
400
SwiftUIで使いやすいToastの作り方 / How to build a Toast system which is easy to use in SwiftUI
lovee
3
190
ペパボOpenTelemetry革命
pyama86
1
100
Kotlin Multiplatform at Stable and Beyond (Android Makers 2024)
zsmb
0
540
Ruby Pattern Matching
bkuhlmann
0
930
Ruby Function Composition
bkuhlmann
1
340
Komplexe Oberflächen mit SVG und der Web Animation API
joergneumann
0
690
VS Code をプロダクトにどう取り込むか
onomax
1
780
Anthropic Cookbook のおすすめレシピ
schroneko
7
1.3k
GraphQLサーバの構成要素を整理する #ハッカー鮨 #tsukijigraphql / graphql server technology selection
izumin5210
4
920
Polars入門
daikikatsuragawa
1
200
Folding Cheat Sheet #4
philipschwarz
PRO
0
100
Featured
See All Featured
The Invisible Customer
myddelton
114
12k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
79
44k
Unsuck your backbone
ammeep
664
57k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
21
1.9k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.7k
Mobile First: as difficult as doing things right
swwweet
217
8.6k
Debugging Ruby Performance
tmm1
70
11k
jQuery: Nuts, Bolts and Bling
dougneiner
60
7.2k
Build The Right Thing And Hit Your Dates
maggiecrowley
25
2k
Bash Introduction
62gerente
605
210k
How to Ace a Technical Interview
jacobian
273
22k
The Language of Interfaces
destraynor
151
23k
Transcript
ʲԾʳ࣮ફStreamlit & Flask Shinichi Nakagawa(@shinyorke) kawasaki.rb #100 9/22 ※PyCon JP
2021ͷนଧͪʢσϞVerʣͰ͢ AIϓϩδΣΫτΛPoC͔Βຊ൪·Ͱ͍͍ײ͡ʹணͤ͞ΔPythonicͳΓ͔ͨ
Who am I ?ʢ͓લ୭Αʣ • Shinichi Nakagawaʢத ৳Ұʣ • େͷSNSͰʮshinyorkeʢ͠ΜΑʔ͘ʣʯͱ໊͍ͬͯ·͢
• Software Engineer & Data ScientistʢؚΉ⽁ʣ • ʲݩʳJX௨৴ࣾγχΞΤϯδχΞ ※9݄·Ͱ͓ੈʹͳΓ·ͨ͠🙇&10݄͔ΒͲ͔͜ͷίϯαϧͷਓ • #Python #DataScience #Baseball⚾ #SABRmetrics #σʔλج൫
͜ͷ͓ • ͓ࣄͰʮAIͰ͍͍ײ͡ʹͯ͘͠Εʯʮ2ϲ݄ޙʹຊ൪ϓϩμΫτ͕ ඞཁͳΜʂʯͱ͔ݴΘΕͨ࣌ʹɺࢲshinyorke͕ΤϯδχΞͱͯ͠Կ Λ͔ͨ͠?ͱ͍͏࣮ʹج͍ͮͨޠͰ͢ • ϓϩτλΠϓΛͬͨࣾͰͷ֓೦ݕূʢPoCʣ͔Βɺຊ൪ͰಥવTV ๒ʹͿͪͨΔʢߴෛՙରࡦʣ·ͰԿΛ͔ͨ͠͠·͢ • ࠓճॖ൛ʢนଧͪ൛ʣͳͷͰͱΓ͋͑ͣPoCͷΛ
͓͠ͳ͕͖ • AIϓϩδΣΫτΛޭͤ͞ΔͨΊʹඞཁͳߟ͑ํͱελϯε • StreamlitΛͬͨരϓϩτλΠϐϯά • ʲTBDʳStreamlitͳϓϩτλΠϓΛݩʹFlaskͰຊ൪ΞϓϦ • ʲTBDʳͬͯΔͱศར͔͠Εͳ͍Tips. GCPͱ͔ը૾ੜͱ͔.
ʲTBDʳͷPyCon JP 2021ຊ൪Ͱొʢ͢Δ͔ʣ
AIϓϩδΣΫτʹඞཁͳߟ͑ํ is 🤔 • ػහʢAgileʣʹ, ಈ͘ͷϕʔεͰίϛϡχέʔγϣϯ • σʔλαΠΤϯςΟετͱΤϯδχΞͷҧ͍Λཧղ͢Δ ଞʹҰഋ͋Γͦ͏Ͱ͕͢ͻͱ·ͣ͜ͷ2͕ͭ͋Δͱ͍͍͔ͳ
Agileͳ։ൃ • ෆ࣮֬ੑ͕ߴ͍, AIɾػցֶशͳϓϩδΣΫτͦ͜ ʮಈ͘ιϑτΣΞʯΛݩʹ։ൃ͠Α͏ • PoCͱ͍͑, ͳΔ͘ຊ൪͕ΠϝʔδͰ͖Δಈ͘
ΞϓϦέʔγϣϯͰձ͢Δͷ͕͍͍ͱࢥ͏ʢೝࣝҧ͍ͷࢭʣ • Ұํ, खΛൈ͚ΔॴखΛൈ͖·͘Ζ͏ υΩϡϝϯτΛἧ͑Δͱ͔, σβΠϯ͑Δͱ͔etc…
ߟ͑ํΞδϟΠϧϚχϑΣετͦͷͷ ࢲͨͪɺιϑτΣΞ։ൃͷ࣮ફ ͋Δ͍࣮ફΛखॿ͚Λ͢Δ׆ಈΛ௨ͯ͡ɺ ΑΓΑ͍։ൃํ๏Λݟ͚ͭͩͦ͏ͱ͍ͯ͠Δɻ ͜ͷ׆ಈΛ௨ͯ͠ɺࢲͨͪҎԼͷՁʹࢸͬͨɻ ϓϩηεπʔϧΑΓݸਓͱରΛɺ แׅతͳυΩϡϝϯτΑΓಈ͘ιϑτΣΞΛɺ ܖަবΑΓސ٬ͱͷڠௐΛɺ ܭըʹै͏͜ͱΑΓมԽͷରԠΛɺ Ձͱ͢Δɻ͢ͳΘͪɺࠨهͷ͜ͱ͕ΒʹՁ͕͋Δ͜ͱΛ
ೝΊͳ͕Βɺࢲͨͪӈهͷ͜ͱ͕ΒʹΑΓՁΛ͓͘ɻ https://agilemanifesto.org/iso/ja/manifesto.html
ΤϯδχΞͱσʔλαΠΤϯςΟετͷҧ͍ • ϓϩμΫτΛ։ൃʢӡ༻ʣ͢ΔΤϯδχΞͱ AIͳࣄΛ͢ΔσʔλαΠΤϯςΟετಘҙෆಘҙ͕ҧ͏ • ྫ͑ΤϯδχΞόʔδϣϯཧɾςετɾCIΛΔ͕ σʔλαΠΤϯςΟετͰ͖Δਓ͍ΕͰ͖ͳ͍ਓ͍Δ
ʢͳ͓, ྆ํͰ͖ΔԽ͚গͰ͕͢ଘࡏ͢Δʣ • ྆ऀʹٻΊΒΕΔεΩϧηοτɾελϯεͥΜͥΜҧ͏ ಉ͡PythonΛಡΈॻ͖͢Δʹͯ͠Ձ؍͕શ͘ҟͳΔ
https://shinyorke.hatenablog.com/entry/ml-ops-and-engineering
Agile͔͍͍ͭײ͡ʹίϥϘͯ͠Δํ๏ • ΤϯδχΞσʔλαΠΤϯςΟετWebΞϓϦΛϕʔεʹ • Jupyterͱຊ֨తͳWebΞϓϦͷؒͷࢠΈ͍ͨͳଘࡏ • ͻͱ·ͣϒϥβͰݟͤΔఔͷ࠷ݶͷΞϓϦ • ࣮ݧίʔυͱϓϩμΫτίʔυͷҰ؏ੑ •
ίϛϡχέʔγϣϯ͕ൃੜ͢ΔॴͰςετ • PoCຊ൪ࣅͨΑ͏ͳߏͰͭ͘ΔʢՄೳͳݶΓʣ
Jupyterͱຊ֨తͳWebΞϓϦͷ ؒͷࢠΈ͍ͨͳଘࡏ ͦΕ͕Streamlit
StreamlitΛͬͨരϓϩτλΠϐϯά ࠓճʮΦΦλχαϯͷຊྥଧΛAI͕༧ଌ͢Δʯͱ͍͏ ࡶͳςʔϚͰհ͠·͢
͜ΜʹͪStreamlitɹ˞ຊ൪Ͱհ༧ఆ • ͻͱ·ͣಈ͔͢ɾݟͤΔ • ৭ʑͬͯΈΔʢformΛͭ͘ΔɾσʔλΛݟͤΔʣ • ΈΜͳʹ৮ͬͯΒ͏
ࠓͱΓ͋͑ͣσϞΛݟͤ·͢ https://twitter.com/shinyorke/status/1439933987120562181?s=20
ʲ༧ࠂʳPyCon JP 2021ຊ൪ͷ༰ • Streamlitͷݡ͍͍ํ. ։ൃ͔ΒνʔϜͷڞ༗ɾσϞ·Ͱ • Streamlit͔ΒFlaskFastAPIʹॻ͖͑ΔલʹΔ͖͜ͱ ςετͱ͔ϦϑΝΫλϦϯάӠʑʢҰ෦ϒϩάΛॻ͘༧ఆʣ
• Google App Engine͘͠Cloud RunʹΞϓϦΛσϓϩΠ ༗໊ͳTV൪ͷTV๒ʹͲ͏͔ͬͯ͑ͨͷͳ͠
2021/10/16 11:40ϓϨΠϘʔϧ⽁ https://2021.pycon.jp/ དྷͯͶ
ήʔϜηοτ⚾ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠. Shinichi Nakagawa(Twitter/Facebook/etc… @shinyorke)