Rizwan9 commited on
Commit
62f8788
·
verified ·
1 Parent(s): 5be8113

Upload app.py

Browse files
Files changed (1) hide show
  1. app.py +30 -0
app.py ADDED
@@ -0,0 +1,30 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from flask import Flask, request, jsonify
2
+ import joblib, pandas as pd, numpy as np
3
+
4
+ # Load the model bundle (adjust the filename if needed)
5
+ BUNDLE_FILENAME = "best_model_random_forest.joblib"
6
+ bundle = joblib.load(BUNDLE_FILENAME)
7
+ model = bundle["model"]
8
+ feature_cols = bundle["feature_cols"]
9
+
10
+ app = Flask(__name__)
11
+
12
+ @app.route("/")
13
+ def home():
14
+ return "SuperKart Forecast API is running."
15
+
16
+ @app.route("/predict", methods=["POST"])
17
+ def predict():
18
+ data = request.get_json(force=True)
19
+ if isinstance(data, dict):
20
+ df = pd.DataFrame([data])
21
+ else:
22
+ df = pd.DataFrame(data)
23
+
24
+ # Align columns with training
25
+ X = df.reindex(columns=feature_cols, fill_value=np.nan)
26
+ preds = model.predict(X)
27
+ return jsonify({"predictions": [float(p) for p in preds]})
28
+
29
+ if __name__ == "__main__":
30
+ app.run(host="0.0.0.0", port=5000)