File size: 606 Bytes
865e9ba 586e7a2 865e9ba | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | from flask import Flask, request, jsonify
import joblib
import numpy as np
# Load trained LightGBM Model
model = joblib.load("Lightgbm_model.pkl")
app = Flask(__name__)
@app.route('/predict', methods=['POST'])
def predict():
data = request.json
features = np.array(data['features']).reshape(1, -1)
# Get probability prediction
probs = model.predict_proba(features)[:,1]
# Apply threshold 0.3
prediction = init(probs[0] > 0.3)
return jsonify({
'attack_detected': prediction,
'probability': float(probs[0])
})
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000) |