nullHawk commited on
Commit
399b3cf
·
verified ·
1 Parent(s): b782fda

add: common runner

Browse files
Files changed (1) hide show
  1. app.py +15 -32
app.py CHANGED
@@ -1,35 +1,18 @@
1
- from flask import Flask, request
2
- import pickle
 
3
 
4
- app = Flask(__name__)
 
5
 
6
- model = pickle.load(open("model/classifier.pkl", "rb"))
 
 
7
 
8
- @app.route("/prediction", methods=["POST"])
9
- def predict():
10
- loan_req = request.get_json()
11
- print(loan_req)
12
- if loan_req['Gender'] == "Male":
13
- Gender = 0
14
- else:
15
- Gender = 1
16
- if loan_req['Married'] == "Unmarried":
17
- Married = 0
18
- else:
19
- Married = 1
20
- if loan_req['Credit_History'] == "Unclear Debts":
21
- Credit_History = 0
22
- else:
23
- Credit_History = 1
24
-
25
- ApplicantIncome = loan_req['ApplicantIncome']
26
- LoanAmount = loan_req['LoanAmount']
27
-
28
- result = model.predict([[Gender, Married, ApplicantIncome, LoanAmount, Credit_History]])
29
-
30
- if result == 0:
31
- pred = "Rejected"
32
- else:
33
- pred = "Approved"
34
-
35
- return {"loan_approval_status": pred}
 
1
+ import subprocess
2
+ import threading
3
+ import time
4
 
5
+ def run_backend():
6
+ subprocess.run(["python", "backend/app.py"])
7
 
8
+ def run_frontend():
9
+ time.sleep(2) # Let Flask start up first
10
+ subprocess.run(["streamlit", "run", "frontend/app.py", "--server.port=7860", "--server.address=0.0.0.0"])
11
 
12
+ if __name__ == "__main__":
13
+ t1 = threading.Thread(target=run_backend)
14
+ t2 = threading.Thread(target=run_frontend)
15
+ t1.start()
16
+ t2.start()
17
+ t1.join()
18
+ t2.join()