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
PRO
September 22, 2021
Programming
0
490
実践Streamlit & Flask - AIプロジェクトをいい感じにする技術(予告編) / Web application development starting with Streamlit
https://2021.pycon.jp/
の発表...のプロトタイプ
#Streamlit #WebDevelopment #DataScience
Shinichi Nakagawa
PRO
September 22, 2021
Tweet
Share
More Decks by Shinichi Nakagawa
See All by Shinichi Nakagawa
実践Dash - 手を抜きながら本気で作るデータApplicationの基本と応用 / Dash for Python and Baseball
shinyorke
PRO
2
2.1k
Terraform, GitHub Actions, Cloud Buildでデータ基盤をProvisioningする / Data Platform provisioning for Google Cloud and Terraform
shinyorke
PRO
2
3k
Cloud RunとCloud PubSubでサーバレスなデータ基盤2024 with Terraform / Cloud Run and PubSub with Terraform
shinyorke
PRO
9
3.5k
自らを強いエンジニアにするための3つの習慣 / I need to be myself, I can't be no one else
shinyorke
PRO
81
80k
阪神タイガース優勝のひみつ - Pythonでシュッと調べた件 / SABRmetrics for Python
shinyorke
PRO
1
1.3k
Pythonとクラウドと野球の推し活. / Baseball Data Platform for Python and Google Cloud
shinyorke
PRO
2
2.8k
月額コーヒー3.34杯分のコストでオオタニサンの活躍を見守るデータ基盤のはなし / Pyhack Con
shinyorke
PRO
2
480
俺のDXを実現するためのサーバレスなデータ基盤開発と運用 / Serverless Data Platform and Baseball
shinyorke
PRO
5
12k
機械学習エンジニアが目指すキャリアパスとその実話 / My Journey to Become a ML Engineer
shinyorke
PRO
10
17k
Other Decks in Programming
See All in Programming
WebDriver BiDiとは何なのか
yotahada3
1
150
クリーンアーキテクチャから見る依存の向きの大切さ
shimabox
3
620
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
560
Grafana Cloudとソラカメ
devoc
0
170
ファインディLT_ポケモン対戦の定量的分析
fufufukakaka
0
760
Multi Step Form, Decentralized Autonomous Organization
pumpkiinbell
1
760
GoとPHPのインターフェイスの違い
shimabox
2
190
JavaScriptツール群「UnJS」を5分で一気に駆け巡る!
k1tikurisu
9
1.8k
メンテが命: PHPフレームワークのコンテナ化とアップグレード戦略
shunta27
0
150
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
0
230
PHPのバージョンアップ時にも役立ったAST
matsuo_atsushi
0
130
お前もAI鬼にならないか?👹Bolt & Cursor & Supabase & Vercelで人間をやめるぞ、ジョジョー!👺
taishiyade
7
4.1k
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Typedesign – Prime Four
hannesfritz
40
2.5k
A Philosophy of Restraint
colly
203
16k
Code Review Best Practice
trishagee
67
18k
The Cult of Friendly URLs
andyhume
78
6.2k
Become a Pro
speakerdeck
PRO
26
5.1k
Embracing the Ebb and Flow
colly
84
4.6k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Faster Mobile Websites
deanohume
306
31k
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)