sehaj13 commited on
Commit
ee3c55d
·
verified ·
1 Parent(s): 8d264b8

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +44 -0
app.py ADDED
@@ -0,0 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import joblib
3
+ import numpy as np
4
+
5
+ # Load the trained model
6
+ model = joblib.load("decision_tree_regressor_model.pkl")
7
+
8
+ # Define the prediction function
9
+ def predict_rpm(
10
+ TM, U_percent, Thin, Thick, Neps, IPI, HI, ARKM, RKM_CV, MRKM, Elongation, Elon_CV
11
+ ):
12
+ features = np.array([
13
+ TM, U_percent, Thin, Thick, Neps, IPI, HI, ARKM, RKM_CV, MRKM, Elongation, Elon_CV
14
+ ]).reshape(1, -1)
15
+ prediction = model.predict(features)
16
+ return round(prediction[0], 2)
17
+
18
+ # Define sliders for each feature
19
+ inputs = [
20
+ gr.Slider(minimum=3.8, maximum=4.2, step=0.1, label="TM"),
21
+ gr.Slider(minimum=9.42, maximum=10.16, step=0.01, label="U_percent"),
22
+ gr.Slider(minimum=0.0, maximum=4, step=1, label="Thin"),
23
+ gr.Slider(minimum=18.0, maximum=40, step=1, label="Thick"),
24
+ gr.Slider(minimum=56, maximum=101.0, step=1, label="Neps"),
25
+ gr.Slider(minimum=89, maximum=122.0, step=1, label="IPI"),
26
+ gr.Slider(minimum=3.51, maximum=4.45, step=0.1, label="HI"),
27
+ gr.Slider(minimum=18.7, maximum=20.24, step=0.1, label="ARKM"),
28
+ gr.Slider(minimum=6.89, maximum=8.6, step=0.1, label="RKM_CV"),
29
+ gr.Slider(minimum=13.55, maximum=15.95, step=0.1, label="MRKM"),
30
+ gr.Slider(minimum=3.75, maximum=5.52, step=0.1, label="Elongation"),
31
+ gr.Slider(minimum=8.04, maximum=10.54, step=0.1, label="Elon_CV"),
32
+ ]
33
+
34
+ # Create the interface
35
+ demo = gr.Interface(
36
+ fn=predict_rpm,
37
+ inputs=inputs,
38
+ outputs=gr.Number(label="Predicted RPM"),
39
+ title="RPM Prediction App",
40
+ description="Adjust the sliders for each of the 12 features to predict the RPM."
41
+ )
42
+
43
+ if __name__ == "__main__":
44
+ demo.launch()