Bhanushray commited on
Commit
bf95036
·
verified ·
1 Parent(s): 9277c36

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +53 -53
app.py CHANGED
@@ -1,54 +1,54 @@
1
- from flask import Flask, request, jsonify
2
- from model_handler import MODEL_HANDLER
3
-
4
- # INITIALIZING THE FLASK APP
5
- FLASK_APP = Flask(__name__)
6
-
7
- # --- API ENDPOINT DEFINITIONS ---
8
-
9
- @FLASK_APP.route("/", methods=["GET"])
10
- def health_Check():
11
- # HEALTH CHECKING ENDPOINT TO CONFIRM THE API IS LIVE
12
- return jsonify({
13
- "status": "ok",
14
- "message": "Semantic Similarity API is operational."
15
- })
16
-
17
- @FLASK_APP.route("/predict", methods=["POST"])
18
- def predict_Handler():
19
- """
20
- HANDLES THE PREDICTION REQUEST.
21
- """
22
- # GETTING THE JSON PAYLOAD FROM THE REQUEST
23
- input_Payload = request.get_json()
24
-
25
- # VALIDATING THE INCOMING DATA
26
- if not input_Payload:
27
- return jsonify({"error": "BAD REQUEST: Missing JSON body."}), 400
28
-
29
- text1_Value = input_Payload.get("text1")
30
- text2_Value = input_Payload.get("text2")
31
-
32
- if not text1_Value or not text2_Value:
33
- return jsonify({"error": "BAD REQUEST: 'text1' and 'text2' are required fields."}), 400
34
-
35
- # PROCESSING THE REQUEST AND GET THE SCORE
36
- try:
37
- # USING THE MODEL HANDLER TO GET THE SIMILARITY SCORE
38
- similarityScore = MODEL_HANDLER.calculate_Similarity(text1_Value, text2_Value)
39
-
40
- # THE RESPONSE BODY
41
- response_Body = {
42
- "similarity_score": similarityScore
43
- }
44
-
45
- return jsonify(response_Body), 200
46
-
47
- except Exception as e:
48
- # CATCHING ANY UNEXPECTED ERRORS
49
- print(f"INTERNAL ERROR: {e}")
50
- return jsonify({"error": "An internal server error occurred."}), 500
51
-
52
- if __name__ == "__main__":
53
- # THIS PART IS ONLY FOR LOCAL TESTING. GUNICORN WILL RUN THE APP ON HUGGING FACE
54
  FLASK_APP.run(host="0.0.0.0", port=8000, debug=True)
 
1
+ from flask import Flask, request, jsonify
2
+ from model_handler import MODEL_HANDLER
3
+
4
+ # INITIALIZING THE FLASK APP
5
+ FLASK_APP = Flask(__name__)
6
+
7
+ # --- API ENDPOINT DEFINITIONS ---
8
+
9
+ @FLASK_APP.route("/", methods=["GET"])
10
+ def health_Check():
11
+ # HEALTH CHECKING ENDPOINT TO CONFIRM THE API IS LIVE
12
+ return jsonify({
13
+ "status": "ok",
14
+ "message": "Semantic Similarity API is operational."
15
+ })
16
+
17
+ @FLASK_APP.route("/predict", methods=["POST"])
18
+ def predict_Handler():
19
+ """
20
+ HANDLES THE PREDICTION REQUEST.
21
+ """
22
+ # GETTING THE JSON PAYLOAD FROM THE REQUEST
23
+ input_Payload = request.get_json()
24
+
25
+ # VALIDATING THE INCOMING DATA
26
+ if not input_Payload:
27
+ return jsonify({"error": "BAD REQUEST: Missing JSON body."}), 400
28
+
29
+ text1_Value = input_Payload.get("text1")
30
+ text2_Value = input_Payload.get("text2")
31
+
32
+ if not text1_Value or not text2_Value:
33
+ return jsonify({"error": "BAD REQUEST: 'text1' and 'text2' are required fields."}), 400
34
+
35
+ # PROCESSING THE REQUEST AND GET THE SCORE
36
+ try:
37
+ # USING THE MODEL HANDLER TO GET THE SIMILARITY SCORE
38
+ similarityScore = MODEL_HANDLER.calculate_Similarity(text1_Value, text2_Value)
39
+
40
+ # THE RESPONSE BODY
41
+ response_Body = {
42
+ "similarity score": similarityScore
43
+ }
44
+
45
+ return jsonify(response_Body), 200
46
+
47
+ except Exception as e:
48
+ # CATCHING ANY UNEXPECTED ERRORS
49
+ print(f"INTERNAL ERROR: {e}")
50
+ return jsonify({"error": "An internal server error occurred."}), 500
51
+
52
+ if __name__ == "__main__":
53
+ # THIS PART IS ONLY FOR LOCAL TESTING. GUNICORN WILL RUN THE APP ON HUGGING FACE
54
  FLASK_APP.run(host="0.0.0.0", port=8000, debug=True)