Commit
·
87de797
1
Parent(s):
79c2799
fix json formate from main.py new
Browse files
main.py
CHANGED
@@ -9,6 +9,7 @@ from flask_cors import CORS
|
|
9 |
from flask import Flask, request, jsonify, render_template, make_response
|
10 |
from werkzeug.utils import secure_filename
|
11 |
from dotenv import load_dotenv
|
|
|
12 |
|
13 |
# Load environment variables
|
14 |
load_dotenv()
|
@@ -125,6 +126,8 @@ from similarity_check.semantic_meaning_check.semantic import question_vector_sen
|
|
125 |
from similarity_check.llm_based_scoring.llm import llm_score
|
126 |
|
127 |
app = Flask(__name__)
|
|
|
|
|
128 |
|
129 |
# Create a temporary directory for file uploads
|
130 |
UPLOAD_FOLDER = tempfile.mkdtemp()
|
@@ -136,7 +139,7 @@ CORS(app, resources={
|
|
136 |
r"/*": {
|
137 |
"origins": ["*"],
|
138 |
"methods": ["GET", "POST", "OPTIONS"],
|
139 |
-
"allow_headers": ["Content-Type", "Authorization"]
|
140 |
}
|
141 |
})
|
142 |
|
@@ -254,7 +257,9 @@ def compute_marks():
|
|
254 |
# Get correct answers
|
255 |
correct_answers = request.form.getlist('correct_answers[]')
|
256 |
if not correct_answers:
|
257 |
-
|
|
|
|
|
258 |
|
259 |
# Create TFIDF values for correct answers
|
260 |
max_tfidf = create_tfidf_values(correct_answers)
|
@@ -262,7 +267,9 @@ def compute_marks():
|
|
262 |
# Get all uploaded files
|
263 |
files = request.files.getlist('file')
|
264 |
if not files:
|
265 |
-
|
|
|
|
|
266 |
|
267 |
# Create a temporary directory for processing
|
268 |
base_temp_dir = tempfile.mkdtemp()
|
@@ -359,7 +366,9 @@ def compute_marks():
|
|
359 |
pass
|
360 |
|
361 |
if not results:
|
362 |
-
|
|
|
|
|
363 |
|
364 |
# Clean the results for JSON response
|
365 |
clean_results = {}
|
@@ -375,11 +384,15 @@ def compute_marks():
|
|
375 |
} for f in failed_files]
|
376 |
}
|
377 |
|
378 |
-
|
|
|
|
|
379 |
|
380 |
except Exception as e:
|
381 |
error_msg = str(e).encode('ascii', 'ignore').decode('ascii')
|
382 |
-
|
|
|
|
|
383 |
|
384 |
@app.route('/check_logs')
|
385 |
def check_logs():
|
|
|
9 |
from flask import Flask, request, jsonify, render_template, make_response
|
10 |
from werkzeug.utils import secure_filename
|
11 |
from dotenv import load_dotenv
|
12 |
+
import json
|
13 |
|
14 |
# Load environment variables
|
15 |
load_dotenv()
|
|
|
126 |
from similarity_check.llm_based_scoring.llm import llm_score
|
127 |
|
128 |
app = Flask(__name__)
|
129 |
+
app.config['JSON_SORT_KEYS'] = False
|
130 |
+
app.config['JSONIFY_PRETTYPRINT_REGULAR'] = False
|
131 |
|
132 |
# Create a temporary directory for file uploads
|
133 |
UPLOAD_FOLDER = tempfile.mkdtemp()
|
|
|
139 |
r"/*": {
|
140 |
"origins": ["*"],
|
141 |
"methods": ["GET", "POST", "OPTIONS"],
|
142 |
+
"allow_headers": ["Content-Type", "Authorization", "Accept"]
|
143 |
}
|
144 |
})
|
145 |
|
|
|
257 |
# Get correct answers
|
258 |
correct_answers = request.form.getlist('correct_answers[]')
|
259 |
if not correct_answers:
|
260 |
+
response = make_response(json.dumps({"error": "No correct answers provided"}))
|
261 |
+
response.headers['Content-Type'] = 'application/json'
|
262 |
+
return response, 400
|
263 |
|
264 |
# Create TFIDF values for correct answers
|
265 |
max_tfidf = create_tfidf_values(correct_answers)
|
|
|
267 |
# Get all uploaded files
|
268 |
files = request.files.getlist('file')
|
269 |
if not files:
|
270 |
+
response = make_response(json.dumps({"error": "No files uploaded"}))
|
271 |
+
response.headers['Content-Type'] = 'application/json'
|
272 |
+
return response, 400
|
273 |
|
274 |
# Create a temporary directory for processing
|
275 |
base_temp_dir = tempfile.mkdtemp()
|
|
|
366 |
pass
|
367 |
|
368 |
if not results:
|
369 |
+
response = make_response(json.dumps({"error": "No results computed"}))
|
370 |
+
response.headers['Content-Type'] = 'application/json'
|
371 |
+
return response, 400
|
372 |
|
373 |
# Clean the results for JSON response
|
374 |
clean_results = {}
|
|
|
384 |
} for f in failed_files]
|
385 |
}
|
386 |
|
387 |
+
response = make_response(json.dumps(response_data))
|
388 |
+
response.headers['Content-Type'] = 'application/json'
|
389 |
+
return response, 200
|
390 |
|
391 |
except Exception as e:
|
392 |
error_msg = str(e).encode('ascii', 'ignore').decode('ascii')
|
393 |
+
response = make_response(json.dumps({"error": f"Error computing marks: {error_msg}"}))
|
394 |
+
response.headers['Content-Type'] = 'application/json'
|
395 |
+
return response, 500
|
396 |
|
397 |
@app.route('/check_logs')
|
398 |
def check_logs():
|