Skip to content

Commit 80866f5

Browse files
chl8469ehddnr301
andauthoredDec 9, 2021
Develop (#64)
* add atmos ETL process ETL DAG ์ถ”๊ฐ€ DB engine๊ด€๋ จ ์˜ค๋ฅ˜ ๋ฐœ์ƒ ์ˆ˜์ • ์ค‘ * Add new train process MLflow & Prefect & Ray tune์„ ์ ์šฉํ•œ ์ƒˆ๋กœ์šด training process ์ž…๋‹ˆ๋‹ค. * Add save best model logic ์‹คํ—˜์ด ๋๋‚œ ๋’ค์— ๊ฐ€์žฅ ์ข‹์€ ๋ชจ๋ธ์„ ์ฐพ์•„ db์— ๊ทธ ์ •๋ณด๋ฅผ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค. ์ดํ›„ predict์—์„œ๋Š” db์กฐํšŒ๋กœ ๊ฐ€์žฅ ์ข‹์€ ๋ชจ๋ธ์„ ์ฐพ์•„ predict๋ฅผ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. * modify atmos ETL pipeline 1. ๋ฐ์ดํ„ฐ ์š”์ฒญ ํ›„ ๋ฐ˜ํ™˜๋ฐ›์€ ๋ฐ์ดํ„ฐ๊ฐ€ ์—†์„ ์‹œ flow๋ฅผ ์ข…๋ฃŒํ•˜๋„๋ก ์„ค์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค. 2. ๋ฐ์ดํ„ฐ ๊ฒ€์ฆ ํ›„ ์กฐ๊ฑด์— ๋งž์ง€ ์•Š๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ์„ ์‹œ ์ €์žฅํ•˜์ง€ ์•Š๊ณ  flow๋ฅผ ์ข…๋ฃŒํ•˜๋„๋ก ํ•˜์˜€์Šต๋‹ˆ๋‹ค. 3. cron schedule์„ ์„ค์ •ํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜์…จ์Šต๋‹ˆ๋‹ค. * Fix save model logic best๋ชจ๋ธ์„ db์— ๊ธฐ๋กํ• ๋•Œ artifact_uri ๋ฅผ ์ €์žฅํ•˜๋Š”๋ฐ artifact_path๋„ ํฌํ•จํ•˜์—ฌ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. * Add redis redis๋ฅผ ์ด์šฉํ•ด์„œ ๋น„ํšจ์œจ์ ์ธ ์ฝ์–ด์˜ด์„ ๊ฐœ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค. * Add mnist training mnist classification training process๋ฅผ ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * add training model process after data ETL ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘์ด ์„ฑ๊ณต์ ์œผ๋กœ ์ข…๋ฃŒ๋˜๋ฉด ์ˆ˜์ง‘๋œ ๋ฐ์ดํ„ฐ๋ฅผ ํฌํ•จํ•˜์—ฌ ํ•™์Šต์„ ์ง„ํ–‰ํ•˜๊ณ  ์„ฑ๋Šฅ์ด ์ข‹์œผ๋ฉด ๋ชจ๋ธ์„ ๊ต์ฒดํ•˜๋Š” ๊ณผ์ •์„ ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Fix save logic ์ €์žฅ๋•Œ run_id๋ฅผ ์ €์žฅ ํ•˜๋Š”๊ฒƒ์œผ๋กœ ์ˆ˜์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Fix save logic return true false๋ฅผ ์œ„ํ•ด์„œ ๋กœ์ง ์ˆ˜์ •์ค‘์— ์žˆ์Šต๋‹ˆ๋‹ค. * Add knn model train & save knn ๋ชจ๋ธ์„ ํ•™์Šตํ•˜๊ณ  ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. train_df ๋Š” ๊ณ ์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. knn ๋ชจ๋ธ์„ cnn ๋ชจ๋ธ์ด ์—…๋ฐ์ดํŠธ ๋œ ๊ฒฝ์šฐ๋งŒ ํ•™์Šต์„ํ•˜๊ณ  ์ €์žฅํ•˜๊ฒŒ๋ฉ๋‹ˆ๋‹ค. db์— ์ €์žฅํ•˜๋Š” ๊ฒƒ์€ ๊ฐ€์žฅ ์ตœ๊ทผ์— logging๋œ knn ๋ชจ๋ธ์„ ์ €์žฅํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. * add redis caching& modify load model process 1. predict API์— redis๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ชจ๋ธ์„ ์บ์‹œํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋ชจ๋ธ์ด redis์— ์กด์žฌํ•˜์ง€ ์•Š์œผ๋ฉด database์—์„œ ๋ฐ›์•„์™€์„œ redis์— ์ €์žฅํ•œ ํ›„ ์ผ์ •์‹œ๊ฐ„ ๋™์•ˆ ํ•ด๋‹น ๋ชจ๋ธ์— ๋Œ€ํ•œ ์˜ˆ์ธก์š”์ฒญ์ด ์—†์œผ๋ฉด ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค. 2. artifact path ๋Œ€์‹  run id๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋ธ์„ ๋ถˆ๋Ÿฌ์˜ค๊ฒŒ ๋ณ€๊ฒฝํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Modify predict redis ์˜ค์ž‘๋™ํ•˜๋Š”๋ถ€๋ถ„ ์ˆ˜์ • * Add redis update time logic 1. redis๋กœ ๋ชจ๋ธ์„ ์บ์‹ฑํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ฐœ์„ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๊ธฐ์กด๋ฐฉ์‹: ๋ชจ๋ธ์„ ์บ์‹ฑํ•œ ํ›„ ์ผ์ •์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉด ์‚ญ์ œ๋˜๊ฒŒ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๊ฐœ์„ ๋ฐฉ์‹: ์บ์‹ฑ๋œ ๋ชจ๋ธ์ด ์˜ˆ์ธก์š”์ฒญ์„ ๋ฐ›์œผ๋ฉด ๋งŒ๋ฃŒ๋˜๋Š” ์‹œ๊ฐ„์ด ์ดˆ๊ธฐํ™”๋˜๊ฒŒ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Add mnist prediction route mnist ๋ชจ๋ธ์„ ๋ถˆ๋Ÿฌ์™€์„œ ์˜ˆ์ธกํ•˜๋Š” route๋ฅผ ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ž„์‹œ์ ์œผ๋กœ ๊ฐ€์ง€๊ณ  ์žˆ๋˜ ํŒŒ์ผ์—์„œ predict๋ฅผ ์ง„ํ–‰ํ•˜์ง€๋งŒ ์ถ”ํ›„ input๊ฐ’์„ ๋ฐ›์•„์„œ ์˜ˆ์ธกํ•˜๋„๋ก ์ˆ˜์ • ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ++ model training process ์—์„œ jit script๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ์„œ ๋ถˆ๋Ÿฌ์™€ ์‚ฌ์šฉํ•˜๋Š”๋ฐ์— ๋ฌธ์ œ ์—†๊ฒŒ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ++ training process์—์„œ taskํŒŒ์ผ ์•ˆ์— model class๊ฐ€ ์กด์žฌํ•˜๊ฒŒ๋˜๋ฉด model ์‚ฌ์šฉ์— ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•ด ๋ถ„๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Add redis at mnist prediction redis ์‚ฌ์šฉ์— ์žˆ์–ด์„œ pickle๋กœ ๋ฐ€์–ด๋„ฃ์„ ์ˆ˜ ์—†์–ด์„œ save_to_buffer ๋กœ ๋„ฃ๊ณ  bytes๋กœ ์ฝ์–ด์˜ต๋‹ˆ๋‹ค. * Add redis connection pool redis์˜ connection pool์„ ๋„์ž…ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Fix data load & cleanup ํ•˜๋“œ์ฝ”๋”ฉ๋˜์–ด์žˆ๋˜ ๋ถ€๋ถ„์„ ์กฐ๊ธˆ ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. & ๋ถˆ๋Ÿฌ์˜ค๋Š” ๋กœ์ง์„ ์žฌ์‚ฌ์šฉ์„ฑ์„ ๋†’์ด๊ธฐ์œ„ํ•ด ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. * Fix data path data ๋ฅผ storage์—์„œ ์ฝ์–ด์˜ค๋Š”๊ฒƒ์œผ๋กœ ๋ณ€๊ฒฝํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Modify atmos predict api 1. redis์—์„œ ML๋ชจ๋ธ์„ ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ฝ”๋“œ๊ฐ€ ์ค‘์ฒฉ๋˜์–ด ์žˆ๋˜ ๋ถ€๋ถ„์„ ์‚ญ์ œํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Test performance according to method 1. postgres DB์—์„œ ๋ชจ๋ธ ๋กœ๋“œ, redis์—์„œ ๋ชจ๋ธ ๋กœ๋“œ, serialize, deserialize ๊ฐ๊ฐ์—์„œ ์‹œ๊ฐ„์ด ์–ผ๋งˆ๋‚˜ ๊ฑธ๋ฆฌ๋Š”์ง€ ํ…Œ์ŠคํŠธ ํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ์‹œ๊ฐ„ ์ธก์ • ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•ด ๋‘์—ˆ์Šต๋‹ˆ๋‹ค. * Modify caching algorithm 1. ๋ชจ๋ธ์„ redis๋‚˜ ๊ธฐํƒ€ DB์— cachingํ•˜์ง€ ์•Š๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ๋ณ€๊ฒฝํ•˜์˜€์Šต๋‹ˆ๋‹ค. model_timer class๋ฅผ ๋งŒ๋“ค์–ด instance variable๋กœ ์ €์žฅํ•˜๊ณ  ์ผ์ • ์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉด ์‚ญ์ œ๋˜๊ฒŒ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋ชจ๋ธ์„ ์ง๋ ฌํ™”ํ•  ํ•„์š”์„ฑ์ด ์—†์–ด์ ธ inference ์†๋„๊ฐ€ ํฌ๊ฒŒ ๊ฐœ์„ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 2. caching๋˜์ง€ ์•Š์€ ๋ชจ๋ธ์„ mlflow์—์„œ ์ฒ˜์Œ ๋ถˆ๋Ÿฌ์˜ค๋Š” ๋ถ€๋ถ„์€ ์—ฌ์ „ํžˆ ๋Š๋ฆฝ๋‹ˆ๋‹ค. * Modify cache class 1. cache class๋ฅผ ์ข€ ๋” ๋ฒ”์šฉ์ ์ธ ์ด๋ฆ„์œผ๋กœ ๋ณ€๊ฒฝํ•˜์˜€์Šต๋‹ˆ๋‹ค. 2. ๊ธฐ๋Šฅ์ƒ์˜ ๋ณ€๊ฒฝ์€ ์—†์Šต๋‹ˆ๋‹ค. 3. predict method๋ฅผ ์‚ญ์ œํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Fix mnist model caching redis ์‚ฌ์šฉํ•ด์„œ ์ฝ์–ด์˜ค๋˜ ์ƒํ™ฉ์—์„œ ์ฝ”๋“œ๋ฅผ ๊ฐœ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค. redis๋ฅผ ์‚ฌ์šฉํ•ด ๋ชจ๋ธ์„ ์บ์‹ฑํ•˜๋ ค๋ฉด serialize, deserialize ํ•˜๋Š” ๊ณผ์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ๊ณผ์ •์—์„œ ์‹œ๊ฐ„์ด ๋„ˆ๋ฌด ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์— ๊ฐœ์„ ์˜ ํ•„์š”์„ฑ์„ ๋Š๊ปด ์ง์ ‘ ๊ด€๋ฆฌํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋ธ์„ ์ฝ์–ด์˜ค๊ณ  ์บ์‹ฑํ•˜๋Š” ๋ถ€๋ถ„์„ class๋กœ ๋ฌถ์–ด์„œ ๋ชจ์•„๋†“์•˜์Šต๋‹ˆ๋‹ค. * Fix load model load logic model loadํ•˜๊ณ  ์บ์‹ฑํ•˜๋Š” ๋ถ€๋ถ„์—์„œ lock์„ ๊ฑธ๊ณ  ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. data๋„ ์ž„์‹œ๋กœ ์บ์‹ฑํ•ด์„œ ์‚ฌ์šฉํ•˜๋„๋ก ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Remove unnecessary code test๋ฅผ ์œ„ํ•œ ์ฝ”๋“œ๋ฅผ ์‚ญ์ œํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Delete redis ๋ ˆ๋””์Šค ์‚ญ์ œํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋น„๋™๊ธฐํ•จ์ˆ˜ ์ž˜๋ชป ์ž‘์„ฑ๋œ ๋ถ€๋ถ„ ์ˆ˜์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Update README * Add prefect working directory 1. prefect agent์˜ ์‹คํ–‰ ์œ„์น˜์— ๋”ฐ๋ผ ๊ฒฝ๋กœ๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์˜€์Šต๋‹ˆ๋‹ค. 2. flow์— working directory๋ฅผ ๋ช…์‹œํ•ด์ฃผ๋ฉด ๋ฉ๋‹ˆ๋‹ค. * Add more metrics to Mnist Mnist train๊ณผ์ •์—์„œ class๋ณ„ accuracy๋ฅผ ์ธก์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Add pipeline option ์—ฌ๋Ÿฌ ํŒŒ์ดํ”„๋ผ์ธ์ด ๋™์‹œ์— ์ ์šฉ๋ ์ˆ˜์žˆ๋„๋ก insurance pipeline๋„ ์—…๋ฐ์ดํŠธํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Update insurance save logic insurance ๋ถ€๋ถ„๋„ ๋‹ค๋ฅธ๊ฒƒ๋“ค๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ run_id๋ฅผ ์ €์žฅํ•˜๋Š” ํ˜•์‹์œผ๋กœ ์—…๋ฐ์ดํŠธ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Add insuracne predict insurance predictํ•˜๋Š”๊ฒƒ๋„ ๋‹ค๋ฅธ๊ฒƒ๊ณผ ๋™์ผํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. * Fix task decorator test์™€์ค‘์— ์ฃผ์„์ฒ˜๋ฆฌ๋˜์—ˆ๋˜ @task๋ฅผ ์ฃผ์„ํ•ด์ œํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Remove resource_per_trial resource_per_trial์„ ๋ช…์‹œํ–ˆ์„๋•Œ ๊ณ„์† pending์ƒํƒœ์— ๋จธ๋ฌด๋ฅด๋Š” ํ˜„์ƒ์ด ์žˆ์–ด ์‚ญ์ œํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Fix mlflow-url mlflow default url์„ ์ˆ˜์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Add git action to build docker containers 1. ๋„์ปคํŒŒ์ผ์„ ๋นŒ๋“œํ•˜๊ธฐ ์œ„ํ•œ ๊นƒ ์•ก์…˜์„ ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. 2. ์ผ๋ถ€ ์ž˜๋ชป ์„ค์ •๋˜์–ด์žˆ๋˜ ํ˜ธ์ŠคํŠธ ์ด๋ฆ„์„ ์ˆ˜์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค. 3. requirements.txt๋ฅผ ์ตœ์‹ ํ™” ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Remove PR condition Build API server container ํ•˜๋Š” ๋ถ€๋ถ„์—์„œ PR์ผ๋•Œ ์ƒํ™ฉ์€ ์ œ๊ฑฐํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Modify mnist prediction Mnist prediction ๋ถ€๋ถ„์„ input์„ ๋ฐ›์•„์„œ ์˜ˆ์ธกํ•˜๋„๋ก ๋ฐ”๊พธ์—ˆ์Šต๋‹ˆ๋‹ค. run_in_threadpool๋กœ predict๋ถ€๋ถ„์„ ๋ฌถ์–ด๋‘์—ˆ์Šต๋‹ˆ๋‹ค. return์„ ์„ธ๋ถ„ํ™” ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Add kubernetes yaml files 1. ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ์„ค์ •ํŒŒ์ผ๋“ค์„ ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. 2. prefect_Dockerfile์„ ์ˆ˜์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Remove testing branch test์šฉ์œผ๋กœ on push ํŠธ๋ฆฌ๊ฑฐ ๋ธŒ๋žœ์น˜์— feature/kubernetes ๋„ ํฌํ•จ์‹œ์ผœ๋‘์–ด์„œ ์ œ์™ธํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Add deprecated folder deprecated ๋œ ๊ฒƒ๋“ค์€ ํด๋”์— ๋ชจ์•„์„œ ๊ธฐ๋กํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Delete experiments and import train code 1. ํ˜„์žฌ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” experiments ํด๋”๋ฅผ ์‚ญ์ œํ•˜์˜€์Šต๋‹ˆ๋‹ค. 2. main.py์—์„œ train api๋ฅผ importํ•˜์—ฌ ์—๋Ÿฌ๊ฐ€ ๋‚˜๋˜ ๋ถ€๋ถ„์„ ์ˆ˜์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Modify Dockerfile name 1. ๊ธฐ์กด xxx_Dockerfile ํ˜•์‹์œผ๋กœ ๋˜์–ด์žˆ๋˜ ํŒŒ์ผ ์ด๋ฆ„์„ Dockerfile.xxx ํ˜•์‹์œผ๋กœ ๋ฐ”๊พธ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ˜•์‹์œผ๋กœ ์ €์žฅํ•˜๋ฉด ํŒŒ์ผ์˜ ๋ชฉ๋ก์„ ์ถœ๋ ฅํ–ˆ์„ ๋•Œ ๋„์ปคํŒŒ์ผ์ด ๋ชจ์—ฌ์žˆ๊ฒŒ ๋˜๋ฏ€๋กœ ๊ฐ€๋…์„ฑ์ด ์˜ฌ๋ผ๊ฐˆ ๊ฒƒ์œผ๋กœ ์ƒ๊ฐ๋ฉ๋‹ˆ๋‹ค. * Add load type Model load ๋ฐฉ์‹์„ ์ตœ๊ณ ์„ฑ๋Šฅ ๋ชจ๋ธ์„ ๊ฐ€์ ธ์˜ค๋Š”๊ฒƒ ์™ธ์— production์œผ๋กœ ๋“ฑ๋ก๋œ ๋ชจ๋ธ์„ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐฉ์‹์„ ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. mlflow๋กœ ๋ชจ๋ธ production ๋ฐ staging์„ ๊ด€๋ฆฌํ•  ๊ฒฝ์šฐ์— ์ด ๋ฐฉ๋ฒ•์ด ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. * Fix data load logic data๋กœ๋“œ๋ฅผ ํ™˜๊ฒฝ๋ณ€์ˆ˜์—์„œ ๊ฒฝ๋กœ๋ฅผ ์ฝ์–ด์„œ ํ•˜์ง€์•Š๊ณ  db์—์„œ ๋ฒ„์ „๋ณ„ ๊ทธ๋ฆฌ๊ณ  ์‹คํ—˜๋ณ„๋กœ ์ฝ์„ ์ˆ˜ ์žˆ๋„๋ก ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Modify Mnist Train ์ถœ๋ ฅ์ธต ์ด์ „ ๋ ˆ์ด์–ด์—์„œ 64๊ฐœ์˜ ํŠน์ง•์„ ์ถ”์ถœํ•ฉ๋‹ˆ๋‹ค. model์˜ xai ํŠน์ง•์„ ๋งŒ๋“ค๋•Œ ์ถœ๋ ฅ์ธต์„ ์ œ๊ฑฐํ•˜์ง€ ์•Š์€ ๋ชจ๋ธ ์˜ˆ์ธก๋„ ํ•จ๊ป˜ ํŠน์ง•์œผ๋กœ ์‚ฌ์šฉํ•ด์„œ 74๊ฐœ์˜ ํŠน์ง•์„ knn์œผ๋กœ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค. * Modify Mnist Predict train๋ถ€๋ถ„์˜ ๋ณ€ํ™”์— ๋Œ€์‘ํ•ด ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค. * Add mnist avg metadata pixel ํ‰๊ท ๊ฐ’์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. prediction ๋•Œ์—๋„ input์œผ๋กœ ๋“ค์–ด์˜จ ๋ฐ์ดํ„ฐ์—๋Œ€ํ•œ pixel ํ‰๊ท ๊ฐ’์„ ๋กœ๊น…ํ•ฉ๋‹ˆ๋‹ค. * Add is_cloud parameter is_cloud parameter๊ฐ€ ๋ˆ„๋ฝ๋˜์–ด์žˆ์–ด ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Add Continuous deploy process - rollout ํ•ด์ฃผ๋Š” ๋ถ€๋ถ„์„ ์ถ”๊ฐ€ํ•จ์œผ๋กœ์จ ๋ฌด์ค‘๋‹จ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. * Modify Git Action workflows - continuous deployments๋ฅผ ์œ„ํ•ด ํ•„์š”ํ•œ deployments๋งŒ ์žฌ์‹œ์ž‘ ๋˜๋„๋ก ๋ถ„๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Modify Git Action workflows - continuous deployments๋ฅผ ์œ„ํ•ด ํ•„์š”ํ•œ kubernetes deployments๋งŒ ์žฌ์‹œ์ž‘ ๋˜๋„๋ก ๋ถ„๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Feature/readme (#57) Update README * Feature/data load (#58) update data load * Update phase2.md * Feature/readme (#59) Update README * Feature/readme (#61) * Update README README์—๋‚ด์šฉ์„ ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Add phase1 info Phase1 ์— ๋Œ€ํ•œ ๋‚ด์šฉ์„ ์กฐ๊ธˆ ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Add phase1 info * Modify phase1 info * Add phase2-local * Add logos ๋กœ๊ณ ์ถ”๊ฐ€ * Resize images * Add requirements.sh * Modify main readme page ๊ทธ๋ฆผ๋„ ๋„ฃ๊ตฌ ๊ตฌ์กฐ๋„ ์กฐ๊ธˆ ๋ฐ”๊พธ์—ˆ์Šต๋‹ˆ๋‹น * Delete phase2.PNG * Add figure phase2 ๊ทธ๋ฆผ ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Modify readme file ๋‚ด์šฉ์˜ ์ˆœ์„œ๋ฅผ ๋ณ€๊ฒฝํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Remove local.md * Add info phase2 * Add frontend link * Modify readme ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ๋ถ€๋ถ„ ์ˆ˜์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Modify readme ๋„์ปค ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ถ€๋ถ„์— ๋Œ€ํ•œ ์„ค๋ช…์„ ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. * Add readme * Update phase2.md * Update README.md * Delete kubernetes nodeselector 1. deployments์— nodeSelector๊ฐ€ ์„ค์ •๋˜์–ด์žˆ๋˜ ๋ถ€๋ถ„์„ ์‚ญ์ œํ–ˆ์Šต๋‹ˆ๋‹ค. * Modify readme.md 1. readme file์˜ ์ „์ฒด์ ์ธ ๊ตฌ์กฐ๋ฅผ ๋ณ€๊ฒฝํ•˜์˜€์Šต๋‹ˆ๋‹ค. 2. Phase2์˜ ์„ธ๋ถ€๋‚ด์šฉ์„ ๋ณ€๊ฒฝ๋œ ๊ตฌ์กฐ์— ๋งž์ถ”์–ด ๋‹ค์‹œ ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค. 3. ์•„์ง ์ž‘์„ฑ์ค‘์ž…๋‹ˆ๋‹คใ…œใ…œ * Modify README.md 1. readme ์—์„œ phase2 ํ”„๋กœ์ ํŠธ๋ฅผ ์„ค๋ช…ํ•œ ๋ถ€๋ถ„์„ ์ˆ˜์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค. Co-authored-by: ehddnr301 <[email protected]> Co-authored-by: ehddnr301 <[email protected]>
1 parent 22d57cb commit 80866f5

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+2963
-153
lines changed
 
+52
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
name: Build API server container
2+
on:
3+
push:
4+
branches: [ main ]
5+
6+
jobs:
7+
build:
8+
runs-on: ubuntu-latest
9+
steps:
10+
- name: Check Out Repo
11+
uses: actions/checkout@v2
12+
13+
- name: Login to Docker Hub
14+
uses: docker/login-action@v1
15+
with:
16+
username: ${{ secrets.DOCKER_HUB_USERNAME }}
17+
password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
18+
19+
- name: Set up Docker Buildx
20+
id: buildx
21+
uses: docker/setup-buildx-action@v1
22+
23+
- name: Build and push api-server
24+
id: api-server
25+
uses: docker/build-push-action@v2
26+
with:
27+
context: ./
28+
file: ./Dockerfile.fastapi
29+
push: true
30+
tags: ${{ secrets.DOCKER_HUB_USERNAME }}/mlops-project:api-server-1.0
31+
32+
- name: Build and push prefect-worker
33+
id: prefect-worker
34+
uses: docker/build-push-action@v2
35+
with:
36+
context: ./
37+
file: ./Dockerfile.prefect
38+
push: true
39+
tags: ${{ secrets.DOCKER_HUB_USERNAME }}/mlops-project:prefect-worker-1.0
40+
41+
- name: Image digest
42+
run: echo ${{ steps.docker_build.outputs.digest }}
43+
44+
- name: Deploy
45+
uses: appleboy/ssh-action@master
46+
with:
47+
host: ${{ secrets.REMOTE_IP }}
48+
username: ${{ secrets.REMOTE_SSH_ID }}
49+
port: ${{ secrets.REMOTE_SSH_PORT }}
50+
key: ${{ secrets.REMOTE_SSH_KEY }}
51+
script: |
52+
kubectl rollout restart -f ./MLOps/k8s/prepi_deployments.yaml

โ€Ž.gitignore

+5
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,8 @@ __pycache__
44
tf_model/**/*
55
log.txt
66
experiments/**/temp/
7+
.ssl/
8+
prefect/atmos_tmp_pipeline/ray_mlflow
9+
prefect/atmos_tmp_pipeline/*.sh
10+
mlruns
11+
exp_models

0 commit comments

Comments
 (0)