diff --git a/main.py b/main.py index d94f8cf..9620d73 100644 --- a/main.py +++ b/main.py @@ -222,16 +222,24 @@ def gpt_response_message(content: str, name_promt: str): try: response = requests.get(url, params=params, timeout=15) return response.text - except Exception as ex: - print(f"Ошибка при запросе к GPT: {ex}") - logger.info(f"gpt_response_message: {ex}") - + except requests.exceptions.ConnectTimeout as e: + print(f"Ошибка подключения (timeout): {e}") + logger.warning(f"gpt_response_message timeout: {e}") retries += 1 if retries < max_retries: - # Задержка с экспоненциальным увеличением: 1с, 2с, 4с - sleep_time = 2 ** (retries - 1) - print(f"Повторная попытка через {sleep_time} секунд...") - time.sleep(sleep_time) # <-- Добавляем задержку + time.sleep(2 ** (retries - 1)) + except requests.exceptions.ConnectionError as e: + print(f"Ошибка соединения: {e}") + logger.warning(f"gpt_response_message connection error: {e}") + retries += 1 + if retries < max_retries: + time.sleep(2 ** (retries - 1)) + except Exception as ex: + print(f"Ошибка при запросе к GPT: {ex}") + logger.error(f"gpt_response_message: {ex}") + retries += 1 + if retries < max_retries: + time.sleep(2 ** (retries - 1)) logger.info(f"Привышен лимит запросов {max_retries}") return ""