File size: 1,503 Bytes
8a4966f 316cd63 2deb236 fcad9bd 8a4966f d14a256 eb1f860 4bf6a6a eb1f860 d14a256 5a8af87 8a4966f d13438a 918917d 4b1a293 918917d 82627a9 8a4966f f31f0f6 d13438a 8a4966f f39f1d3 82627a9 8a4966f |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
import gradio as gr
import numpy as np
from PIL import Image
import requests
import hopsworks
import joblib
import os
from datetime import datetime
project = hopsworks.login(api_key_value="B8TDkmcSyPyWFM2o.YuXEbXM7MUFk5gdBXFXsbMz24uZipqY4BttbZ9wIoZ0cn9vQd4bSWgj57vDGXqdh")
mr = project.get_model_registry()
model = mr.get_model("air_model_3", version=1)
model_dir = model.download()
model = joblib.load(model_dir + "/air_model3.pkl")
def forecast():
fs = project.get_feature_store()
feature_view = fs.get_feature_view(
name = 'miami_data_air_quality_fv',
version = 1
)
train_data = feature_view.get_training_data(1)[0]
train_data = train_data.drop(labels = 'city_y',axis =1)
train_data = train_data.rename(columns = {'city_x':'city'})
train_data = train_data.sort_values(by="date", ascending=True).reset_index(drop=True)
train_data["aqi_next_day"] = train_data.groupby('city')['aqi'].shift(1)
X = train_data.drop(columns=["date"]).fillna(0)
y = X.pop("aqi_next_day")
X = X.drop(columns =['city','conditions']).fillna(0)
today_data = X[1:2]
y = model.predict(today_data)
res = int(y[0])
return res
date_today = datetime.now().strftime("%Y-%m-%d")
output_label = date_today + " 's air quality is '"
demo = gr.Interface(
fn=forecast,
title="Air Quality Prediction",
description="Get aqi value",
allow_flagging="never",
inputs=[],
outputs=gr.Textbox(label=output_label))
demo.launch() |