Перейти к содержимому
Основной сайт Новости Консоль

Диагностика разрывов соединения

Генерация изображений — это длительный запрос (10–60 секунд), и разрывы соединения в большинстве случаев вызваны таймаутом клиента или промежуточного слоя. Проверяйте по порядку ниже.

Список проверок

  1. Таймаут HTTP-клиента: у requests / axios / fetch значение по умолчанию обычно составляет 30 секунд, что меньше времени генерации, поэтому соединение обязательно оборвётся. Унифицируйте и установите ≥120 секунд:

    client = OpenAI(base_url="...", api_key="...", timeout=180)
  2. Таймаут собственного обратного прокси: у nginx по умолчанию proxy_read_timeout 60s, это тоже нужно увеличить:

    proxy_read_timeout 180s;
    proxy_send_timeout 180s;
  3. Ограничение размера тела ответа: при возврате base64 объём ответа может достигать нескольких МБ, проверьте у прокси и шлюза client_max_body_size / верхний предел body;

  4. Корпоративная сеть/прокси: некоторые корпоративные прокси обрывают долгие соединения, сравните с прямым подключением;

  5. Слишком высокая параллельность: при большом числе одновременных запросов часть из них ставится в очередь, и после увеличения общего времени выполнения срабатывает таймаут — уменьшите параллельность или добавьте очередь.

Правильная обработка после разрыва

  • Неудачные запросы не списывают оплату (предварительная блокировка автоматически возвращается), их можно безопасно повторить;
  • Используйте повторные попытки с экспоненциальной задержкой (5s → 15s → 45s), не отправляйте сразу много повторов;
  • Случайные 5xx в часы пик — это колебания на стороне вышестоящего сервиса; обычно восстановление происходит после 1–2 повторов, см. Коды ошибок и повторные попытки.

Если всё ещё не решено

В консоли в «Журнале» проверьте статус этого запроса; приложите время запроса и имя модели, чтобы служба поддержки могла проверить проблему на стороне канала.