Spaces:
Sleeping
Sleeping
| # Superkart Sales Forecasting Flask API | |
| from flask import Flask, request, jsonify | |
| import pandas as pd | |
| import numpy as np | |
| import joblib | |
| import traceback | |
| app = Flask(__name__) | |
| MODEL_PATH = "best_model.pkl" | |
| try: | |
| model = joblib.load(MODEL_PATH) | |
| print("β Model loaded successfully.") | |
| except Exception as e: | |
| print("β Model load error:", e) | |
| traceback.print_exc() | |
| def health_check(): | |
| return "β SuperKart backend is up and running!", 200 | |
| def predict_single(): | |
| try: | |
| data = request.get_json() | |
| df = pd.DataFrame([data]) | |
| df["Store_Age"] = 2025 - df["Store_Establishment_Year"] | |
| df["Price_per_kg"] = df["Product_MRP"] / df["Product_Weight"] | |
| df["MRP_Band"] = pd.cut( | |
| df["Product_MRP"], bins=[0, 100, 200, float("inf")], labels=["Low", "Mid", "High"] | |
| ) | |
| pred_log = model.predict(df)[0] | |
| pred = np.expm1(pred_log) | |
| return jsonify({"Predicted_Sales": round(float(pred), 2)}) | |
| except Exception as e: | |
| return jsonify({"error": str(e)}), 500 | |