Edward Nagy
Add application file
706b0ec unverified
raw
history blame
2.21 kB
import gradio as gr
from PIL import Image
import requests
import hopsworks
import joblib
import pandas as pd
project = hopsworks.login()
fs = project.get_feature_store()
mr = project.get_model_registry()
model = mr.get_model("wine_class_model", version=1)
model_dir = model.download()
model = joblib.load(model_dir + "/wine_class_model.pkl")
print("Model downloaded")
def wine_quality_class(wine_type, fixed_acidity, volatile_acidity, citric_acid, residual_sugar, chlorides, free_sulfur_dioxide, density, pH, sulphates, alcohol):
print("Calling function")
df = pd.DataFrame([[wine_type, fixed_acidity, volatile_acidity, citric_acid, residual_sugar, chlorides, free_sulfur_dioxide, density, pH, sulphates, alcohol]],
columns=['type','fixed_acidity','volatile_acidity','citric_acid','residual_sugar','chlorides','free_sulfur_dioxide','density','pH','sulphates','alcohol'])
print("Predicting")
print(df)
# 'res' is a list of predictions returned as the label.
res = model.predict(df)
return res[0]
demo = gr.Interface(
fn=wine_quality_class,
title="Wine Quality Predictive Analytics",
description="Experiment with wine quality to predict which quality it is.",
allow_flagging="never",
# type,fixed acidity,volatile acidity,citric acid,residual sugar,chlorides,free sulfur dioxide,density,pH,sulphates,alcohol,quality
# e.g. white,7,0.27,0.36,20.7,0.045,45,170,1.001,3,0.45,8.8,6
inputs=[
gr.inputs.Dropdown(["white", "red"], label="Wine type"),
gr.inputs.Number(default=7.0, label="fixed acidity"),
gr.inputs.Number(default=0.27, label="volatile acidity"),
gr.inputs.Number(default=0.36, label="citric acid"),
gr.inputs.Number(default=20.7, label="residual sugar"),
gr.inputs.Number(default=0.045, label="chlorides"),
gr.inputs.Number(default=45, label="free sulfur dioxide"),
gr.inputs.Number(default=1.001, label="density"),
gr.inputs.Number(default=3.0, label="pH"),
gr.inputs.Number(default=0.45, label="sulphates"),
gr.inputs.Number(default=8.8, label="alcohol"),
],
outputs=gr.Textbox(type="str"))
demo.launch(debug=True)