Skip to content

Commit 9b1c88f

Browse files
feat: update json parse view
1 parent 7c56ac6 commit 9b1c88f

File tree

2 files changed

+17
-2
lines changed

2 files changed

+17
-2
lines changed

candidates/views.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@
1515
extract_candidate_data_with_openai,
1616
extract_job_data_with_openai,
1717
clean_cv_text,
18-
reformat_cv_text_with_openai
18+
reformat_cv_text_with_openai,
19+
parse_json_result
1920
)
2021

2122
from core.utils import generate_unique_slug

core/views.py

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -291,4 +291,18 @@ def generate():
291291
if delta:
292292
yield delta
293293

294-
return StreamingHttpResponse(generate(), content_type='text/plain')
294+
return StreamingHttpResponse(generate(), content_type='text/plain')
295+
296+
297+
def parse_json_result(result):
298+
"""
299+
Tar en sträng från OpenAI som kan innehålla ```json-taggar,
300+
rensar dessa och returnerar resultatet som en Python-dict.
301+
"""
302+
try:
303+
# Ta bort ev. ```json-taggar och onödiga whitespace
304+
cleaned = re.sub(r"```json|```", "", result).strip()
305+
return json.loads(cleaned)
306+
except json.JSONDecodeError as e:
307+
print("❌ JSONDecodeError i parse_json_result:", e)
308+
return {}

0 commit comments

Comments
 (0)