import joblib import pandas as pd import gradio as gr # Load model model = joblib.load("stroke_rf_model.pkl") # Define prediction function def predict_stroke(age, hypertension, heart_disease, glucose_level, bmi): data = { 'age': [age], 'hypertension': [hypertension], 'heart_disease': [heart_disease], 'avg_glucose_level': [glucose_level], 'bmi': [bmi] } df = pd.DataFrame(data) prediction = model.predict(df) return "Stroke Risk" if prediction[0] == 1 else "No Stroke Risk" # Create Gradio Interface iface = gr.Interface( fn=predict_stroke, inputs=[ gr.Number(label="Age"), gr.Radio(choices=[0, 1], label="Hypertension (0=No, 1=Yes)"), gr.Radio(choices=[0, 1], label="Heart Disease (0=No, 1=Yes)"), gr.Number(label="Average Glucose Level"), gr.Number(label="BMI") ], outputs="text", title="Stroke Prediction Model", description="Predict stroke risk based on health metrics." ) # Launch the app iface.launch()