allenpark commited on
Commit
2a3f17f
·
verified ·
1 Parent(s): e9da7c7

new cleaning function

Browse files
Files changed (1) hide show
  1. app.py +7 -16
app.py CHANGED
@@ -77,23 +77,14 @@ def clean_json_string(json_str):
77
 
78
  # return json_str
79
 
80
- json_str = json_str.replace("'", '"')
81
- json_str = re.sub(r'"SCORE":\s*(FAIL|PASS)', r'"SCORE": "\1"', json_str)
82
-
83
- def escape_quotes(match):
84
- return match.group(0).replace('"', '\\"')
85
-
86
- pattern = r'"([^"\\]*(?:\\.[^"\\]*)*)"'
87
- json_str = re.sub(pattern, lambda m: '"' + escape_quotes(m) + '"', json_str)
88
 
89
- try:
90
- parsed_json = json.loads(json_str)
91
- return parsed_json
92
- except json.JSONDecodeError as e:
93
- print(f"Error parsing JSON: {e}")
94
- print("Cleaned JSON string:")
95
- print(json_str)
96
- return None
97
 
98
  def model_call(question, document, answer):
99
  if question == "" or document == "" or answer == "":
 
77
 
78
  # return json_str
79
 
80
+ json_str = re.sub(r'"(\w+)"\s*:', r'\1:', json_str)
81
+ json_str = re.sub(r':\s*"([^"]*)"', r':"\1"', json_str)
82
+
83
+ def unescape_quotes(match):
84
+ return match.group(0).replace('\\"', '"')
 
 
 
85
 
86
+ json_str = re.sub(r'"([^"\\]*(?:\\.[^"\\]*)*)"', lambda m: '"' + unescape_quotes(m) + '"', json_str)
87
+ return json_str
 
 
 
 
 
 
88
 
89
  def model_call(question, document, answer):
90
  if question == "" or document == "" or answer == "":