Spaces:
Sleeping
Sleeping
import gradio as gr | |
import skops.io as sio | |
import pandas as pd | |
pipe = sio.load("./Model/personality_pipeline.skops",trusted=["numpy.dtype","sklearn.compose._column_transformer._RemainderColsList"]) | |
print("Succesfully loaded the model") | |
def predict_personality(Time_spent_Alone,Stage_fear,Social_event_attendance,Going_outside,Drained_after_socializing,Friends_circle_size,Post_frequency): | |
"""Predict personality based on social features. | |
Args: | |
+ Time_spent_Alone: Hours spent alone daily (0-11). | |
+ Stage_fear: Presence of stage fright (Yes/No). | |
+ Social_event_attendance: Frequency of social events (0-10). | |
+ Going_outside: Frequency of going outside (0-7). | |
+ Drained_after_socializing: Feeling drained after socializing (Yes/No). | |
+ Friends_circle_size: Number of close friends (0-15). | |
+ Post_frequency: Social media post frequency (0-10). | |
Returns: | |
str: Predicted drug label | |
""" | |
features = [Time_spent_Alone,Stage_fear,Social_event_attendance,Going_outside,Drained_after_socializing,Friends_circle_size,Post_frequency] | |
columns = [ | |
"Time_spent_Alone", | |
"Stage_fear", | |
"Social_event_attendance", | |
"Going_outside", | |
"Drained_after_socializing", | |
"Friends_circle_size", | |
"Post_frequency" | |
] | |
df_input = pd.DataFrame([features], columns=columns) | |
predicted_personality = pipe.predict(df_input)[0] | |
return f"Predicted personality: {str(predicted_personality).upper()}" | |
inputs=[ | |
gr.Slider(0,11,step=1,label="Time_spent_Alone",info="How many hours do you spend alone every day? (0-11)"), | |
gr.Radio(["Yes","No"],label="Stage_fear",info="Are you afraid of standing in front of crowds? (Yes/No)."), | |
gr.Slider(0,10,step=1,label="Social_event_attendance",info="How frequently do you participate in social events? (0-10)"), | |
gr.Slider(0,7,step=1,label="Going_outside",info="How many days per week do you go outside? (0-7)"), | |
gr.Radio(["Yes","No"],label="Drained_after_socializing",info="Do you feel exhausted after parties or interacting with many people? (Yes/No)."), | |
gr.Slider(0,15,step=1,label="Friends_circle_size",info="How many close friends do you have? (0-15)"), | |
gr.Slider(0,10,step=1,label="Post_frequency",info="How often do you post on social media? (0-10)"), | |
] | |
outputs=[gr.Label(num_top_classes=5)] | |
examples=[ | |
[4.0,"No",4.0,6.0,"No",13.0,5.0], | |
[9.0,"Yes",0.0,0.0,"Yes",0.0,3.0], | |
[9.0,"Yes",1.0,2.0,"Yes",5.0,2.0] | |
] | |
title="Personality Classification" | |
description="Enter your social features to determine whether you are an Introvert or Extrovert" | |
article="This app is for my MLOps with CI/CD pipe line, pretty cool right?" | |
gr.Interface( | |
fn=predict_personality, | |
inputs=inputs, | |
outputs=outputs, | |
examples=examples, | |
title=title, | |
description=description, | |
article=article, | |
theme=gr.themes.Soft() | |
).launch() |