import gradio as gr import numpy as np from PIL import Image import pandas as pd import requests import hopsworks import joblib project = hopsworks.login() fs = project.get_feature_store() mr = project.get_model_registry() model = mr.get_model("car_prices", version=1) model_dir = model.download() model = joblib.load(model_dir + "/car_prices_model.pkl") def car(km_driven, mileage, engine, max_power, seats, age, seller_type, fuel_type, transmission_type): input_list = [] input_list.append(km_driven) input_list.append(mileage) input_list.append(engine) input_list.append(max_power) input_list.append(seats) input_list.append(age) input_list.append(seller_type) input_list.append(fuel_type) input_list.append(transmission_type) if (input_list[6] == "Dealer"): input_list.pop(6) input_list.insert(6, 1) input_list.insert(7, 0) input_list.insert(8, 0) if (input_list[6] == "Individual"): input_list.pop(6) input_list.insert(6, 0) input_list.insert(7, 1) input_list.insert(8, 0) if (input_list[6] == "Trustmark Dealer"): input_list.pop(6) input_list.insert(6, 0) input_list.insert(7, 0) input_list.insert(8, 1) if (input_list[9] == "CNG"): input_list.pop(9) input_list.insert(9, 1) input_list.insert(10, 0) input_list.insert(11, 0) input_list.insert(12, 0) if (input_list[9] == "Diesel"): input_list.pop(9) input_list.insert(9, 0) input_list.insert(10, 1) input_list.insert(11, 0) input_list.insert(12, 0) if (input_list[9] == "Electric"): input_list.pop(9) input_list.insert(9, 0) input_list.insert(10, 0) input_list.insert(11, 1) input_list.insert(12, 0) if (input_list[9] == "Petrol"): input_list.pop(9) input_list.insert(9, 0) input_list.insert(10, 0) input_list.insert(11, 0) input_list.insert(12, 1) if (input_list[13] == "Automatic"): input_list.pop(13) input_list.insert(13, 1) input_list.insert(14, 0) if (input_list[13] == "Manual"): input_list.pop(13) input_list.insert(13, 0) input_list.insert(14, 1) df = pd.DataFrame(input_list) res = model.predict(df.T)[0] return res demo = gr.Interface( fn=car, title="Car Price Predictive Analytics", description="Experiment with car details to predict the price of your car.", allow_flagging="never", inputs=[ gr.inputs.Number(default=10000.0, label="Kilometers driven"), gr.inputs.Number(default=12.0, label="Mileage (in KM/L)"), gr.inputs.Number(default=1199.0, label="Engine Size (in cc)"), gr.inputs.Number(default=70.0, label="Max Power (in BHP)"), gr.inputs.Number(default=5, label="Number of Seats"), gr.inputs.Number(default=4.0, label="Age of the car"), gr.inputs.Dropdown(choices=["Dealer", "Individual", "Trustmark Dealer"]), gr.inputs.Dropdown(choices=["Petrol", "Diesel", "Electric", "CNG"]), gr.inputs.Dropdown(choices=["Automatic", "Manual"]), ], outputs=gr.Number()) demo.launch()