import gradio as gr import numpy as np # Load trained model parameters theta = np.load("theta_final.npy") # Define prediction function def predict_stroke_risk(*symptoms): symptoms_array = np.array(symptoms).astype(float) risk = np.dot(symptoms_array, theta) * 100 # Convert to percentage return round(risk, 2) # Define UI symptoms_list = ["Symptom 1", "Symptom 2", "Symptom 3", "Symptom 4", "Symptom 5"] with gr.Blocks() as demo: gr.Markdown("# 🏥 Stroke Risk Predictor 🚑") gr.Markdown("Select symptoms and get your stroke risk percentage.") checkboxes = [gr.Checkbox(label=s) for s in symptoms_list] submit = gr.Button("Predict") output = gr.Textbox(label="Stroke Risk %") submit.click(predict_stroke_risk, checkboxes, output) demo.launch()