import gradio as gr from joblib import dump, load model_names = ['Logistic_Regression', 'LDA', 'QDA', 'Naive_Bayes', 'SVC'] models = {} vectorizer = load('vectorizer.joblib') for name in model_names: models[name] = load(name + '.joblib') def predict(text, method): prediction = models[method].predict_proba(vectorizer.transform([text]).toarray())[0] return {'Negative Comment':prediction[0], 'Positive Comment':prediction[1]} input_module1 = gr.Textbox(label='Review Comment') input_module2 = gr.Dropdown(choices=model_names, label = "method") output_module = gr.Label(num_top_classes=2,label = "Predicted Probabilities") gr.Interface(fn=predict, inputs=[input_module1,input_module2], outputs=output_module).launch(debug=True)