Save 37% off PRO during our Black Friday Sale! »

実践Streamlit & Flask - AIプロジェクトをいい感じにする技術(予告編) / Web application development starting with Streamlit

実践Streamlit & Flask - AIプロジェクトをいい感じにする技術(予告編) / Web application development starting with Streamlit

https://2021.pycon.jp/ の発表...のプロトタイプ

#Streamlit #WebDevelopment #DataScience

2c0947c6a28e7f771ebd9859ecf54e5c?s=128

Shinichi Nakagawa

September 22, 2021
Tweet

Transcript

  1. ʲԾʳ࣮ફStreamlit & Flask Shinichi Nakagawa(@shinyorke) kawasaki.rb #100 9/22 ※PyCon JP

    2021ͷนଧͪʢσϞVerʣͰ͢ AIϓϩδΣΫτΛPoC͔Βຊ൪·Ͱ͍͍ײ͡ʹண஍ͤ͞ΔPythonicͳ΍Γ͔ͨ
  2. Who am I ?ʢ͓લ୭Αʣ • Shinichi Nakagawaʢத઒ ৳Ұʣ • େ఍ͷSNSͰʮshinyorkeʢ͠ΜΑʔ͘ʣʯͱ໊৐͍ͬͯ·͢

    • Software Engineer & Data ScientistʢؚΉ⽁ʣ • ʲݩʳJX௨৴ࣾγχΞΤϯδχΞ 
 ※9݄·Ͱ͓ੈ࿩ʹͳΓ·ͨ͠🙇&10݄͔ΒͲ͔͜ͷίϯαϧͷਓ • #Python #DataScience #Baseball⚾ #SABRmetrics #σʔλج൫
  3. ͜ͷ͓࿩͸ • ͓࢓ࣄͰʮAIͰ͍͍ײ͡ʹͯ͘͠Εʯʮ2ϲ݄ޙʹ͸ຊ൪ϓϩμΫτ͕ ඞཁͳΜ΍ʂʯͱ͔ݴΘΕͨ࣌ʹɺࢲshinyorke͕ΤϯδχΞͱͯ͠Կ Λ͔ͨ͠?ͱ͍͏࣮࿩ʹج͍ͮͨ෺ޠͰ͢ • ϓϩτλΠϓΛ࢖ͬͨࣾ಺Ͱͷ֓೦ݕূʢPoCʣ͔Βɺຊ൪ͰಥવTV ๒ʹͿͪ౰ͨΔʢߴෛՙରࡦʣ·ͰԿΛ͔ͨ͠࿩͠·͢ • ࠓճ͸୹ॖ൛ʢนଧͪ൛ʣͳͷͰͱΓ͋͑ͣPoCͷ࿩Λ

  4. ͓͠ͳ͕͖ • AIϓϩδΣΫτΛ੒ޭͤ͞ΔͨΊʹඞཁͳߟ͑ํͱελϯε • StreamlitΛ࢖ͬͨര଎ϓϩτλΠϐϯά • ʲTBDʳStreamlitͳϓϩτλΠϓΛݩʹFlaskͰຊ൪ΞϓϦ • ʲTBDʳ஌ͬͯΔͱศར͔΋͠Εͳ͍Tips. GCPͱ͔ը૾ੜ੒ͱ͔.

    ʲTBDʳͷ࿩͸PyCon JP 2021ຊ൪Ͱొ৔ʢ͢Δ͔΋ʣ
  5. AIϓϩδΣΫτʹඞཁͳߟ͑ํ is 🤔 • ػහʢAgileʣʹ, ಈ͘΋ͷϕʔεͰίϛϡχέʔγϣϯ • σʔλαΠΤϯςΟετͱΤϯδχΞͷҧ͍Λཧղ͢Δ ଞʹ΋Ұഋ͋Γͦ͏Ͱ͕͢ͻͱ·ͣ͜ͷ2͕ͭ͋Δͱ͍͍͔ͳ

  6. Agileͳ։ൃ • ෆ࣮֬ੑ͕ߴ͍, AIɾػցֶशͳϓϩδΣΫτͦ͜ 
 ʮಈ͘ιϑτ΢ΣΞʯΛݩʹ։ൃ͠Α͏ • PoCͱ͸͍͑, ͳΔ΂͘ຊ൪͕ΠϝʔδͰ͖Δಈ͘ 


    ΞϓϦέʔγϣϯͰձ࿩͢Δͷ͕͍͍ͱࢥ͏ʢೝࣝҧ͍ͷ๷ࢭʣ • Ұํ, खΛൈ͚Δॴ͸खΛൈ͖·͘Ζ͏ 
 υΩϡϝϯτΛἧ͑Δͱ͔, σβΠϯ੔͑Δͱ͔etc…
  7. ߟ͑ํ͸ΞδϟΠϧϚχϑΣετͦͷ΋ͷ ࢲͨͪ͸ɺιϑτ΢ΣΞ։ൃͷ࣮ફ ͋Δ͍͸࣮ફΛखॿ͚Λ͢Δ׆ಈΛ௨ͯ͡ɺ ΑΓΑ͍։ൃํ๏Λݟ͚ͭͩͦ͏ͱ͍ͯ͠Δɻ ͜ͷ׆ಈΛ௨ͯ͠ɺࢲͨͪ͸ҎԼͷՁ஋ʹࢸͬͨɻ ϓϩηε΍πʔϧΑΓ΋ݸਓͱର࿩Λɺ แׅతͳυΩϡϝϯτΑΓ΋ಈ͘ιϑτ΢ΣΞΛɺ ܖ໿ަবΑΓ΋ސ٬ͱͷڠௐΛɺ ܭըʹै͏͜ͱΑΓ΋มԽ΁ͷରԠΛɺ Ձ஋ͱ͢Δɻ͢ͳΘͪɺࠨهͷ͜ͱ͕ΒʹՁ஋͕͋Δ͜ͱΛ

    ೝΊͳ͕Β΋ɺࢲͨͪ͸ӈهͷ͜ͱ͕ΒʹΑΓՁ஋Λ͓͘ɻ https://agilemanifesto.org/iso/ja/manifesto.html
  8. ΤϯδχΞͱσʔλαΠΤϯςΟετͷҧ͍ • ϓϩμΫτΛ։ൃʢӡ༻ʣ͢ΔΤϯδχΞͱ 
 AIͳ࢓ࣄΛ͢ΔσʔλαΠΤϯςΟετ͸ಘҙෆಘҙ͕ҧ͏ • ྫ͑͹ΤϯδχΞ͸όʔδϣϯ؅ཧɾςετɾCIΛ΍Δ͕ 
 σʔλαΠΤϯςΟετ͸Ͱ͖Δਓ΋͍Ε͹Ͱ͖ͳ͍ਓ΋͍Δ 


    ʢͳ͓, ྆ํͰ͖ΔԽ͚෺͸গ਺Ͱ͕͢ଘࡏ͢Δʣ • ྆ऀʹٻΊΒΕΔεΩϧηοτɾελϯε͸ͥΜͥΜҧ͏ 
 ಉ͡PythonΛಡΈॻ͖͢Δʹͯ͠΋Ձ஋؍͕શ͘ҟͳΔ
  9. https://shinyorke.hatenablog.com/entry/ml-ops-and-engineering

  10. Agile͔͍͍ͭײ͡ʹίϥϘͯ͠΍Δํ๏ • ΤϯδχΞ΋σʔλαΠΤϯςΟετ΋WebΞϓϦΛϕʔεʹ • Jupyterͱຊ֨తͳWebΞϓϦͷؒͷࢠΈ͍ͨͳଘࡏ • ͻͱ·ͣϒϥ΢βͰݟͤΔఔ౓ͷ࠷௿ݶͷΞϓϦ • ࣮ݧίʔυͱϓϩμΫτίʔυͷҰ؏ੑ •

    ίϛϡχέʔγϣϯ͕ൃੜ͢ΔॴͰςετ • PoC΋ຊ൪΋ࣅͨΑ͏ͳߏ੒Ͱͭ͘ΔʢՄೳͳݶΓʣ
  11. Jupyterͱຊ֨తͳWebΞϓϦͷ 
 ؒͷࢠΈ͍ͨͳଘࡏ ͦΕ͕Streamlit

  12. StreamlitΛ࢖ͬͨര଎ϓϩτλΠϐϯά ࠓճ͸ʮΦΦλχαϯͷຊྥଧΛAI͕༧ଌ͢Δʯͱ͍͏ ࡶͳςʔϚͰ঺հ͠·͢

  13. ͜Μʹͪ͸Streamlitɹ˞ຊ൪Ͱ঺հ༧ఆ • ͻͱ·ͣಈ͔͢ɾݟͤΔ • ৭ʑ΍ͬͯΈΔʢformΛͭ͘ΔɾσʔλΛݟͤΔʣ • ΈΜͳʹ৮ͬͯ΋Β͏

  14. ࠓ೔͸ͱΓ͋͑ͣσϞΛݟͤ·͢ https://twitter.com/shinyorke/status/1439933987120562181?s=20

  15. ʲ༧ࠂʳPyCon JP 2021ຊ൪ͷ಺༰ • Streamlitͷݡ͍࢖͍ํ. ։ൃ͔ΒνʔϜ΁ͷڞ༗ɾσϞ·Ͱ • Streamlit͔ΒFlask΍FastAPIʹॻ͖׵͑Δલʹ΍Δ΂͖͜ͱ 
 ςετͱ͔ϦϑΝΫλϦϯάӠʑʢҰ෦ϒϩάΛॻ͘༧ఆʣ

    • Google App Engine΋͘͠͸Cloud RunʹΞϓϦΛσϓϩΠ 
 ௒༗໊ͳTV൪૊ͷTV๒ʹͲ͏΍ͬͯ଱͔͑ͨͷ͸ͳ͠
  16. 2021/10/16 11:40ϓϨΠϘʔϧ⽁ https://2021.pycon.jp/ དྷͯͶ

  17. ήʔϜηοτ⚾ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠. Shinichi Nakagawa(Twitter/Facebook/etc… @shinyorke)