AkhilRaja's picture
Upload app.py with huggingface_hub
5e5e4ca verified
raw
history blame contribute delete
902 Bytes
import os
from flask import Flask, request, jsonify
import joblib
import numpy as np
import pandas as pd
# Load model
model = joblib.load("best_rf_model.pkl")
app = Flask(__name__)
@app.route("/")
def home():
return jsonify({"message": "Random Forest Prediction API is running!"})
@app.route("/predict", methods=["POST"])
def predict():
try:
data = request.get_json()
# Handle both dict (single row) and list of dicts
if isinstance(data, dict):
df = pd.DataFrame([data]) # wrap single row
else:
df = pd.DataFrame(data)
predictions = model.predict(df)
return jsonify({"predictions": predictions.tolist()})
except Exception as e:
return jsonify({"error": str(e)})
if __name__ == "__main__":
port = int(os.environ.get("PORT", 7860)) # Default Hugging Face port
app.run(host="0.0.0.0", port=port)