Create app.py
Browse files
app.py
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import gradio as gr
|
| 2 |
+
import pandas as pd
|
| 3 |
+
|
| 4 |
+
def predict_quality(fixed_acidity = None, volatile_acidity = None, citric_acid = None, residual_sugar = None, chlorides = None, free_sulfur_dioxide = None, total_sulfur_dioxide = None, density = None, pH = None, sulphates = None, alcohol = None):
|
| 5 |
+
model_input = [fixed_acidity, volatile_acidity, citric_acid, residual_sugar, chlorides, free_sulfur_dioxide, total_sulfur_dioxide, density, pH, sulphates, alcohol]
|
| 6 |
+
if 0 in model_input:
|
| 7 |
+
return_message = "Error: Invalid Input \n Please Input: \n"
|
| 8 |
+
model_input_name = ['fixed_acidity', 'volatile_acidity', 'citric_acid', 'residual_sugar', 'chlorides', 'free_sulfur_dioxide', 'total_sulfur_dioxide', 'density', 'pH', 'sulphates', 'alcohol']
|
| 9 |
+
for i in range(len(model_input)):
|
| 10 |
+
if model_input[i] == 0:
|
| 11 |
+
return_message = return_message + " " + model_input_name[i]
|
| 12 |
+
return return_message
|
| 13 |
+
else:
|
| 14 |
+
prediction = predict_model(loaded_best_pipeline, data = pd.DataFrame([model_input], columns = white_wine.columns[:-1]))
|
| 15 |
+
return_message = "Predicted Quality: " + str(prediction['prediction_label'][0]) + "\nConfidence: " + str(prediction['prediction_score'][0])
|
| 16 |
+
return return_message
|
| 17 |
+
|
| 18 |
+
demo = gr.Interface(
|
| 19 |
+
fn = predict_quality,
|
| 20 |
+
inputs = ['number', 'number', 'number', 'number', 'number', 'number', 'number', 'number', 'number', 'number', 'number'],
|
| 21 |
+
outputs = [gr.Textbox(label= "Result", lines=8)], api_name = 'predict_quality',
|
| 22 |
+
title = "🍾 White Wine Quality Predictor 🍾",
|
| 23 |
+
description="🍾 This is a white wine quality predicting machine learning model based on a random forest classifier. 🍾"
|
| 24 |
+
)
|
| 25 |
+
demo.launch(share=True)
|