#!/usr/bin/env python # coding: utf-8 # In[3]: import streamlit as st import urllib.request import json # Streamlit app title st.title("Stroke Prediction") # Define input fields st.sidebar.header("Input Parameters") gender = st.sidebar.selectbox("Gender", ["Male", "Female"]) age = st.sidebar.slider("Age", 0, 100, 30) hypertension = st.sidebar.checkbox("Hypertension") heart_disease = st.sidebar.checkbox("Heart Disease") ever_married = st.sidebar.checkbox("Ever Married") work_type = st.sidebar.selectbox("Work Type", ["Private", "Self-employed", "Govt_job", "Children", "Never_worked"]) residence_type = st.sidebar.selectbox("Residence Type", ["Urban", "Rural"]) avg_glucose_level = st.sidebar.slider("Average Glucose Level", 0.0, 300.0, 100.0) bmi = st.sidebar.number_input("BMI", 0.0, 100.0, 25.0) smoking_status = st.sidebar.selectbox("Smoking Status", ["Smokes", "Never Smoked", "Unknown"]) # Create a button to trigger prediction if st.sidebar.button("Predict"): # Prepare data data = { "Inputs": { "data": [ { "id": 0, "gender": gender, "age": age, "hypertension": 1 if hypertension else 0, "heart_disease": 1 if heart_disease else 0, "ever_married": ever_married, "work_type": work_type, "Residence_type": residence_type, "avg_glucose_level": avg_glucose_level, "bmi": bmi, "smoking_status": smoking_status } ] }, "GlobalParameters": { "method": "predict" } } # Convert data to JSON data_json = json.dumps(data).encode() # Azure ML Model URL model_url = 'http://38d9a89f-0a86-4fdb-bf82-50ed33213947.southeastasia.azurecontainer.io/score' # Set headers headers = {'Content-Type': 'application/json'} # Make the HTTP request to the model try: response = urllib.request.urlopen(urllib.request.Request(model_url, data_json, headers)) result = response.read() st.success(f"Prediction Result: {result}") except urllib.error.HTTPError as error: st.error(f"Prediction failed with status code: {error.code}") # In[ ]: