Spaces:
Sleeping
Sleeping
File size: 3,642 Bytes
43c0f04 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
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() |