mental_issue / app.py
sakshi116's picture
Update app.py
0f9ca28 verified
from flask import Flask, render_template, request
import pandas as pd
import pickle
import os
app = Flask(__name__)
@app.route('/', methods=['GET', 'POST'])
def index():
prediction = None
error = None
if request.method == 'POST':
try:
# Load model
if os.path.exists('static/model.pkl'):
with open('static/model.pkl', 'rb') as f:
model = pickle.load(f)
# Get form data
features = [
float(request.form['age']),
float(request.form['mood']),
float(request.form['sleep']),
float(request.form['stress']),
float(request.form['anxiety'])
]
# Predict
pred = model.predict([features])[0]
prob = model.predict_proba([features])[0][1] * 100
message = "Potential mental health issue" if pred == 1 else "No significant concern"
prediction = {'message': message, 'probability': f"{prob:.1f}"}
else:
error = "Model not found. Please run train.py."
except Exception as e:
error = f"Error processing input: {str(e)}"
return render_template('index.html', prediction=prediction, error=error)
if __name__ == '__main__':
app.run(host='0.0.0.0', port=7860, debug=False) # Use port 7860 for HF Spaces, disable debug for production