# import necessary libraries import joblib import numpy as np from flask import Flask, render_template, request, jsonify from sklearn.feature_extraction.text import CountVectorizer from sklearn.linear_model import LogisticRegression from pre_processing import preprocess_text app = Flask(__name__) # specify path for model and vectorizer model_path = "log_model_final.pkl" vectorizer_path = "vectorizer.pkl" # Load the pre-trained model model = joblib.load(model_path) vectorizer = joblib.load(vectorizer_path) @app.route('/') def index(): return render_template('index.html') @app.route('/predict', methods=['POST']) def predict(): # predict try: # Get input text from the form input_text = request.get_json(force=True)['input'] print(input_text) test_data = vectorizer.transform([input_text]) y_pred = model.predict(test_data) print(y_pred) # Return the prediction as JSON return jsonify({'prediction': y_pred[0]}) except Exception as e: return jsonify({'error': str(e)}) if __name__ == '__main__': app.run(host="0.0.0.0",port=5000)