|
|
import gradio as gr |
|
|
import pickle |
|
|
import numpy as np |
|
|
from sklearn.preprocessing import StandardScaler |
|
|
|
|
|
|
|
|
with open("rf_model.pkl", "rb") as f: |
|
|
MODEL = pickle.load(f) |
|
|
|
|
|
def predict(f1, f2, f3, f4, f5): |
|
|
data = np.array([[f1, f2, f3, f4, f5]]) |
|
|
scaled = StandardScaler().fit_transform(data) |
|
|
return int(MODEL.predict(scaled)[0]) |
|
|
|
|
|
if __name__ == "__main__": |
|
|
demo = gr.Interface( |
|
|
fn=predict, |
|
|
inputs=[ |
|
|
gr.Slider(0, 10, value=5, label="Feature 1"), |
|
|
gr.Slider(0, 10, value=3, label="Feature 2"), |
|
|
gr.Slider(0, 10, value=7, label="Feature 3"), |
|
|
gr.Slider(0, 10, value=6, label="Feature 4"), |
|
|
gr.Slider(0, 10, value=4, label="Feature 5"), |
|
|
], |
|
|
outputs=gr.Textbox(label="Prediction"), |
|
|
title="🐨 TaskMaster Job Scheduler", |
|
|
description="Enter five features and get a RandomForest prediction.", |
|
|
) |
|
|
demo.launch() |
|
|
|