Этот рабочий процесс ComfyUI использует модель SD 3.5 Large от Stability AI вместе с Canny ControlNet, чтобы генерировать изображения, которые следуют структуре границ входного изображения. Пайплайн загружает чекпойнт SD 3.5 (CheckpointLoaderSimple) и Canny ControlNet (ControlNetLoader), кодирует ваш текстовый промпт (CLIPTextEncode) и извлекает контрастную карту границ из изображения-наводки (Canny). Эта карта применяется как структурное ограничение через ControlNetApplyAdvanced, чтобы KSampler синтезировал новый контент, соблюдая контуры и при этом следуя вашему промпту.
Технически рабочий процесс создаёт латентный холст на целевом разрешении (EmptySD3LatentImage), кондиционирует модель позитивным промптом плюс направлением по границам через ControlNet, и опционально обнуляет негативный промпт (ConditioningZeroOut) для упрощения. После сэмплинга (KSampler) результат декодируется в RGB (VAEDecode), показывается (PreviewImage) и сохраняется (SaveImage). Нода ImageScale добавлена, чтобы подгонять карту Canny под выбранный размер выхода для точного совпадения. Эта схема подходит, когда нужен сильный контроль композиции — например, держаться силуэта или контуров продукта — при этом SD 3.5 отвечает за детали, текстуры и стиль.
API
Использовать этот рабочий процесс из кода
Каждый рабочий процесс Comfy — это JSON-граф. Ниже представлен payload этого процесса, точно так же, как его запускает ComfyUI: получите его по ссылке, храните в системе контроля версий или загрузите в ComfyUI и выполняйте по узлам.
Запустите его на TypeScript или Python с помощью Comfy SDK. Один и тот же код работает с Comfy Cloud или вашим собственным ComfyUI — меняется только базовый URL.
// Install (beta)
npm i @comfyorg/sdk
// Run "SD3.5 Large Canny ControlNet" (TypeScript)
import { Comfy } from "@comfyorg/sdk";
const client = new Comfy({ apiKey: "comfyui-..." });
// This workflow, exported in API format (see note below)
const wf = await client.workflows.fromFile("sd3.5_large_canny_controlnet_example_api.json");
const asset = client.assets.fromFile("input.png");
wf.setInput("45", "image", asset); // LoadImage
wf.setInput("6", "text", "crystal pink dragon on a blue mystery sky, hyperdetailed"); // CLIPTextEncode
const job = await client.run(wf);
await job.getOutputs("9")[0].toFile("output.png"); // SaveImageSDK принимает рабочий процесс в API-формате: откройте этот процесс в ComfyUI и используйте Файл → Экспортировать рабочий процесс (API).
Доступ к API Comfy Cloud требует плана с API-ключом.
FAQ















