Добавить в корзинуПозвонить
Найти в Дзене

Сравнение "ComfyUI" на Python "3.13" и "3.12"

После успешного запуска "ComfyUI" на 3.13 версии питона по внесении патча в "ComfyUI-Manager" на GitHub, установка и запуск интерфейса прошли успешно. Странно, что авторы "ComfyUI" не внесли этот патч раньше, а только "по опубликовании результатов тестовых установок". Я делаю выводы, что никто просто не тестировал и не пробовал запускать комфи на 3.13 питоне под виндой, т.к. основной проблемой была не "numpy", а пакет "sentencepiece-0.2.0", которого для 3.13 версии просто не существовало в природе для "Windows". Теперь он есть (скомпилированный WHL) в репозитории по прямой ссылке для платформы "win-x64": https://github.com/Nestorchik/Dzen/releases/download/dzen/sentencepiece-0.2.0-cp313-cp313-win_amd64.whl Поскольку его нет в реестре пакетов пайтона, то установка его через: ... может не пройти по соображениям безопасности. В таком случае просто качайте его локально любым способом и подсовывайте на установку просто командой (как у меня в коде написано): Примечание: надеюсь со временем
Оглавление

После успешного запуска "ComfyUI" на 3.13 версии питона по внесении патча в "ComfyUI-Manager" на GitHub, установка и запуск интерфейса прошли успешно. Странно, что авторы "ComfyUI" не внесли этот патч раньше, а только "по опубликовании результатов тестовых установок".

Я делаю выводы, что никто просто не тестировал и не пробовал запускать комфи на 3.13 питоне под виндой, т.к. основной проблемой была не "numpy", а пакет "sentencepiece-0.2.0", которого для 3.13 версии просто не существовало в природе для "Windows".

Теперь он есть (скомпилированный WHL) в репозитории по прямой ссылке для платформы "win-x64":

https://github.com/Nestorchik/Dzen/releases/download/dzen/sentencepiece-0.2.0-cp313-cp313-win_amd64.whl

Поскольку его нет в реестре пакетов пайтона, то установка его через:

  • --index-url

... может не пройти по соображениям безопасности.

В таком случае просто качайте его локально любым способом и подсовывайте на установку просто командой (как у меня в коде написано):

  • pip install sentencepiece-0.2.0-cp313-cp313-win_amd64.whl
Примечание: надеюсь со временем пакет появится и на PyPi

Сравнительное тестирование 3.12 и 3.13 питонов

Имеем:

  • две совершенно одинаковые репозитории "ComfyUI + manager"
  • тестируем на UV-питонах:
  1. cpython-3.13.3-windows-x86_64-none = Python 3.13.3
  2. cpython-3.12.10-windows-x86_64-none = Python 3.12.10
  • установки пайтона в отдельных .venv
  • код "ComfyUI + manager" с git, свежие и абсолютно идентичные
  • после инсталляции обоих пайтонов они были запущены по несколько раз для образования байт-кода кэша
  • тестирование на модели: "absolutereality_v181.safetensors"
  • workflow - дефолт
  • генерация на разрешении 1024х1024
Примечание: далее подразумевается, что "UV" и "Git" уже установлены

Код установки "ComfyUI" на "CPython-3.13"

  1. mkdir c:\Test313
  2. cd /D c:\Test313
  3. git clone https://github.com/Comfy-Org/ComfyUI-Manager.git c:\Test313\ComfyUI\custom_nodes\ComfyUI-Manager
  4. uv venv --python 3.13
  5. uv pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu128
  6. powershell Invoke-WebRequest -Uri "https://github.com/Nestorchik/Dzen/releases/download/dzen/sentencepiece-0.2.0-cp313-cp313-win_amd64.whl" -OutFile "sentencepiece-0.2.0-cp313-cp313-win_amd64.whl"
  7. uv pip install sentencepiece-0.2.0-cp313-cp313-win_amd64.whl
  8. uv pip install pip
  9. uv pip install numpy==2.2.5
  10. uv pip install -r c:\Test\ComfyUI\requirements.txt
  11. uv run c:\Test313\ComfyUI\main.py --windows-standalone-build --front-end-version Comfy-Org/ComfyUI_frontend@latest
  12. pause

Код установки "ComfyUI" на "CPython-3.12"

  1. mkdir c:\Test312
  2. cd /D c:\Test312
  3. git clone https://github.com/Comfy-Org/ComfyUI-Manager.git c:\Test312\ComfyUI\custom_nodes\ComfyUI-Manager
  4. uv venv --python 3.12
  5. uv pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu128
  6. uv pip install pip
  7. uv pip install -r c:\Test312\ComfyUI\requirements.txt
  8. uv run c:\Test312\ComfyUI\main.py --windows-standalone-build --front-end-version Comfy-Org/ComfyUI_frontend@latest
  9. pause

Команда запуска обоих "ComfyUI" (только пути разные)

  • cd /D c:\Test312
  • uv run c:\Test312\ComfyUI\main.py --windows-standalone-build --front-end-version Comfy-Org/ComfyUI_frontend@latest

Тестирование на 3.12

Лог запуска с кэшем и 5 последовательных дефолтных генераций:

Запуск на Python 3.12
Запуск на Python 3.12

Тестирование на 3.13

Лог запуска с кэшем и 5 последовательных дефолтных генераций:

Запуск на Python 3.13
Запуск на Python 3.13

Выводы

А их нет никаких, кроме примечания, что на 3.13 и по циферкам, и по ощущению, работает немного шустрее.

Следует учесть, что тестирование проводилось на очень слабой нагрузке и выполнялась очень простая и элементарная задача, хотя и на ней заметно некоторое преимущество 3.13 версии. Надо тестировать на сложных, длинных генерациях, там, если понемногу на каждой операции будет экономия, отрыв может быть совсем другой.

Секундные показатели

312 - до открытия браузера = 14.5
- 1-я генерация 1024х1024 = 8.31
- 2-я генерация 1024х1024 = 5.01
- 3-я генерация 1024х1024 = 4.91
- 4-я генерация 1024х1024 = 4.88
- 5-я генерация 1024х1024 = 4.84

313 - до открытия браузера = 13.1
- 1-я генерация 1024х1024 = 7.47
- 2-я генерация 1024х1024 = 4.97
- 3-я генерация 1024х1024 = 4.87
- 4-я генерация 1024х1024 = 4.68
- 5-я генерация 1024х1024 = 4.89

Лог установки 3.12

Установка на 3.12
Установка на 3.12

Лог первого запуска 3.12

Лог первого запуска 3.12
Лог первого запуска 3.12

Лог второго запуска 3.12

Лог второго запуска 3.12
Лог второго запуска 3.12

Лог установки 3.13

Лог установки 3.13
Лог установки 3.13

Лог первого запуска 3.13

  • не сохранился у меня, а повторение не выходит - все уже в кеше (

Лог второго запуска 3.13

Лог второго запуска 3.13
Лог второго запуска 3.13

Материалы на GitHub

GitHub - Nestorchik/ComfyUI_Python_3.13_Windows: "ComfuUI" + Python 3.13 + Windows

Тестируйте кому интересно.
Удачи!

Обложка статьи
Обложка статьи