import gradio as gr import skops.io as sio pipe = sio.load("./Model/drug_pipeline.skops", trusted=True) def classifier(Age, Sex, BP, Cholesterol, Na_to_K): """ This function takes input features Age, Sex, BP, Cholesterol, and Na_to_K, and uses a sklearn pipeline to make a prediction on the glass label. Args: Age (float): The age of the patient Sex (str): The sex of the patient (M or F) BP (str): The blood pressure of the patient (HIGH, NORMAL, or LOW) Cholesterol (str): The cholesterol level of the patient (HIGH or NORMAL) Na_to_K (float): The ratio of sodium to potassium in the patient's blood Returns: str: A string with the predicted drug label """ pred_drug = pipe.predict([[Age, Sex, BP, Cholesterol, Na_to_K]])[0] label = f"Predicted Drug label: **{pred_drug}**" return label inputs = [ gr.Slider(15, 74, step=1, label="Age"), gr.Radio(["M", "F"], label="Sex"), gr.Radio(["HIGH", "LOW", "NORMAL"], label="Blood Pressure"), gr.Radio(["HIGH", "NORMAL"], label="Cholesterol"), gr.Slider(6.2, 38.2, step=0.1, label="Na_to_K"), ] outputs = [gr.Label(num_top_classes=5)] examples = [ [30, "M", "HIGH", "NORMAL", 15.4], [35, "F", "LOW", "NORMAL", 8], [50, "M", "HIGH", "HIGH", 34], ] title = "Drug Classification" description = "Enter the details to correctly identify Drug type?" gr.Interface( fn=classifier, inputs=inputs, outputs=outputs, examples=examples, title=title, description=description, ).launch()