Spaces:
Sleeping
Sleeping
fruitpicker01
commited on
Commit
•
763e886
1
Parent(s):
f1b40fb
Update app.py
Browse files
app.py
CHANGED
@@ -95,7 +95,20 @@ def replace_k_with_thousands(message):
|
|
95 |
# Замена и для 'k' и для 'К', с учётом регистра
|
96 |
message = re.sub(r'(\d+)[kкКK]', r'\1 000', message, flags=re.IGNORECASE)
|
97 |
return message
|
98 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
99 |
# Функция для добавления ошибок в промпт для перегенерации
|
100 |
def append_errors_to_prompt(prompt, checks):
|
101 |
errors = []
|
@@ -145,6 +158,8 @@ def generate_message_gigachat_pro_with_retry(prompt):
|
|
145 |
|
146 |
# Генерация сообщения
|
147 |
message = generate_message_gigachat_pro(prompt)
|
|
|
|
|
148 |
message_length = len(message)
|
149 |
|
150 |
# Проверка длины сообщения. Если не проходит, сразу перегенерируем
|
@@ -154,7 +169,6 @@ def generate_message_gigachat_pro_with_retry(prompt):
|
|
154 |
continue
|
155 |
|
156 |
# Выполняем замены и проверки
|
157 |
-
message = replace_k_with_thousands(message)
|
158 |
checks = perform_checks(message)
|
159 |
|
160 |
# Обновляем последнее сообщение
|
|
|
95 |
# Замена и для 'k' и для 'К', с учётом регистра
|
96 |
message = re.sub(r'(\d+)[kкКK]', r'\1 000', message, flags=re.IGNORECASE)
|
97 |
return message
|
98 |
+
|
99 |
+
# Функция для корректировки использования тире и дефисов
|
100 |
+
def correct_dash_usage(text):
|
101 |
+
# Step 1: Replace any dash with long dash if surrounded by spaces
|
102 |
+
text = re.sub(r'\s[-–—]\s', ' — ', text)
|
103 |
+
|
104 |
+
# Step 2: Replace any dash with short dash if surrounded by numbers without spaces
|
105 |
+
text = re.sub(r'(?<=\d)[-–—](?=\d)', '–', text)
|
106 |
+
|
107 |
+
# Step 3: Replace any dash with hyphen if surrounded by letters or a combination of letters and digits
|
108 |
+
text = re.sub(r'(?<=[a-zA-Zа-яА-Я0-9])[-–—](?=[a-zA-Zа-яА-Я0-9])', '-', text)
|
109 |
+
|
110 |
+
return text
|
111 |
+
|
112 |
# Функция для добавления ошибок в промпт для перегенерации
|
113 |
def append_errors_to_prompt(prompt, checks):
|
114 |
errors = []
|
|
|
158 |
|
159 |
# Генерация сообщения
|
160 |
message = generate_message_gigachat_pro(prompt)
|
161 |
+
message = replace_k_with_thousands(message)
|
162 |
+
message = correct_dash_usage(message)
|
163 |
message_length = len(message)
|
164 |
|
165 |
# Проверка длины сообщения. Если не проходит, сразу перегенерируем
|
|
|
169 |
continue
|
170 |
|
171 |
# Выполняем замены и проверки
|
|
|
172 |
checks = perform_checks(message)
|
173 |
|
174 |
# Обновляем последнее сообщение
|