Download app.py from AdrianHR/wine: direct link, hf CLI and curl.
- Browser
- Download file 2.31 kB
-
https://huggingface.co/spaces/AdrianHR/wine/resolve/main/app.py
- Command line
-
hf download hf://spaces/AdrianHR/wine/app.py
-
curl -L -o app.py https://huggingface.co/spaces/AdrianHR/wine/resolve/main/app.py
2.31 kB
| import gradio as gr | |
| from PIL import Image, ImageDraw, ImageFont | |
| 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_model", version=1) | |
| model_dir = model.download() | |
| model = joblib.load(model_dir + "/wine_model.pkl") | |
| print("Model downloaded") | |
| columns = ['type_white','fixed_acidity','volatile_acidity','citric_acid','residual_sugar','chlorides','free_sulfur_dioxide','total_sulfur_dioxide','density','alcohol'] | |
| def get_image_with_text(text): | |
| img = Image.new(size=(200,200),mode="RGBA", color='white') | |
| draw = ImageDraw.Draw(img) | |
| font = ImageFont.load_default(size=150) | |
| draw.text((50,0), text, font=font, fill=(0, 0, 0, 0)) | |
| return img | |
| def wine(type_white,fixed_acidity,volatile_acidity,citric_acid,residual_sugar,chlorides,free_sulfur_dioxide,total_sulfur_dioxide,density,alcohol): | |
| print("Calling function") | |
| # df = pd.DataFrame([[sepal_length],[sepal_width],[petal_length],[petal_width]], | |
| df = pd.DataFrame([[type_white,fixed_acidity,volatile_acidity,citric_acid,residual_sugar,chlorides,free_sulfur_dioxide,total_sulfur_dioxide,density,alcohol]], | |
| columns=columns) | |
| print("Predicting") | |
| print(df) | |
| res = model.predict(df) | |
| res_text = f'the predicted quality of your wine was {res[0]}' | |
| print(res) | |
| img = get_image_with_text(f'{res[0]}') | |
| return img,res_text | |
| demo = gr.Interface( | |
| fn=wine, | |
| title="Wine Quality Predictive Analytics", | |
| description="Experiment with the features to predict which quality the wine is.", | |
| allow_flagging="never", | |
| inputs=[ | |
| gr.Number(value=1.0, label='is_white_wine (1/0)'), | |
| gr.Number(value=7.0, label=columns[1]), | |
| gr.Number(value=0.20, label=columns[2]), | |
| gr.Number(value=0.25, label=columns[3]), | |
| gr.Number(value=9.0, label=columns[4]), | |
| gr.Number(value=0.05, label=columns[5]), | |
| gr.Number(value=40.0, label=columns[6]), | |
| gr.Number(value=150.0, label=columns[7]), | |
| gr.Number(value=0.9950, label=columns[8]), | |
| gr.Number(value=10.0, label=columns[9]), | |
| ], | |
| outputs=[ | |
| gr.Image(type="pil"), | |
| gr.Text(), | |
| ] | |
| ) | |
| demo.launch(debug=True) |