sprite33 commited on
Commit
cc5ae1e
1 Parent(s): 26a7f01
Files changed (2) hide show
  1. app.py +61 -3
  2. model.pkl +3 -0
app.py CHANGED
@@ -1,7 +1,65 @@
1
  import gradio as gr
 
 
2
 
3
- def greet(name):
4
- return "Hello " + name + "!!"
 
 
 
5
 
6
- iface = gr.Interface(fn=greet, inputs="text", outputs="text")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7
  iface.launch()
 
1
  import gradio as gr
2
+ import pandas as pd
3
+ import pickle
4
 
5
+ # 모델 로딩 함수
6
+ def load_model():
7
+ with open("model.pkl", "rb") as file:
8
+ loaded_pipeline = pickle.load(file)
9
+ return loaded_pipeline
10
 
11
+ # 예측 함수 정의
12
+ def predict(construction_type, underground_floors, aboveground_floors, total_area,
13
+ land_area, building_area, landscape_area, parking_lot_count, order_year,
14
+ order_month, construction_period, location, building_purpose):
15
+
16
+ new_project = {
17
+ '구조': [construction_type],
18
+ '지하층수': [underground_floors],
19
+ '지상층수': [aboveground_floors],
20
+ '연면적': [total_area],
21
+ '대지면적': [land_area],
22
+ '건축면적': [building_area],
23
+ '조경면적': [landscape_area],
24
+ '주차수': [parking_lot_count],
25
+ '발주년': [order_year],
26
+ '발주월': [order_month],
27
+ '공사기간': [construction_period],
28
+ '현장위치': [location],
29
+ '건축법상용도': [building_purpose],
30
+ }
31
+
32
+ model = load_model()
33
+ prediction = model.predict(pd.DataFrame.from_dict(new_project))
34
+ return prediction[0].tolist()
35
+
36
+ # Gradio 인터페이스 생성
37
+ iface = gr.Interface(
38
+ fn=predict,
39
+ inputs=[
40
+ gr.Textbox(label="구조"),
41
+ gr.Number(label="지하층수"),
42
+ gr.Number(label="지상층수"),
43
+ gr.Number(label="연면적(m2)"),
44
+ gr.Number(label="대지면적(m2)"),
45
+ gr.Number(label="건축면적(m2)"),
46
+ gr.Number(label="조경면적(m2)"),
47
+ gr.Number(label="주차대수"),
48
+ gr.Number(label="발주년도"),
49
+ gr.Dropdown(range(1, 13), label="발주월"),
50
+ gr.Number(label="공사기간(일))"),
51
+ gr.Textbox(label="현장위치(도/시)"),
52
+ gr.Textbox(label="건축법상용도")
53
+ ],
54
+ outputs=[
55
+ gr.Textbox(label="건축공사비"),
56
+ gr.Textbox(label="기계공사비"),
57
+ gr.Textbox(label="전기공사비"),
58
+ gr.Textbox(label="통신공사비"),
59
+ gr.Textbox(label="토목공사비"),
60
+ gr.Textbox(label="조경공사비")
61
+ ]
62
+ )
63
+
64
+ # Gradio 앱을 실행합니다.
65
  iface.launch()
model.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5eb90256b7690b0e93fb6bd45d0cb3e4c5fc3b2544449b5bb8be09dbe41ea511
3
+ size 10257142