Spaces:
Runtime error
Runtime error
| import gradio as gr | |
| import pandas as pd | |
| import numpy as np | |
| from tensorflow.keras.models import load_model | |
| import pickle | |
| from PIL import Image | |
| # Load models | |
| diabetes_model = pickle.load(open("modelv4.pkl", "rb")) | |
| pneumonia_model = load_model("cnn_model (1).h5") | |
| breast_cancer_model = pickle.load(open("model.pkl", "rb")) | |
| def predict_diabetes(file): | |
| df = pd.read_csv(file) | |
| prediction = diabetes_model.predict(df) | |
| result = ["Positive" if p > 0.5 else "Negative" for p in prediction] | |
| return result | |
| def predict_pneumonia(image): | |
| img = Image.open(image).convert('RGB') | |
| img = img.resize((150, 150)) | |
| img = np.array(img) / 255.0 | |
| img = img.reshape(1, 150, 150, 3) | |
| prediction = pneumonia_model.predict(img)[0][0] | |
| return "Positive" if prediction > 0.5 else "Negative" | |
| def predict_breast_cancer(file): | |
| df = pd.read_csv(file) | |
| prediction = breast_cancer_model.predict(df) | |
| result = ["Positive" if p > 0.5 else "Negative" for p in prediction] | |
| return result | |
| # Gradio Interface | |
| diabetes_interface = gr.Interface( | |
| fn=predict_diabetes, | |
| inputs=gr.File(label="Upload CSV File for Diabetes"), | |
| outputs=gr.Label(label="Diabetes Prediction"), | |
| ) | |
| pneumonia_interface = gr.Interface( | |
| fn=predict_pneumonia, | |
| inputs=gr.Image(type="file", label="Upload Chest X-ray Image"), | |
| outputs=gr.Label(label="Pneumonia Prediction"), | |
| ) | |
| breast_cancer_interface = gr.Interface( | |
| fn=predict_breast_cancer, | |
| inputs=gr.File(label="Upload CSV File for Breast Cancer"), | |
| outputs=gr.Label(label="Breast Cancer Prediction"), | |
| ) | |
| app = gr.TabbedInterface( | |
| [diabetes_interface, pneumonia_interface, breast_cancer_interface], | |
| ["Diabetes", "Pneumonia", "Breast Cancer"], | |
| ) | |
| if __name__ == "__main__": | |
| app.launch() | |