# Importing libraries import joblib import gradio as gr import pandas as pd charges_predictor = joblib.load("model.joblib") age_input = gr.Number(label="Age", value=25) bmi_input = gr.Number(label="BMI", value=25) children_input = gr.Number(label="Children", value=0) sex_input = gr.Dropdown( ["male","female"], value="male", label="Sex" ) smoker_input = gr.Dropdown( ["yes","no"], value="no", label="Smoker" ) region_input = gr.Dropdown( ["southeast","southwest","northeast","northwest"], value="southeast", label="Region" ) model_output = gr.Textbox(label="Predicted Insurance Cost") def predict_charges(age,bmi,children,sex,smoker,region): sample = { "age": age, "bmi": bmi, "children": children, "sex": sex, "smoker": smoker, "region": region } data_point = pd.DataFrame([sample]) prediction = charges_predictor.predict(data_point) return f"${prediction[0]:,.2f}" demo = gr.Interface( fn=predict_charges, inputs=[ age_input, bmi_input, children_input, sex_input, smoker_input, region_input ], outputs=model_output, title="Insurance Charge Prediction", description="Predict insurance medical charges based on user information" ) demo.launch()