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プロジェクトをいい感じにする技術(予告編) /...
Search
Shinichi Nakagawa
September 22, 2021
Programming
0
470
実践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
実践Dash - 手を抜きながら本気で作るデータApplicationの基本と応用 / Dash for Python and Baseball
shinyorke
2
1.2k
Terraform, GitHub Actions, Cloud Buildでデータ基盤をProvisioningする / Data Platform provisioning for Google Cloud and Terraform
shinyorke
2
2.8k
Cloud RunとCloud PubSubでサーバレスなデータ基盤2024 with Terraform / Cloud Run and PubSub with Terraform
shinyorke
10
2.8k
自らを強いエンジニアにするための3つの習慣 / I need to be myself, I can't be no one else
shinyorke
77
58k
阪神タイガース優勝のひみつ - Pythonでシュッと調べた件 / SABRmetrics for Python
shinyorke
1
1.3k
Pythonとクラウドと野球の推し活. / Baseball Data Platform for Python and Google Cloud
shinyorke
2
2.7k
月額コーヒー3.34杯分のコストでオオタニサンの活躍を見守るデータ基盤のはなし / Pyhack Con
shinyorke
2
460
俺のDXを実現するためのサーバレスなデータ基盤開発と運用 / Serverless Data Platform and Baseball
shinyorke
5
11k
機械学習エンジニアが目指すキャリアパスとその実話 / My Journey to Become a ML Engineer
shinyorke
9
16k
Other Decks in Programming
See All in Programming
Realtime API 入門
riofujimon
0
150
聞き手から登壇者へ: RubyKaigi2024 LTでの初挑戦が 教えてくれた、可能性の星
mikik0
1
140
ペアーズにおけるAmazon Bedrockを⽤いた障害対応⽀援 ⽣成AIツールの導⼊事例 @ 20241115配信AWSウェビナー登壇
fukubaka0825
6
2.1k
Missing parts when designing and implementing Android UI
ericksli
0
220
Nurturing OpenJDK distribution: Eclipse Temurin Success History and plan
ivargrimstad
0
1.1k
Arm移行タイムアタック
qnighy
0
350
Modular Monolith Monorepo ~シンプルさを保ちながらmonorepoのメリットを最大化する~
yuisakamoto
9
1k
EMになってからチームの成果を最大化するために取り組んだこと/ Maximize team performance as EM
nashiusagi
0
100
A Journey of Contribution and Collaboration in Open Source
ivargrimstad
0
1.1k
イベント駆動で成長して委員会
happymana
1
340
距離関数を極める! / SESSIONS 2024
gam0022
0
300
CSC509 Lecture 12
javiergs
PRO
0
160
Featured
See All Featured
Navigating Team Friction
lara
183
14k
Docker and Python
trallard
40
3.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Visualization
eitanlees
145
15k
A better future with KSS
kneath
238
17k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
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)