Tuesday, 25 November 2025

ComfyUI Subgraph.

Hi all.

If you feel overwhelmed by the nodes, you can hide the nodes and connections by using subgraphs. What does a subgraph do? ComfyUI subgraph: Game changer or a nice try?


Using subgraphs

Here’s the step-by-step guide on using subgraphs.

Step 1: Load a workflow

You can use any workflow with more than one node. We will use the following text-to-image < https://stable-diffusion-art.com/text-to-image/> workflow as an example. Download the workflow JSON file below.

Download < https://stable-diffusion-art.com/wp-content/uploads/2025/01/text-to-image-SD1.5-v3.json>

Drag and drop it to ComfyUI to load.


Saturday, 22 November 2025

Snipping Tool пише відео.

Всім привіт.

Вау, програма “Ножиці” (Snipping Tool, “Засіб захоплення фрагментів”), яка працює через комбінацію Win + Shift + R, вже навчилася записувати відео з голосом, але невдовзі буде здатною на більше.


У збірці на каналі для розробників Windows 11 Canary сайт Windows Latest помітив Snipping Tool версії 2022.2507.14.0 з новими можливостями. Програма може автоматично виділити вікно, щоб записати його вміст (раніше так можна було робити лише статичні скриншоти). Microsoft додала функцію вибору вікна для відеозапису, а також текстові та графічні анотації до того, як скриншот буде збережений.

Friday, 21 November 2025

Про Sage Attention.


Всім привіт.

Якось ввечері надивившись відео про SageAttention я вирішив спробувати це чудо інженерної думки в себе на сервері GenAI. Звісно повівся я на те що всі запевняли що інсталювати його не проблема, натомість буду мати вигоду по швидкості генерації в ComfyUI до 30%.

Зважаючи на те що в Stability Matrix в якості бекенду використовується саме ComfyUI (там він зветься як Inference), то чому б не задіяти ШТАТНУ функцію з меню.


Тим більше що автор ось цього відео запевняв глядача що це самий ПРОСТИЙ спосіб отримати SageAttention.


Та не так сталося як гадалося!) 

Я витратив годину на те щоб зрозуміти що Matrix це чорна скриня і будь які намагання зовні зробити йому апгрейд будуть проігноровані, і ще три години на те щоб полагодити ComfyUI, який там знаходиться в пакетах і який я так легко поламав намагаючсь додати SageAttention...

Мабуть у автора відео Matrix інший, хоча він також вибирав портабельну установку.

Зрозуміло, що це не просто проблема установки - Matrix у своєму портативному середовищі просто не дозволяє збирати сучасні C++/CUDA пакети на зразок SageAttention. Тобто сенс був спробувати зробити все "з Matrix", але через старі версії setuptools/distutils та обмеження venv це просто не спрацює.

То ж маю кілька висновків:

  • Matrix обмежений у підтримці нових пакетів, які потребують компіляції.
  • SageAttention вимагає збірки з torch, і навіть всі обхідні способи які він сам і пропонує (--no-build-isolation, editable, копіювання Node) не працюють у тому venv.

Для роботи безпосередньо в Matrix можна:

  • чекати, поки SageAttention зроблять prebuilt для Windows + Python 3.10 у портативному вигляді;
  • або шукати альтернативний Node/Attention, який не потребує збірки (чистий Python).

Тобто, на жаль, сенс “зробити все всередині Matrix” для цієї версії SageAttention тут обмежений технічно. 

Все, Matrix більше не чіпаємо!

Але маємо ще декілька гарних варіантів щодо встановлення SageAttention в окремий, все ще портабельний ComfyUI. До речі, вони також згадані в тому відео.

Перший це файлік SageAttention-NEXT.bat з ComfyUI-Easy-Install. Не обов'язково виконувати сам ComfyUI-Easy-Install, просто пирніть глибше в архів папка Add-ons, він там.

Тобто кладете цей файл в свій  ComfyUI в підпапку /Add-ons і звідти його виконуєте.

Wednesday, 12 November 2025

Microsoft Print to PDF

Привіт.

На швидкоруч накидаю вам пару слів про  проблему з Word (або Excel), яка натомість не в ньому.

Ось ви маєте документ, бажате пустити його на друк, і Word зависає... надовго, іноді назавжди. Особливо прикро коли перед цим той документ був не збережений. Перезапуск Word не вирішує цю проблему, тому що проблема не в ньому.

А в принтері який визначено as default. Тобто якщо з принтером якісь негаразди від заминання паперу до 'я пішов в оффлайн' , то Word намагатимеся з ним вийти на зв'язок для друку довго довго...

Тому тут швидка порада одна - робити в себе завжди основним локальний  принтер  `Microsoft Print to PDF`. Він завжди доступний!

А вже потім, якщо так треба нищити зелену планету, вибирати реальний принтер.

Щасти.

Saturday, 8 November 2025

Екосистема CUDA.


Привіт усім! 

CUDA(англ. Compute Unified Device Architecture) - програмно-апаратна архітектура паралельних обчислень, яка дозволяє істотно збільшити обчислювальну продуктивність завдяки використанню графічних процесорів фірми Nvidia.

Щоб перевірити версію CUDA, яка встановлена на вашій ОС, ви можете скористатися утилітою nvidia-smi (NVIDIA System Management Interface).

Відкрийте термінал або командний рядок і введіть наступну команду:

nvidia-smi

У виводі ви побачите інформацію про ваші графічні процесори NVIDIA, а також версію драйвера CUDA, з яким вони сумісні. Це буде в рядку, що починається з "CUDA Version:".

Наприклад, вихлоп може виглядати так (це тільки перший рядок):

| NVIDIA-SMI 576.88   Driver Version: 576.88   CUDA Version: 12.9     |

У цьому прикладі бачимо версію CUDA - 12.9.

Якщо nvidia-smi не працює, це може означати, що драйвери NVIDIA не встановлені або встановлені неправильно.


Крім того, ви можете перевірити версію CUDA Toolkit (якщо він встановлений), використовуючи:

nvcc --version

Це покаже версію компілятора CUDA (nvcc), яка є частиною CUDA Toolkit.

nvcc: NVIDIA (R) Cuda compiler driver

Copyright (c) 2005-2025 NVIDIA Corporation

Built on Wed_Jan_15_19:38:46_Pacific_Standard_Time_2025

Cuda compilation tools, release 12.8, V12.8.61

Build cuda_12.8.r12.8/compiler.35404655_0

Thursday, 6 November 2025

JSON, XML та YAML

Всім привіт.

Самі популярні формати даних у ComfyUI: JSON, XML та YAML

Світ генеративних технологій сьогодні нагадує живу лабораторію, де експерименти з даними, форматами і налаштуваннями тривають безперервно. Кожен новий інтерфейс чи модель створює власну "мову спілкування" між користувачем і машиною. І хоча більшість з нас сприймає ComfyUI як просту візуальну оболонку для Stable Diffusion чи інших генераторів, насправді під капотом там живе ціла система форматів і правил.

Коли відкриваєш будь-який workflow або плагін у ComfyUI, можна натрапити на знайомі імена файлів - .json, .xml, .yaml. Спершу це дивує: навіщо три різні формати, якщо всі вони роблять приблизно одне й те саме - зберігають дані? Але за цим стоїть цікава логіка. Кожен із них не просто "формат", а окрема філософія - як саме програма має розуміти й передавати інформацію.


JSON - мова машинної точності

JSON - це формат, який у сучасному світі AI став стандартом де-факто. Його структура проста: фігурні дужки, коми, лапки - все чітко і передбачувано. Саме тому ComfyUI зберігає свої workflow-файли у JSON. У ньому описано абсолютно все - від координат нодів на полотні до того, які моделі підключено і що з чим зв’язано.

Цей формат не намагається бути зручним для людини - він створений для машини, і виконує свою роботу бездоганно. Завдяки JSON користувач може миттєво передати або поділитися проєктом: ComfyUI просто зчитує файл і точно відтворює всю структуру.


Tuesday, 4 November 2025

Про Pixel AI Photomaker

Привет на привет.

А я опять про Photomaker. Вкратце напомню свою историю.

Итак, в Forge на закладке Spaces был популярный PhotomakerV2. Картинки для Instagram он делает просто на ура. Разумеется можно также легко пользоваться PhotomakerV2 и на портале huggingface, но там очень быстро наступает лимит по времени генерации что творческому человеку просто мука.

Я тогда говорил что выпиливание PhotomakerV2 из Forge заняло бы еще больше времени.  Тем боле что в новом Forge Neo его нет вообще.

Во как... Но не прошло и года как Google дал мне в руки Build, и я за два вечера собрал аналог Photomaker онлайн. Не написав не единой строчки кода!

Встречайте мой Pixel AI Photomaker! 


Его основные фишки ниже.

Pixel AI Photomaker Features:

 1. Core Workflow: 3-Step Headshot Generation

The application guides users through a simple, three-step process to create professional headshots.

- Step 1: Photo Upload: Users begin by uploading one or more (up to 5) personal photos. These images serve as the reference for the AI to maintain the user's likeness.

- Step 2: Customization: Users define the composition and style of the desired headshot.

- Step 3: Editing and Finalization: Users can view the generated headshot and make further refinements using text prompts or predefined effects.

Monday, 3 November 2025

Про extra_model_paths


Привет всем.

Как я говорил ранее, с целью экономии места на диске я переписал все АІ-модели в одну папку. Так будет логичнее для организации у себя единого банка моделей.

Наш славный  ComfyUI смотрит туда через файл extra_model_paths.yaml.

Создается он легко батником уже не помню какого автора:

@Echo off

Title Extra Model Paths Maker by ivo v0.21.0

set yaml=NEW_extra_model_paths.yaml

cd /d %~dp0

if not exist checkpoints (

 Echo.

 Echo  [33mWARNING: [0m  [92mPlace this file in shared 'models' folder and rerun it. [0m

 Echo.

 Echo Press any key to Exit...&Pause>nul

 goto :eof

)

Echo comfyui:>%yaml%

cd ..\

Echo     base_path: %cd%\>>.\models\%yaml%

cd .\models

Echo     is_default: true>>%yaml%

Echo.>>%yaml%

for /D %%f in (*) do echo     %%f: models\%%f\>>%yaml%

Но есть один нюанс, батник не заглядывает в подпапки, может это и правильно.

Так я, к примеру, потерял свои \diffusion_models\ которые у меня для удобства совместимости с unet моделями находяться в подпапке \checkpoints.

Не стоит ругать автора, а лучше просто дописать недостающую секцию в extra_model_paths.yaml  руками так:

diffusion_models: |

                 models\checkpoints\diffusion_models\

                 models\unet\

Успехов.


Sunday, 2 November 2025

JSON prompt as single workflow.

Hi all.

By the way, structured JSON prompts have another useful feature. Now we can put a whole series of actions(steps) into one prompt, making it like a single workflow.

For example, removing the background in one of my versions looks like this

1) Remove Background Ext:

{

  "Task": "Create a high-quality transparent image by removing the background from a source image.",

  "constraints": {

    "preserve_subject_details": true,

    "maintain_original_dimensions": true,

    "clean_edges": true

  },

  "steps": [

    {

      "step_id": 1,

      "name": "Generate High-Contrast Matte",

      "instructions": "Take the input image. Accurately segment the main subject(s) from the background. Replace the entire background with a solid, pure white color (hex #FFFFFF). The subject must be perfectly preserved with no alterations. The output image dimensions must be identical to the input image. Output this intermediate image as 'white_matte'."

    },

    {

      "step_id": 2,

      "name": "Create Transparency from Matte",

      "instructions": "Take the original input image and the 'white_matte' image from step 1. Use 'white_matte' as a pixel-perfect transparency mask for the original input image. Where 'white_matte' is pure white, the corresponding pixels of the original image must become fully transparent (alpha=0). Where 'white_matte' is not white, the original image pixels must be fully opaque (alpha=255). The anti-aliased (near-white) pixels along the subject's edge in 'white_matte' should be translated into corresponding levels of semi-transparency to ensure a smooth, clean edge. Output this as 'final_transparent_image'."

    }

  ],

  "Deliverables": {

    "transparent_png": "final_transparent_image"

  }

}

2) The same goes for creating a Loop Seamless Panorama:

{
  "Task": "Create a seamless horizontal panoramic loop from an image.",
  "constraints": {
    "no_distortion": true,
    "maintain_subject_integrity": true
  },
  "steps": [
    {
      "step_id": 1,
      "name": "Horizontal Expansion",
      "instructions": "Take the input image and expand it horizontally by approximately 2.5 times its original width. The generated content should naturally extend the background elements (like sky, landscape, etc.) without distorting the main subject. Output this as 'expanded_panorama'."
    },
    {
      "step_id": 2,
      "name": "Seamless Loop Adjustment",
      "instructions": "Take the 'expanded_panorama' image. Adjust the leftmost and rightmost sections of this image to ensure they seamlessly connect, creating a continuous horizontal loop without visible seams. Focus changes primarily on the edges to achieve the loop effect, preserving the central content as much as possible. Output this as 'final_seamless_loop'."
    }
  ],
  "Deliverables": {
    "final_seamless_loop_image": "final_seamless_loop"
  }
}

That's cool.

Saturday, 1 November 2025

Кофе по-венски, v2.

Всем привет.

Помню что на лету 5 лет тому я обещал вам третью книгу, как более серьезное чтиво...

Первая версия это "Кофе по-венски" куда автор включил пять немного странных историй, которые ему было навеяны чашечкой кофе по-венски. 

Вторая - это "Контракт с Богом", где первую ее часть вы могли читать ранее в блоге. Всего две части, но они оказались не менее занимательны и логичны.

Так вот с 3-й не сложилось, но не спешите расстраиваться, ведь я поступил по другому - не особо выделяя направления сюжета я включил все новые эссе в одну книгу! Теперь обновленная версия доступна всем.

Отдельные отрывки идей появлялись в моем блоге и ранее. И в итоге я решил объединить их в одну книжку под тем же привычным названием "Кофе по-венски". Теперь у меня почти 100 страниц занимательных историй из моей жизни, а кто знает, может и из вашей.)

Она доступна в моей Библиотеке, на нижней полке (листаем вправо). Или для чтения по вечерам под чашечку ароматного чая здесь же на главной странице блога, как "Download  PDF".

Мира и Удачи всем.


Версия на печать

Популярное