Ошибка connection errored out в Stable Diffusion: причины и пошаговое решение

Ошибка connection errored out в Stable Diffusion чаще всего появляется в интерфейсе AUTOMATIC1111 WebUI в момент генерации: кнопка Generate нажата, а вместо изображения в блоке результата отображается красное сообщение «Connection errored out». Это означает, что фронтенд на Gradio потерял связь с бэкендом — либо процесс Python «упал», либо соединение между браузером и локальным сервером было разорвано.

Проблема не относится к самой модели генерации: изображение не испорчено, веса чекпоинта ни при чём. Сбой происходит на уровне связки «браузер — сервер Gradio — скрипт Python». Ниже разберём, как диагностировать источник сбоя и вернуть стабильную генерацию.

Что означает ошибка connection errored out

Интерфейс WebUI работает по схеме клиент-сервер: страница в браузере отправляет запросы на локальный адрес (обычно http://127.0.0.1:7860), а Python-процесс обрабатывает их и возвращает результат. Сообщение connection errored out появляется, когда ответ от сервера не приходит или соединение обрывается посреди обработки.

Характерный признак: в консоли (окне командной строки, где запущен webui-user.bat) в этот момент либо виден traceback с исключением, либо процесс полностью завершился. Поэтому первым делом всегда смотрите в консоль — браузерное сообщение само по себе почти ничего не говорит о причине.

  • 🔌 Процесс Python завершился аварийно (нехватка VRAM, OOM-killer, краш драйвера).
  • 🧱 Брандмауэр или антивирус блокирует локальное соединение на порту 7860.
  • ⏱️ Генерация идёт слишком долго, и Gradio обрывает соединение по таймауту.
  • 🧩 Конфликт расширений (extensions), вызывающий падение обработчика запроса.

Шаг 1. Проверяем консоль и лог запуска

Откройте окно терминала, из которого запускался WebUI, и прокрутите вывод до момента ошибки. Если виден текст вида CUDA out of memory, причина в нехватке видеопамяти. Если процесс просто завершился без явного исключения — возможен крах драйвера GPU или принудительное завершение системой.

Если консоль «молчит», а вкладка браузера показывает ошибку, проверьте, открывается ли интерфейс заново по адресу http://127.0.0.1:7860. Не открывается — сервер действительно остановлен. Открывается — проблема была разовой, в разрыве конкретного запроса.

Шаг 2. Устраняем нехватку видеопамяти

Наиболее частая техническая причина падения — переполнение VRAM при генерации больших изображений, использовании hires fix или тяжёлых моделей. Когда память заканчивается, PyTorch выбрасывает исключение, и соединение рвётся.

Добавьте в файл webui-user.bat в строку COMMANDLINE_ARGS параметры оптимизации. Какие именно флаги поддерживаются — зависит от версии WebUI, сверяйтесь с документацией вашей сборки. Типовой пример для карт с малым объёмом VRAM:

set COMMANDLINE_ARGS=--medvram --xformers

Дополнительно снизьте разрешение генерации, уменьшите batch size до 1 и отключите параллельно запущенные приложения, потребляющие видеопамять (браузер с множеством вкладок, игры, видеоредакторы).

☑️ Чек-лист при нехватке VRAM

Выполнено: 0 / 5

Шаг 3. Проверяем порт, брандмауэр и антивирус

Если сервер запущен, но браузер периодически теряет связь, возможная причина — блокировка локального трафика. Брандмауэр Windows и некоторые антивирусы могут фильтровать соединения даже на localhost, особенно после обновления WebUI или смены порта.

Проверьте, не занят ли порт 7860 другим приложением. В командной строке Windows выполните:

netstat -ano | findstr :7860

Если порт занят посторонним процессом, либо завершите его, либо запустите WebUI на другом порту, добавив в аргументы --port 7861. Также временно отключите антивирус и проверьте, исчезла ли ошибка — если да, добавьте папку WebUI и процесс Python в исключения защитного ПО.

⚠️ Внимание: не отключайте брандмауэр и антивирус насовсем ради Stable Diffusion. Используйте точечные исключения для папки установки и исполняемого файла Python — это безопаснее, чем полное отключение защиты.

Шаг 4. Отключаем конфликтующие расширения

Сторонние расширения WebUI — частый источник падений обработчика запросов. Особенно подвержены этому расширения, перехватывающие пайплайн генерации: скрипты постобработки, менеджеры промптов, интеграции с внешними сервисами.

Диагностика проста: запустите WebUI с флагом отключения расширений, если он поддерживается вашей версией, либо временно переименуйте папку extensions в корне установки. Если генерация стала стабильной — возвращайте расширения по одному, пока не найдёте виновника.

📊 Где чаще всего возникает connection errored out у вас?
При обычной генерации txt2img
При использовании hires fix или upscale
В img2img и inpainting
Сразу при запуске WebUI

Шаг 5. Таймауты и долгая генерация

На слабых видеокартах или при генерации с большим числом шагов запрос может выполняться очень долго. В ряде конфигураций Gradio разрывает соединение по таймауту, и пользователь видит connection errored out, хотя процесс на сервере продолжает работать.

Признак этой ситуации: в консоли видно, что генерация идёт (обновляется прогресс итераций), а браузер уже показал ошибку. В этом случае уменьшите число шагов (steps), разрешение или batch count, чтобы запрос укладывался в разумное время. Если WebUI запущен с доступом по сети (--listen), таймауты могут возникать и из-за нестабильного канала между клиентом и машиной с GPU.

Запуск WebUI с доступом по локальной сети

Добавьте в COMMANDLINE_ARGS флаг --listen, чтобы интерфейс был доступен с других устройств сети. Учтите, что при этом соединение зависит от качества сети: потери пакетов и VPN провоцируют разрывы connection errored out. Для диагностики всегда тестируйте сначала локально, через 127.0.0.1.

Сводная таблица причин и решений

Симптом в консолиВероятная причинаДействие
CUDA out of memoryНехватка VRAM--medvram, снижение разрешения и batch size
Процесс завершился без ошибкиКрах драйвера или OOM системыОбновить драйвер GPU, проверить оперативную память
Traceback в коде расширенияКонфликт extensionОтключить расширения, вернуть по одному
Консоль молчит, генерация идётТаймаут соединения GradioСократить steps и разрешение, тест локально
Сервер не отвечает на 127.0.0.1Блокировка порта или занятый портПроверить netstat, сменить порт, настроить брандмауэр
⚠️ Внимание: не обновляйте WebUI, расширения и драйвер GPU одновременно. Меняйте что-то одно и проверяйте стабильность — иначе при повторении ошибки будет невозможно понять, какое изменение её вызвало.

Если ничего не помогло

Когда все базовые шаги выполнены, а разрывы продолжаются, переходите к более глубокой диагностике. Обновите драйвер видеокарты до актуальной стабильной версии с официального сайта производителя. Проверьте целостность установки: удалите папку venv в каталоге WebUI и запустите webui-user.bat заново — зависимости будут переустановлены.

Полностью чистая установка в новую папку — крайняя, но надёжная мера: скачайте свежую копию WebUI, перенесите только модели из папки models/Stable-diffusion и проверьте генерацию без расширений. Если на чистой установке ошибка исчезла, проблема была в конфигурации, а не в железе.

Частые вопросы

Почему ошибка появляется только при hires fix?

Hires fix резко увеличивает потребление видеопамяти, так как изображение генерируется, а затем апскейлится. На картах с небольшим объёмом VRAM это приводит к CUDA out of memory. Снизьте целевое разрешение апскейла или добавьте параметры экономии памяти в аргументы запуска.

Может ли VPN вызывать connection errored out?

Да. Некоторые VPN-клиенты перехватывают весь трафик, включая локальный, и разрывают соединение с 127.0.0.1. Отключите VPN или добавьте localhost в список исключений маршрутизации, если клиент это поддерживает.

Ошибка возникает сразу при запуске WebUI — что делать?

Если интерфейс не открывается вообще, смотрите лог запуска в консоли: чаще всего это конфликт зависимостей, повреждённое venv-окружение или занятый порт. Удаление папки venv с повторной установкой зависимостей решает большинство таких случаев.

Поможет ли переустановка модели (чекпоинта)?

Вряд ли. Ошибка connection errored out относится к транспорту и процессу генерации, а не к содержимому модели. Переустановка чекпоинта оправдана только если в консоли явно указано на повреждение файла модели при загрузке.

Ошибка появляется только при доступе с телефона или другого ПК — в чём дело?

При запуске с --listen соединение зависит от локальной сети: нестабильный Wi-Fi, фильтрация роутером или брандмауэром входящих подключений провоцируют разрывы. Проверьте стабильность генерации локально на машине с GPU — если там всё работает, проблема в сетевом сегменте.