fruitpicker01 commited on
Commit
9740304
·
verified ·
1 Parent(s): dab2b5a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -9
app.py CHANGED
@@ -2093,17 +2093,21 @@ def check_no_word_repetitions(message):
2093
 
2094
  def parse_json_response(response):
2095
  try:
2096
- # Попытка найти самый длинный корректный JSON в ответе
2097
- import re
2098
- matches = re.findall(r'\{(?:[^{}]|(?R))*\}', response)
2099
- if matches:
2100
- json_str = matches[-1] # Берем последний найденный JSON
 
 
 
 
2101
  result = json.loads(json_str)
2102
  return result
2103
  else:
2104
  print("JSON не найден в ответе")
2105
  return None
2106
- except json.JSONDecodeError as e:
2107
  print(f"Ошибка при разборе JSON: {e}")
2108
  return None
2109
 
@@ -2198,7 +2202,7 @@ def check_abstract_claims(message):
2198
  decision = result.get("decision", False)
2199
  explanation = result.get("explanation", "")
2200
  print("Explanation:", explanation)
2201
- return not decision # Инвертируем логику
2202
  else:
2203
  return None
2204
 
@@ -2220,7 +2224,7 @@ def check_specialized_terms(message):
2220
  decision = result.get("decision", False)
2221
  explanation = result.get("explanation", "")
2222
  print("Explanation:", explanation)
2223
- return not decision # Инвертируем логику
2224
  else:
2225
  return None
2226
 
@@ -2243,7 +2247,7 @@ def check_offensive_phrases(message):
2243
  decision = result.get("decision", False)
2244
  explanation = result.get("explanation", "")
2245
  print("Explanation:", explanation)
2246
- return not decision # Инвертируем логику
2247
  else:
2248
  return None
2249
 
 
2093
 
2094
  def parse_json_response(response):
2095
  try:
2096
+ # Попытка найти JSON-подобную структуру в ответе
2097
+ match = re.search(r'\{.*', response)
2098
+ if match:
2099
+ json_str = match.group(0)
2100
+ # Проверяем и добавляем недостающие кавычки и скобки
2101
+ if json_str.count('"') % 2 != 0:
2102
+ json_str += '"'
2103
+ if json_str.count('{') > json_str.count('}'):
2104
+ json_str += '}'
2105
  result = json.loads(json_str)
2106
  return result
2107
  else:
2108
  print("JSON не найден в ответе")
2109
  return None
2110
+ except Exception as e:
2111
  print(f"Ошибка при разборе JSON: {e}")
2112
  return None
2113
 
 
2202
  decision = result.get("decision", False)
2203
  explanation = result.get("explanation", "")
2204
  print("Explanation:", explanation)
2205
+ return not decision # Инвертируем логическое значение
2206
  else:
2207
  return None
2208
 
 
2224
  decision = result.get("decision", False)
2225
  explanation = result.get("explanation", "")
2226
  print("Explanation:", explanation)
2227
+ return not decision # Инвертируем логическое значение
2228
  else:
2229
  return None
2230
 
 
2247
  decision = result.get("decision", False)
2248
  explanation = result.get("explanation", "")
2249
  print("Explanation:", explanation)
2250
+ return not decision # Инвертируем логическое значение
2251
  else:
2252
  return None
2253