AttiKiss commited on
Commit
eeb4105
·
verified ·
1 Parent(s): dcc3942

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +65 -9
app.py CHANGED
@@ -1,100 +1,156 @@
1
 
 
2
  import gradio as gr
3
-
4
  import pickle
5
 
6
-
7
 
8
  # Load the XGBoost model from disk
9
 
10
  loaded_model = pickle.load(open("xgb_h.pkl", 'rb'))
11
 
12
 
13
-
14
  # Function to predict intent to stay
15
-
16
  def predict_intent_to_stay(Engagement, WorkEnvironment, UpperLevelManagement, RewardsBenefits, EmployeeWellBeing, Workload, LearningDevelopment):
17
 
 
18
  # Create input DataFrame
19
-
20
  input_data = pd.DataFrame({
21
 
22
  'Engagement': [Engagement],
23
 
 
 
24
  'WorkEnvironment': [WorkEnvironment],
25
 
 
 
26
  'UpperLevelManagement': [UpperLevelManagement],
27
 
 
 
28
  'RewardsBenefits': [RewardsBenefits],
29
 
 
 
30
  'EmployeeWellBeing': [EmployeeWellBeing],
31
 
 
 
32
  'Workload': [Workload],
33
 
 
 
34
  'LearningDevelopment': [LearningDevelopment]
35
 
 
 
36
  })
37
 
38
 
39
 
 
 
 
 
40
  # Perform prediction using the loaded model
41
 
42
  prediction = loaded_model.predict(input_data)[0]
43
 
44
-
45
-
46
  return {"Leave": prediction, "Stay": 1 - prediction}
47
 
48
-
49
 
50
  # Create sliders for user input
51
 
 
52
  engagement_slider = gr.Slider(minimum=1, maximum=5, value=3, label="Engagement")
53
 
 
 
54
  work_environment_slider = gr.Slider(minimum=1, maximum=5, value=3, label="Work Environment")
55
 
 
 
56
  upper_level_management_slider = gr.Slider(minimum=1, maximum=5, value=3, label="Upper Level Management")
57
 
 
 
58
  rewards_benefits_slider = gr.Slider(minimum=1, maximum=5, value=3, label="Rewards Benefits")
59
 
 
 
60
  employee_wellbeing_slider = gr.Slider(minimum=1, maximum=5, value=3, label="Employee Well-Being")
61
 
 
 
62
  workload_slider = gr.Slider(minimum=1, maximum=5, value=3, label="Workload")
63
 
 
 
64
  learning_development_slider = gr.Slider(minimum=1, maximum=5, value=3, label="Learning & Development")
65
 
66
 
67
 
68
- # Create the interface
69
 
 
 
 
70
  interface = gr.Interface(
71
 
 
 
72
  fn=predict_intent_to_stay,
73
 
 
 
74
  inputs=[
75
 
 
 
76
  engagement_slider,
77
 
 
 
78
  work_environment_slider,
79
 
 
 
80
  upper_level_management_slider,
81
 
 
 
82
  rewards_benefits_slider,
83
 
 
 
84
  employee_wellbeing_slider,
85
 
 
 
86
  workload_slider,
87
 
 
 
88
  learning_development_slider
89
 
 
 
90
  ],
91
 
 
 
92
  outputs="text"
93
 
 
 
94
  )
95
 
96
 
97
 
 
 
 
 
98
  # Launch the interface
99
 
100
  interface.launch()
 
1
 
2
+ import pandas as pd
3
  import gradio as gr
 
4
  import pickle
5
 
 
6
 
7
  # Load the XGBoost model from disk
8
 
9
  loaded_model = pickle.load(open("xgb_h.pkl", 'rb'))
10
 
11
 
 
12
  # Function to predict intent to stay
 
13
  def predict_intent_to_stay(Engagement, WorkEnvironment, UpperLevelManagement, RewardsBenefits, EmployeeWellBeing, Workload, LearningDevelopment):
14
 
15
+
16
  # Create input DataFrame
 
17
  input_data = pd.DataFrame({
18
 
19
  'Engagement': [Engagement],
20
 
21
+
22
+
23
  'WorkEnvironment': [WorkEnvironment],
24
 
25
+
26
+
27
  'UpperLevelManagement': [UpperLevelManagement],
28
 
29
+
30
+
31
  'RewardsBenefits': [RewardsBenefits],
32
 
33
+
34
+
35
  'EmployeeWellBeing': [EmployeeWellBeing],
36
 
37
+
38
+
39
  'Workload': [Workload],
40
 
41
+
42
+
43
  'LearningDevelopment': [LearningDevelopment]
44
 
45
+
46
+
47
  })
48
 
49
 
50
 
51
+
52
+
53
+
54
+
55
  # Perform prediction using the loaded model
56
 
57
  prediction = loaded_model.predict(input_data)[0]
58
 
 
 
59
  return {"Leave": prediction, "Stay": 1 - prediction}
60
 
 
61
 
62
  # Create sliders for user input
63
 
64
+
65
  engagement_slider = gr.Slider(minimum=1, maximum=5, value=3, label="Engagement")
66
 
67
+
68
+
69
  work_environment_slider = gr.Slider(minimum=1, maximum=5, value=3, label="Work Environment")
70
 
71
+
72
+
73
  upper_level_management_slider = gr.Slider(minimum=1, maximum=5, value=3, label="Upper Level Management")
74
 
75
+
76
+
77
  rewards_benefits_slider = gr.Slider(minimum=1, maximum=5, value=3, label="Rewards Benefits")
78
 
79
+
80
+
81
  employee_wellbeing_slider = gr.Slider(minimum=1, maximum=5, value=3, label="Employee Well-Being")
82
 
83
+
84
+
85
  workload_slider = gr.Slider(minimum=1, maximum=5, value=3, label="Workload")
86
 
87
+
88
+
89
  learning_development_slider = gr.Slider(minimum=1, maximum=5, value=3, label="Learning & Development")
90
 
91
 
92
 
93
+
94
 
95
+
96
+
97
+ # Create the interface
98
  interface = gr.Interface(
99
 
100
+
101
+
102
  fn=predict_intent_to_stay,
103
 
104
+
105
+
106
  inputs=[
107
 
108
+
109
+
110
  engagement_slider,
111
 
112
+
113
+
114
  work_environment_slider,
115
 
116
+
117
+
118
  upper_level_management_slider,
119
 
120
+
121
+
122
  rewards_benefits_slider,
123
 
124
+
125
+
126
  employee_wellbeing_slider,
127
 
128
+
129
+
130
  workload_slider,
131
 
132
+
133
+
134
  learning_development_slider
135
 
136
+
137
+
138
  ],
139
 
140
+
141
+
142
  outputs="text"
143
 
144
+
145
+
146
  )
147
 
148
 
149
 
150
+
151
+
152
+
153
+
154
  # Launch the interface
155
 
156
  interface.launch()