Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -1841,26 +1841,38 @@ def generate_sms_with_timer(model_prompt: str, product_name: str, key_message: s
|
|
1841 |
start = time.time()
|
1842 |
best_sms = None
|
1843 |
best_non_crit_count = math.inf # сколько некритич. проверок не пройдено (минимизируем)
|
1844 |
-
|
|
|
|
|
1845 |
while True:
|
|
|
1846 |
now = time.time()
|
1847 |
if now - start > max_time_sec:
|
1848 |
# время вышло
|
|
|
1849 |
break
|
1850 |
-
|
|
|
|
|
|
|
|
|
1851 |
sms, crit_ok, failed_non_crit = attempt_generate_sms_with_checks(model_prompt, product_name, key_message)
|
1852 |
|
1853 |
if crit_ok:
|
1854 |
# значит SMS прошло все критические
|
|
|
1855 |
non_crit_count = len(failed_non_crit)
|
1856 |
if non_crit_count == 0:
|
|
|
1857 |
# идеально
|
1858 |
return sms # тут же возвращаем
|
1859 |
# если не 0, то проверяем, лучше ли, чем best_sms
|
1860 |
if non_crit_count < best_non_crit_count:
|
|
|
1861 |
best_non_crit_count = non_crit_count
|
1862 |
best_sms = sms
|
1863 |
else:
|
|
|
1864 |
# crit fail => пропускаем
|
1865 |
pass
|
1866 |
|
|
|
1841 |
start = time.time()
|
1842 |
best_sms = None
|
1843 |
best_non_crit_count = math.inf # сколько некритич. проверок не пройдено (минимизируем)
|
1844 |
+
|
1845 |
+
attempts = 0
|
1846 |
+
|
1847 |
while True:
|
1848 |
+
|
1849 |
now = time.time()
|
1850 |
if now - start > max_time_sec:
|
1851 |
# время вышло
|
1852 |
+
gr.Warning(f"Отведенные 1,5 минуты на генерацию одного SMS кончились")
|
1853 |
break
|
1854 |
+
|
1855 |
+
attempts = attempts+1
|
1856 |
+
|
1857 |
+
gr.Info(f"Итерация {attempt}: генерируется SMS...")
|
1858 |
+
|
1859 |
sms, crit_ok, failed_non_crit = attempt_generate_sms_with_checks(model_prompt, product_name, key_message)
|
1860 |
|
1861 |
if crit_ok:
|
1862 |
# значит SMS прошло все критические
|
1863 |
+
gr.Warning(f"Критические проверки пройдены")
|
1864 |
non_crit_count = len(failed_non_crit)
|
1865 |
if non_crit_count == 0:
|
1866 |
+
gr.Warning(f"ВСЕ ПРОВЕРКИ ПРОЙДЕНЫ")
|
1867 |
# идеально
|
1868 |
return sms # тут же возвращаем
|
1869 |
# если не 0, то проверяем, лучше ли, чем best_sms
|
1870 |
if non_crit_count < best_non_crit_count:
|
1871 |
+
gr.Warning(f"Не прошло одну из некритических проверок")
|
1872 |
best_non_crit_count = non_crit_count
|
1873 |
best_sms = sms
|
1874 |
else:
|
1875 |
+
gr.Warning(f"Не прошло одну из КРИТИЧЕСКИХ проверок")
|
1876 |
# crit fail => пропускаем
|
1877 |
pass
|
1878 |
|