Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| import pandas as pd | |
| import pickle | |
| # ๋ชจ๋ธ ๋ก๋ฉ ํจ์ | |
| def load_model(์์ค์ ํ): | |
| with open(์์ค์ ํ+".pkl", "rb") as file: | |
| loaded_pipeline = pickle.load(file) | |
| return loaded_pipeline | |
| # ์์ธก ํจ์ ์ ์ | |
| def predict_cost(์์ค์ ํ, ๊ตฌ์กฐ, ์งํ์ธต์, ์ง์์ธต์, ๊ธฐ์ค์ธต์ธต๊ณ , ์ต๊ณ ๋์ด, ์ฐ๋ฉด์ , ๋์ง๋ฉด์ , ๊ฑด์ถ๋ฉด์ , ์กฐ๊ฒฝ๋ฉด์ , ์ฃผ์ฐจ๋์, ๋ฐ์ฃผ๋ ๋, ๋ฐ์ฃผ์, ํ์ฅ์์น): | |
| new_project = { | |
| '๊ตฌ์กฐ': [๊ตฌ์กฐ], | |
| '์งํ์ธต์': [์งํ์ธต์], | |
| '์ง์์ธต์': [์ง์์ธต์], | |
| '๊ธฐ์ค์ธต์ธต๊ณ ': [๊ธฐ์ค์ธต์ธต๊ณ ], | |
| '์ต๊ณ ๋์ด': [์ต๊ณ ๋์ด], | |
| '์ฃผ์ฐจ๋์': [์ฃผ์ฐจ๋์], | |
| '์ฐ๋ฉด์ ': [์ฐ๋ฉด์ ], | |
| '๋์ง๋ฉด์ ': [๋์ง๋ฉด์ ], | |
| '๊ฑด์ถ๋ฉด์ ': [๊ฑด์ถ๋ฉด์ ], | |
| '์กฐ๊ฒฝ๋ฉด์ ': [์กฐ๊ฒฝ๋ฉด์ ], | |
| '๋ฐ์ฃผ๋ ๋': [๋ฐ์ฃผ๋ ๋], | |
| '๋ฐ์ฃผ์': [๋ฐ์ฃผ์], | |
| 'ํ์ฅ์์น': [ํ์ฅ์์น], | |
| } | |
| model = load_model(์์ค์ ํ) | |
| pred = model.predict(pd.DataFrame.from_dict(new_project)) | |
| return f'{pred[0]:,.0f}์ผ' | |
| with gr.Blocks() as demo: | |
| gr.Markdown("## HG ๊ณต์ฌ๊ธฐ๊ฐ ์์ธก ๋ชจ๋ธ") | |
| with gr.Row(): | |
| ์์ค์ ํ = gr.Dropdown(label="์์ค์ ํ", choices=["์ผ๋ฐ์ฒญ์ฌ","์ผ๋ฐํ์ด์ค๊ณ ","๊ธฐํ์์ค","๋ณตํฉํ์ด์ค๊ณ ","๋ํ์ฒญ์ฌ","์ผ๋ฐํ์ฐ๊ตฌ์","๋ ธ์ ์์์ค","์ผ๋ฐํ์ ์์์ค","์คํ์ฉ์ฐ๊ตฌ์์ค","๋ณตํฉํ์ฒด์ก์์ค","๋ณตํฉํ๋ํ๊ต","๊ฐ์ํ๋ํ๊ต","๋ณต์ง์์ค","๋์๊ด","์ผ๋ฐํ์๋ จ์์ค","๊ธฐ์์ฌ","๋ํ์๋ฃ์์ค","์ผ๋ฐํ๊ณต์ฅ","์ฒจ๋จ์ฐ๊ตฌ์์ค","๋ณตํฉํ์๋ จ์์ค","ํน์ํ๊ณต์ฅ"], | |
| value='๊ฐ์ํ๋ํ๊ต') # '...'๋ถ๋ถ์ ๋ค๋ฅธ ์์ค์ ํ ์ถ๊ฐ | |
| ํ์ฅ์์น = gr.Dropdown(label="ํ์ฅ์์น", choices=['์์ธํน๋ณ์', '์ ์ฃผํน๋ณ์์น๋', '๊ฒฝ์๋ถ๋', '์ธ์ฐ๊ด์ญ์', '๊ด์ฃผ๊ด์ญ์', '๊ฒฝ๊ธฐ๋', '์ถฉ์ฒญ๋ถ๋', | |
| '๊ฒฝ์๋จ๋', '์ ๋ผ๋จ๋', '๋ถ์ฐ๊ด์ญ์', '์ถฉ์ฒญ๋จ๋', '๋๊ตฌ๊ด์ญ์', '๊ฐ์๋', '์ธ์ฒ๊ด์ญ์', '์ ๋ผ๋ถ๋', | |
| '์ธ์ข ํน๋ณ์์น์', '๋์ ๊ด์ญ์', '๊ฐ์ํน๋ณ์์น๋'], value='๊ด์ฃผ๊ด์ญ์') | |
| ๊ตฌ์กฐ = gr.Dropdown(label="๊ตฌ์กฐ", choices=['์ฒ ๊ทผ์ฝํฌ๋ฆฌํธ์กฐ', '์ฒ ๊ณจ์กฐ', '์ฒ ๊ณจ์ฒ ๊ทผ์ฝํฌ๋ฆฌํธ์กฐ', '๊ธฐํ'], value='์ฒ ๊ณจ์ฒ ๊ทผ์ฝํฌ๋ฆฌํธ์กฐ') # '...'๋ถ๋ถ์ ๋ค๋ฅธ ๊ตฌ์กฐ ํ์ ์ถ๊ฐ | |
| with gr.Row(): | |
| ์งํ์ธต์ = gr.Number(label="์งํ์ธต์", value=0) | |
| ์ง์์ธต์ = gr.Number(label="์ง์์ธต์", value=7) | |
| ๊ธฐ์ค์ธต์ธต๊ณ = gr.Number(label="๊ธฐ์ค์ธต์ธต๊ณ (m)", value=4.5) | |
| ์ต๊ณ ๋์ด = gr.Number(label="์ต๊ณ ๋์ด(m)", value=33.9) | |
| with gr.Row(): | |
| ์ฐ๋ฉด์ = gr.Number(label="์ฐ๋ฉด์ (m2)", value=4451) | |
| ๋์ง๋ฉด์ = gr.Number(label="๋์ง๋ฉด์ (m2)", value=989860) | |
| ๊ฑด์ถ๋ฉด์ = gr.Number(label="๊ฑด์ถ๋ฉด์ (m2)", value=922) | |
| ์กฐ๊ฒฝ๋ฉด์ = gr.Number(label="์กฐ๊ฒฝ๋ฉด์ (m2)", value=180) | |
| with gr.Row(): | |
| ์ฃผ์ฐจ์ = gr.Number(label="์ฃผ์ฐจ๋์", value=7) | |
| ๋ฐ์ฃผ๋ = gr.Number(label="๋ฐ์ฃผ๋ ๋", value=2023) | |
| ๋ฐ์ฃผ์ = gr.Number(label="๋ฐ์ฃผ์", value=8) | |
| btn = gr.Button("๊ณต์ฌ๊ธฐ๊ฐ ์์ธก") | |
| btn.click( | |
| predict_cost, | |
| inputs=[ | |
| ์์ค์ ํ, ๊ตฌ์กฐ, ์งํ์ธต์, ์ง์์ธต์, ๊ธฐ์ค์ธต์ธต๊ณ , ์ต๊ณ ๋์ด, ์ฐ๋ฉด์ , ๋์ง๋ฉด์ , ๊ฑด์ถ๋ฉด์ , ์กฐ๊ฒฝ๋ฉด์ , ์ฃผ์ฐจ์, ๋ฐ์ฃผ๋ , ๋ฐ์ฃผ์, ํ์ฅ์์น | |
| ], | |
| outputs=[ | |
| gr.Textbox(label="๊ณต์ฌ๊ธฐ๊ฐ") | |
| ] | |
| ) | |
| demo.launch() |