[๋ถ์คํธ์บ ํ AI Tech]WEEK 08_DAY 36
๐ฐ ๊ฐ๋ณํ์ต
[5] Notebook ๋ฒ ์ด์ค - Voila
1. Voila
1) Notebook ๋ฒ ์ด์ค๋ก ํ๋กํ ํ์ ๋ง๋ค๊ธฐ
- ํ ์คํธ๋ฅผ ์ํด ์ถ๊ฐ ํ๊ฒฝ ์ค์ ์ด ํ์ํจ
- ์ฌ๋๋ค๊ณผ ํ ์คํธํ ์ ์๋ ํ๋กํ ํ์ ์ด ํ์
2) Voila
- Jupyter Notebook์์ ๋ณ๋์ ์ฝ๋ ์ถ๊ฐ ์์ด ํ๋กํ ํ์ ์ ๋ง๋ค ์ ์์
- ์๋์ ๋ชฉ์ ์ ๋์๋ณด๋
- ๋ค๋ฅธ ๋์๋ณด๋(Superset, Metabase, Redash, Tableau)๋ ๊ฐ๋ฐ ๋ฆฌ์์ค์ ์ ์ง๋ณด์๊ฐ ํ์ํจ
3) Voila์ ์ฅ์
- Jupyter Notebook ๊ฒฐ๊ณผ๋ฅผ ์ฝ๊ฒ ์น ํํ๋ก ๋์ธ ์ ์์
- ipywidget, ipyleaflet ๋ฑ ์ฌ์ฉ ๊ฐ๋ฅ
- Jupyter Notebook์ extension์ ์์
- Python, Julia, C++ ์ฝ๋ ์ง์
- ๊ณ ์ ํ ํ ํ๋ฆฟ ์์ฑ ๊ฐ๋ฅ
- ์ฌ์ด ๋ฌ๋์ปค๋ธ
4) Voila ์ฌ์ฉ์ TIP
- strip_sources=False : Volila์์ ์ฝ๋๋ ๋ณด์
volila voila_basic.ipynb --strip_sources=False
- cull_interval : idle ์ปค๋์ ํ์ธํ ๊ฐ๊ฒฉ(์ด)
- cull_idle_timeout : ์ปค๋์ idle ์ํ๋ก ํ๋จํ ๊ธฐ์ค(์ด)
voila voila_basic.ipynb --MappingKernelManager.cull_interval=60 --MappingKernelManager.cull_idel_timeout=300
- ExecutePreprocessor.timeout : ํ์์์ ์ ํ ์๊ฐ ๋๋ฆฌ๊ธฐ
voila --ExecutePreprocessor.timeout=180
- enable_nbextensions=True
voila your_notebook.ipynb --enable_nbextensions=True
2. ipywidget
https://ipywidgets.readthedocs.io/en/stable/
Jupyter Widgets — Jupyter Widgets 8.0.2 documentation
Notebooks come alive when interactive widgets are used. Users can visualize and manipulate their data in intuitive and easy ways. Researchers can easily see how changing inputs to a model impact the results. Scientists can share interactive results with gr
ipywidgets.readthedocs.io
1) slider widget
2) Text Widget
3) Boolean Widget
4) Selection Widget
5) Upload Widget
6) Data Picker Widget
7) Widget Events
8) interact Decorator
9) Layout
๐ฐ ์ค๋์ ํ๊ณ
์ค๋ Voila ๊ฐ์๋ฅผ ๋ค ๋ค์ผ๋ ค๊ณ ํ๋๋ฐ... ์๊ฐ๋ณด๋ค ์ค๋ ๊ฑธ๋ ธ๋ค. ํนํ ๋ฒ์ issue...0-0... ๊ณ์ 404 found ์ค๋ฅ ๋์ '๋ ํ๋ฆฐ๊ฑด๊ฐ...' ์๊ฐํ๋๋ฐ, ์๋ฒ๋ก ์ ๋์ด์ ๋ก์ปฌ์ ์ค์นํ conda๋ก ํ๊ฒฝ ์๋ก ๋ง๋ค์ด์ Voila ์ค์นํ๋ ์คํ์ด ๋์๋คใ ใ ๋ก์ปฌ์์๋ Voila ์ฐ๊ฒฐํ๋ฉด ์ ๋๋๋ฐ ์๋ฒ๋ก๋ ์ด๋ป๊ฒ ํด์ผ ํ ์ง ์ผ์์์์์์์์......... ์๋ฌดํผ... ๊ธฐ๋๊ธด ์ค๋ฅ ๋์ ๊ทธ๋๋ Voila ํด๋ด์ ๋คํ์ด๋ค. Voila ํด๋ณด๋ฉด์ ๋๋ ์ ์ ๋ญ๊ฐ ๋จธ์ ๋ฌ๋ ๊ณ์ ํ๋ก ํธ์ํธ ๊ฐ์ ๋๋? ์ฌ์ค ํ๋กํ ํ์ ์ ๋ง๋ ๋ค๋ ๊ฒ์ ๋ชจ๋ธ์ ๊ฐ๋จํ๊ฒ ๋ฐฐํฌํด๋ณด๊ณ , ์ฑ๋ฅ์ด ์ด๋จ์ง ํ์ธํด๋ณด๋ ๊ฒ์ด์ง๋ง, ์๊ฐ๋ณด๋ค ๋ ์ด์์ ์ก๊ณ ๊พธ๋ฏธ๋ ๊ฑด ์ฌ๋ฐ๋ค...์ฌ๋ฐ์ด... ํ์คํ CV๋ณด๋ค๋ ์ด๋ฐ MLOps ์ชฝ์ด ๋ ์ ์ฑ์ ๋ง๋ค๋ ๊ฒ์ด ๋ ๋๊ปด์ง๋ค. ์์ผ๋ก ๊ณต๋ถํ ๊ฒ ๋ง๊ฒ ์ง๋ง ๋ ๋ง์ด ๊ณต๋ถํ๊ณ ๋ ๋ง์ด ์ค๋ฅ๋ณด๊ณ (......) ๋ ๋ง์ด ์ฝ์งํด์ MLOps๋ฅผ ๋ฟ์ ๋ณด์!!!