Compare commits
57 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3892e3f5e7 | ||
|
|
bd6dc08030 | ||
|
|
596cdbecd6 | ||
|
|
7798367348 | ||
|
|
e775fe78ca | ||
|
|
e1eddb336d | ||
|
|
b6bfb66c71 | ||
|
|
bbc28ccef8 | ||
|
|
d57738b0a8 | ||
|
|
6b1a3c874d | ||
|
|
9932010025 | ||
|
|
7cd73bca3c | ||
|
|
580abf8608 | ||
|
|
d845c4f832 | ||
|
|
cc09a166da | ||
|
|
78f6ee1428 | ||
|
|
590e9b3906 | ||
|
|
18f69d379f | ||
|
|
8b121e1352 | ||
|
|
5959f54b6c | ||
|
|
f7d320df30 | ||
|
|
31d7fcc8ba | ||
|
|
8b649ae0d9 | ||
|
|
61675061a0 | ||
|
|
35285dd74b | ||
|
|
6048092d93 | ||
|
|
28b90f412a | ||
|
|
09e7c4a4f2 | ||
|
|
dcdeb668df | ||
|
|
7ac8b1fdcb | ||
|
|
2eb1020b35 | ||
|
|
55cb4c3d0a | ||
|
|
050f391f89 | ||
|
|
3d5c6889b8 | ||
|
|
085f2cd064 | ||
|
|
5c70089a62 | ||
|
|
1ede7dfe28 | ||
|
|
d7f5f08179 | ||
|
|
707ec9dff8 | ||
|
|
a410e528cc | ||
|
|
00be5e80b4 | ||
|
|
f057e185af | ||
|
|
05614818d0 | ||
|
|
694a2fcbf8 | ||
|
|
0daa0b6510 | ||
|
|
fe15cac6d2 | ||
|
|
9771c98d90 | ||
|
|
9904b13997 | ||
|
|
0f80cbcbd7 | ||
|
|
c4f5d9b4e4 | ||
|
|
581a4d50e0 | ||
|
|
8057fa42e4 | ||
|
|
de4e1266e5 | ||
|
|
33268da3a2 | ||
|
|
2aa148c4b2 | ||
|
|
f71a0441c6 | ||
|
|
796e267c80 |
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -8,10 +8,34 @@ import configparser
|
||||
import re
|
||||
import json
|
||||
import yaml
|
||||
from torchvision.datasets.utils import download_url
|
||||
import requests
|
||||
from tqdm.auto import tqdm
|
||||
from git.remote import RemoteProgress
|
||||
|
||||
|
||||
def download_url(url, dest_folder, filename=None):
|
||||
# Ensure the destination folder exists
|
||||
if not os.path.exists(dest_folder):
|
||||
os.makedirs(dest_folder)
|
||||
|
||||
# Extract filename from URL if not provided
|
||||
if filename is None:
|
||||
filename = os.path.basename(url)
|
||||
|
||||
# Full path to save the file
|
||||
dest_path = os.path.join(dest_folder, filename)
|
||||
|
||||
# Download the file
|
||||
response = requests.get(url, stream=True)
|
||||
if response.status_code == 200:
|
||||
with open(dest_path, 'wb') as file:
|
||||
for chunk in response.iter_content(chunk_size=1024):
|
||||
if chunk:
|
||||
file.write(chunk)
|
||||
else:
|
||||
print(f"Failed to download file from {url}")
|
||||
|
||||
|
||||
config_path = os.path.join(os.path.dirname(__file__), "config.ini")
|
||||
nodelist_path = os.path.join(os.path.dirname(__file__), "custom-node-list.json")
|
||||
working_directory = os.getcwd()
|
||||
|
||||
4505
github-stats.json
4505
github-stats.json
File diff suppressed because it is too large
Load Diff
@@ -23,7 +23,7 @@ sys.path.append(glob_path)
|
||||
import cm_global
|
||||
from manager_util import *
|
||||
|
||||
version = [2, 48, 2]
|
||||
version = [2, 48, 6]
|
||||
version_str = f"V{version[0]}.{version[1]}" + (f'.{version[2]}' if len(version) > 2 else '')
|
||||
|
||||
|
||||
@@ -97,7 +97,7 @@ def clear_pip_cache():
|
||||
def is_blacklisted(name):
|
||||
name = name.strip()
|
||||
|
||||
pattern = r'([^<>!=]+)([<>!=]=?)(.*)'
|
||||
pattern = r'([^<>!=]+)([<>!=]=?)([^ ]*)'
|
||||
match = re.search(pattern, name)
|
||||
|
||||
if match:
|
||||
@@ -123,7 +123,7 @@ def is_installed(name):
|
||||
if name.startswith('#'):
|
||||
return True
|
||||
|
||||
pattern = r'([^<>!=]+)([<>!=]=?)(.*)'
|
||||
pattern = r'([^<>!=]+)([<>!=]=?)([^ ]*)'
|
||||
match = re.search(pattern, name)
|
||||
|
||||
if match:
|
||||
@@ -405,8 +405,14 @@ def execute_install_script(url, repo_path, lazy_mode=False, instant_execution=Fa
|
||||
with open(requirements_path, "r") as requirements_file:
|
||||
for line in requirements_file:
|
||||
package_name = remap_pip_package(line.strip())
|
||||
|
||||
if package_name and not package_name.startswith('#'):
|
||||
install_cmd = [sys.executable, "-m", "pip", "install", package_name]
|
||||
if '--index-url' in package_name:
|
||||
s = package_name.split('--index-url')
|
||||
install_cmd = [sys.executable, "-m", "pip", "install", s[0].strip(), '--index-url', s[1].strip()]
|
||||
else:
|
||||
install_cmd = [sys.executable, "-m", "pip", "install", package_name]
|
||||
|
||||
if package_name.strip() != "" and not package_name.startswith('#'):
|
||||
try_install_script(url, repo_path, install_cmd, instant_execution=instant_execution)
|
||||
|
||||
@@ -1215,3 +1221,4 @@ def unzip(model_path):
|
||||
os.remove(model_path)
|
||||
return True
|
||||
|
||||
|
||||
|
||||
@@ -59,7 +59,7 @@ def is_allowed_security_level(level):
|
||||
|
||||
async def get_risky_level(files):
|
||||
json_data1 = await core.get_data_by_mode('local', 'custom-node-list.json')
|
||||
json_data2 = await core.get_data_by_mode('cache', 'custom-node-list.json', channel_url='https://github.com/ltdrdata/ComfyUI-Manager/raw/main/custom-node-list.json')
|
||||
json_data2 = await core.get_data_by_mode('cache', 'custom-node-list.json', channel_url='https://github.com/ltdrdata/ComfyUI-Manager/raw/main')
|
||||
|
||||
all_urls = set()
|
||||
for x in json_data1['custom_nodes'] + json_data2['custom_nodes']:
|
||||
|
||||
@@ -4,7 +4,7 @@ import { sleep } from "./common.js";
|
||||
|
||||
async function tryInstallCustomNode(event) {
|
||||
let msg = '-= [ComfyUI Manager] extension installation request =-\n\n';
|
||||
msg += `The '${event.detail.sender}' extension requires the installation of the '${event.detail.title}' extension. `;
|
||||
msg += `The '${event.detail.sender}' extension requires the installation of the '${event.detail.target.title}' extension. `;
|
||||
|
||||
if(event.detail.target.installed == 'Disabled') {
|
||||
msg += 'However, the extension is currently disabled. Would you like to enable it and reboot?'
|
||||
|
||||
196
model-list.json
196
model-list.json
@@ -178,7 +178,7 @@
|
||||
},
|
||||
{
|
||||
"name": "stabilityai/stable-diffusion-x4-upscaler",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "upscale",
|
||||
"save_path": "checkpoints/upscale",
|
||||
"description": "This upscaling model is a latent text-guided diffusion model and should be used with SD_4XUpscale_Conditioning and KSampler.",
|
||||
@@ -255,7 +255,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Stable Video Diffusion Image-to-Video",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SVD",
|
||||
"save_path": "checkpoints/SVD",
|
||||
"description": "Stable Video Diffusion (SVD) Image-to-Video is a diffusion model that takes in a still image as a conditioning frame, and generates a video from it.\nNOTE: 14 frames @ 576x1024",
|
||||
@@ -277,7 +277,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Stable Video Diffusion Image-to-Video (XT)",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SVD",
|
||||
"save_path": "checkpoints/SVD",
|
||||
"description": "Stable Video Diffusion (SVD) Image-to-Video is a diffusion model that takes in a still image as a conditioning frame, and generates a video from it.\nNOTE: 25 frames @ 576x1024 ",
|
||||
@@ -332,7 +332,7 @@
|
||||
},
|
||||
{
|
||||
"name": "stabilityai/comfyui_checkpoints/stable_cascade_stage_b.safetensors",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "Stable Cascade",
|
||||
"save_path": "checkpoints/Stable-Cascade",
|
||||
"description": "Stable Cascade stage_b checkpoints",
|
||||
@@ -343,7 +343,7 @@
|
||||
},
|
||||
{
|
||||
"name": "stabilityai/comfyui_checkpoints/stable_cascade_stage_c.safetensors",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "Stable Cascade",
|
||||
"save_path": "checkpoints/Stable-Cascade",
|
||||
"description": "Stable Cascade stage_c checkpoints",
|
||||
@@ -475,7 +475,7 @@
|
||||
},
|
||||
{
|
||||
"name": "SDXL-Turbo 1.0 (fp16)",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SDXL",
|
||||
"save_path": "checkpoints/SDXL-TURBO",
|
||||
"description": "SDXL-Turbo 1.0 fp16",
|
||||
@@ -486,7 +486,7 @@
|
||||
},
|
||||
{
|
||||
"name": "SDXL-Turbo 1.0",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SDXL",
|
||||
"save_path": "checkpoints/SDXL-TURBO",
|
||||
"description": "SDXL-Turbo 1.0",
|
||||
@@ -497,7 +497,7 @@
|
||||
},
|
||||
{
|
||||
"name": "sd_xl_base_1.0_0.9vae.safetensors",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SDXL",
|
||||
"save_path": "default",
|
||||
"description": "Stable Diffusion XL base model (VAE 0.9)",
|
||||
@@ -508,7 +508,7 @@
|
||||
},
|
||||
{
|
||||
"name": "sd_xl_base_1.0.safetensors",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SDXL",
|
||||
"save_path": "default",
|
||||
"description": "Stable Diffusion XL base model",
|
||||
@@ -519,7 +519,7 @@
|
||||
},
|
||||
{
|
||||
"name": "sd_xl_refiner_1.0_0.9vae.safetensors",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SDXL",
|
||||
"save_path": "default",
|
||||
"description": "Stable Diffusion XL refiner model (VAE 0.9)",
|
||||
@@ -530,7 +530,7 @@
|
||||
},
|
||||
{
|
||||
"name": "stable-diffusion-xl-refiner-1.0",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SDXL",
|
||||
"save_path": "default",
|
||||
"description": "Stable Diffusion XL refiner model",
|
||||
@@ -618,9 +618,44 @@
|
||||
"size": "892MB"
|
||||
},
|
||||
|
||||
{
|
||||
"name": "google-t5/t5-v1_1-xxl_encoderonly-fp16",
|
||||
"type": "clip",
|
||||
"base": "t5",
|
||||
"save_path": "clip/t5",
|
||||
"description": "The encoder part of https://huggingface.co/google/t5-v1_1-xxl, used with SD3 and Flux1",
|
||||
"reference": "https://huggingface.co/mcmonkey/google_t5-v1_1-xxl_encoderonly",
|
||||
"filename": "google_t5-v1_1-xxl_encoderonly-fp16.safetensors",
|
||||
"url": "https://huggingface.co/mcmonkey/google_t5-v1_1-xxl_encoderonly/resolve/main/pytorch_model.safetensors",
|
||||
"size": "10.1GB"
|
||||
},
|
||||
{
|
||||
"name": "google-t5/t5-v1_1-xxl_encoderonly-fp8_e4m3fn",
|
||||
"type": "clip",
|
||||
"base": "t5",
|
||||
"save_path": "clip/t5",
|
||||
"description": "The encoder part of https://huggingface.co/google/t5-v1_1-xxl, used with SD3 and Flux1",
|
||||
"reference": "https://huggingface.co/mcmonkey/google_t5-v1_1-xxl_encoderonly",
|
||||
"filename": "google_t5-v1_1-xxl_encoderonly-fp8_e4m3fn.safetensors",
|
||||
"url": "https://huggingface.co/mcmonkey/google_t5-v1_1-xxl_encoderonly/resolve/main/t5xxl_fp8_e4m3fn.safetensors",
|
||||
"size": "4.89GB"
|
||||
},
|
||||
|
||||
{
|
||||
"name": "comfyanonymous/clip_l",
|
||||
"type": "clip",
|
||||
"base": "clip",
|
||||
"save_path": "default",
|
||||
"description": "clip_l model",
|
||||
"reference": "https://huggingface.co/comfyanonymous/flux_text_encoders/tree/main",
|
||||
"filename": "clip_l.safetensors",
|
||||
"url": "https://huggingface.co/comfyanonymous/flux_text_encoders/resolve/main/clip_l.safetensors",
|
||||
"size": "246MB"
|
||||
},
|
||||
|
||||
{
|
||||
"name": "v1-5-pruned-emaonly.ckpt",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SD1.5",
|
||||
"save_path": "default",
|
||||
"description": "Stable Diffusion 1.5 base model",
|
||||
@@ -631,7 +666,7 @@
|
||||
},
|
||||
{
|
||||
"name": "v2-1_512-ema-pruned.safetensors",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SD2",
|
||||
"save_path": "default",
|
||||
"description": "Stable Diffusion 2 base model (512)",
|
||||
@@ -642,7 +677,7 @@
|
||||
},
|
||||
{
|
||||
"name": "v2-1_768-ema-pruned.safetensors",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SD2",
|
||||
"save_path": "default",
|
||||
"description": "Stable Diffusion 2 base model (768)",
|
||||
@@ -653,7 +688,7 @@
|
||||
},
|
||||
{
|
||||
"name": "AbyssOrangeMix2 (hard)",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SD1.5",
|
||||
"save_path": "default",
|
||||
"description": "AbyssOrangeMix2 - hard version (anime style)",
|
||||
@@ -664,7 +699,7 @@
|
||||
},
|
||||
{
|
||||
"name": "AbyssOrangeMix3 A1",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SD1.5",
|
||||
"save_path": "default",
|
||||
"description": "AbyssOrangeMix3 - A1 (anime style)",
|
||||
@@ -675,7 +710,7 @@
|
||||
},
|
||||
{
|
||||
"name": "AbyssOrangeMix3 A3",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SD1.5",
|
||||
"save_path": "default",
|
||||
"description": "AbyssOrangeMix - A3 (anime style)",
|
||||
@@ -686,7 +721,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Waifu Diffusion 1.5 Beta3 (fp16)",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SD2.1",
|
||||
"save_path": "default",
|
||||
"description": "Waifu Diffusion 1.5 Beta3",
|
||||
@@ -807,7 +842,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Segmind-Vega",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "segmind-vega",
|
||||
"save_path": "checkpoints/segmind-vega",
|
||||
"description": "The Segmind-Vega Model is a distilled version of the Stable Diffusion XL (SDXL), offering a remarkable 70% reduction in size and an impressive 100% speedup while retaining high-quality text-to-image generation capabilities.",
|
||||
@@ -1962,7 +1997,7 @@
|
||||
},
|
||||
{
|
||||
"name": "TencentARC/motionctrl.pth",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "MotionCtrl",
|
||||
"save_path": "checkpoints/motionctrl",
|
||||
"description": "To use the ComfyUI-MotionCtrl extension, downloading this model is required.",
|
||||
@@ -2378,6 +2413,17 @@
|
||||
"url": "https://huggingface.co/TencentARC/PhotoMaker/resolve/main/photomaker-v1.bin",
|
||||
"size": "934.1MB"
|
||||
},
|
||||
{
|
||||
"name": "photomaker-v2.bin",
|
||||
"type": "photomaker",
|
||||
"base": "SDXL",
|
||||
"save_path": "photomaker",
|
||||
"description": "PhotoMaker model. This model is compatible with SDXL.",
|
||||
"reference": "https://huggingface.co/TencentARC/PhotoMaker-V2",
|
||||
"filename": "photomaker-v2.bin",
|
||||
"url": "https://huggingface.co/TencentARC/PhotoMaker-V2/resolve/main/photomaker-v2.bin",
|
||||
"size": "1.8GB"
|
||||
},
|
||||
{
|
||||
"name": "1k3d68.onnx",
|
||||
"type": "insightface",
|
||||
@@ -2620,28 +2666,6 @@
|
||||
"url": "https://huggingface.co/ShilongLiu/GroundingDINO/raw/main/GroundingDINO_SwinT_OGC.cfg.py",
|
||||
"size": "1.01KB"
|
||||
},
|
||||
{
|
||||
"name": "ViT-H SAM model",
|
||||
"type": "sam",
|
||||
"base": "SAM",
|
||||
"save_path": "sams",
|
||||
"description": "Segmenty Anything SAM model (ViT-H)",
|
||||
"reference": "https://github.com/facebookresearch/segment-anything#model-checkpoints",
|
||||
"filename": "sam_vit_h_4b8939.pth",
|
||||
"url": "https://dl.fbaipublicfiles.com/segment_anything/sam_vit_h_4b8939.pth",
|
||||
"size": "2.56GB"
|
||||
},
|
||||
{
|
||||
"name": "ViT-L SAM model",
|
||||
"type": "sam",
|
||||
"base": "SAM",
|
||||
"save_path": "sams",
|
||||
"description": "Segmenty Anything SAM model (ViT-L)",
|
||||
"reference": "https://github.com/facebookresearch/segment-anything#model-checkpoints",
|
||||
"filename": "sam_vit_l_0b3195.pth",
|
||||
"url": "https://dl.fbaipublicfiles.com/segment_anything/sam_vit_l_0b3195.pth",
|
||||
"size": "1.25GB"
|
||||
},
|
||||
{
|
||||
"name": "MobileSAM",
|
||||
"type": "sam",
|
||||
@@ -2655,7 +2679,7 @@
|
||||
},
|
||||
{
|
||||
"name": "DynamiCrafter 1024 bf16 safetensors",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "DynamiCrafter",
|
||||
"save_path": "checkpoints/dynamicrafter",
|
||||
"description": "DynamiCrafter image2video model 1024x575",
|
||||
@@ -2666,7 +2690,7 @@
|
||||
},
|
||||
{
|
||||
"name": "DynamiCrafter 512 interpolation bf16 safetensors",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "DynamiCrafter",
|
||||
"save_path": "checkpoints/dynamicrafter",
|
||||
"description": "DynamiCrafter image2video interpolation model 512",
|
||||
@@ -2688,7 +2712,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Depth-FM-v1 fp16 safetensors",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "Depth-FM",
|
||||
"save_path": "checkpoints/depthfm",
|
||||
"description": "Depth-FM monocular depth estimation model",
|
||||
@@ -2699,7 +2723,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Depth-FM-v1 fp32 safetensors",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "Depth-FM",
|
||||
"save_path": "checkpoints/depthfm",
|
||||
"description": "Depth-FM monocular depth estimation model",
|
||||
@@ -2710,7 +2734,7 @@
|
||||
},
|
||||
{
|
||||
"name": "SUPIR-v0F.ckpt",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SUPIR",
|
||||
"save_path": "checkpoints/SUPIR",
|
||||
"description": "SUPIR checkpoint model",
|
||||
@@ -2721,7 +2745,7 @@
|
||||
},
|
||||
{
|
||||
"name": "SUPIR-v0Q.ckpt",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SUPIR",
|
||||
"save_path": "checkpoints/SUPIR",
|
||||
"description": "SUPIR checkpoint model",
|
||||
@@ -2732,7 +2756,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Kijai/SUPIR-v0F_fp16.safetensors (pruned)",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SUPIR",
|
||||
"save_path": "checkpoints/SUPIR",
|
||||
"description": "SUPIR checkpoint model",
|
||||
@@ -2743,7 +2767,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Kijai/SUPIR-v0Q_fp16.safetensors (pruned)",
|
||||
"type": "checkpoints",
|
||||
"type": "checkpoint",
|
||||
"base": "SUPIR",
|
||||
"save_path": "checkpoints/SUPIR",
|
||||
"description": "SUPIR checkpoint model",
|
||||
@@ -3404,6 +3428,76 @@
|
||||
"filename": "hunyuan_dit_1.0.safetensors",
|
||||
"url": "https://huggingface.co/comfyanonymous/hunyuan_dit_comfyui/resolve/main/hunyuan_dit_1.0.safetensors",
|
||||
"size": "8.24GB"
|
||||
},
|
||||
|
||||
{
|
||||
"name": "FLUX.1 [schnell] Diffusion model",
|
||||
"type": "unet",
|
||||
"base": "FLUX.1",
|
||||
"save_path": "unet/FLUX1",
|
||||
"description": "FLUX.1 [Schnell] Diffusion model (a.k.a. FLUX.1 turbo model)[w/Due to the large size of the model, it is recommended to download it through a browser if possible.]",
|
||||
"reference": "https://huggingface.co/black-forest-labs/FLUX.1-schnell",
|
||||
"filename": "flux1-schnell.sft",
|
||||
"url": "https://huggingface.co/black-forest-labs/FLUX.1-schnell/resolve/main/flux1-schnell.sft",
|
||||
"size": "23.8GB"
|
||||
},
|
||||
|
||||
{
|
||||
"name": "FLUX.1 VAE model",
|
||||
"type": "vae",
|
||||
"base": "FLUX.1",
|
||||
"save_path": "vae/FLUX1",
|
||||
"description": "FLUX.1 [Schnell] VAE model",
|
||||
"reference": "https://huggingface.co/black-forest-labs/FLUX.1-schnell",
|
||||
"filename": "ae.sft",
|
||||
"url": "https://huggingface.co/black-forest-labs/FLUX.1-schnell/resolve/main/ae.safetensors",
|
||||
"size": "335MB"
|
||||
},
|
||||
|
||||
{
|
||||
"name": "kijai/FLUX.1 [schnell] Diffusion model (float8_e4m3fn)",
|
||||
"type": "unet",
|
||||
"base": "FLUX.1",
|
||||
"save_path": "unet/FLUX1",
|
||||
"description": "FLUX.1 [Schnell] Diffusion model (float8_e4m3fn)",
|
||||
"reference": "https://huggingface.co/Kijai/flux-fp8",
|
||||
"filename": "flux1-schnell-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Kijai/flux-fp8/resolve/main/flux1-schnell-fp8.safetensors",
|
||||
"size": "11.9GB"
|
||||
},
|
||||
{
|
||||
"name": "kijai/FLUX.1 [dev] Diffusion model (float8_e4m3fn)",
|
||||
"type": "unet",
|
||||
"base": "FLUX.1",
|
||||
"save_path": "unet/FLUX1",
|
||||
"description": "FLUX.1 [dev] Diffusion model (float8_e4m3fn)",
|
||||
"reference": "https://huggingface.co/Kijai/flux-fp8",
|
||||
"filename": "flux1-dev-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Kijai/flux-fp8/resolve/main/flux1-dev-fp8.safetensors",
|
||||
"size": "11.9GB"
|
||||
},
|
||||
|
||||
{
|
||||
"name": "Comfy Org/FLUX.1 [dev] Checkpoint model (fp8)",
|
||||
"type": "checkpoint",
|
||||
"base": "FLUX.1",
|
||||
"save_path": "checkpoints/FLUX1",
|
||||
"description": "FLUX.1 [dev] Checkpoint model (fp8)",
|
||||
"reference": "https://huggingface.co/Comfy-Org/flux1-dev/tree/main",
|
||||
"filename": "flux1-dev-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/flux1-dev/resolve/main/flux1-dev-fp8.safetensors",
|
||||
"size": "17.2GB"
|
||||
},
|
||||
{
|
||||
"name": "Comfy Org/FLUX.1 [schnell] Checkpoint model (fp8)",
|
||||
"type": "checkpoint",
|
||||
"base": "FLUX.1",
|
||||
"save_path": "checkpoints/FLUX1",
|
||||
"description": "FLUX.1 [schnell] Checkpoint model (fp8)",
|
||||
"reference": "https://huggingface.co/Comfy-Org/flux1-dev/tree/main",
|
||||
"filename": "flux1-schnell-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/flux1-schnell/resolve/main/flux1-schnell-fp8.safetensors",
|
||||
"size": "17.2GB"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,6 +12,66 @@
|
||||
|
||||
|
||||
|
||||
{
|
||||
"author": "chrisdreid",
|
||||
"title": "ComfyUI_EnvAutopsyAPI [UNSAFE]",
|
||||
"reference": "https://github.com/chrisdreid/ComfyUI_EnvAutopsyAPI",
|
||||
"files": [
|
||||
"https://github.com/chrisdreid/ComfyUI_EnvAutopsyAPI"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI_EnvAutopsyAPI is a powerful debugging tool designed for ComfyUI that provides in-depth analysis of your environment and dependencies through an API interface. This tool allows you to inspect environment variables, pip packages, and dependency trees, making it easier to diagnose and resolve issues in your ComfyUI setup.[w/This tool may expose sensitive system information if used on a public server. MUST READ [a/THIS](https://github.com/chrisdreid/ComfyUI_EnvAutopsyAPI#%EF%B8%8F-warning-security-risk-%EF%B8%8F) before install.]"
|
||||
},
|
||||
{
|
||||
"author": "kijai",
|
||||
"title": "ComfyUI-CogVideoXWrapper [WIP]",
|
||||
"reference": "https://github.com/kijai/ComfyUI-CogVideoXWrapper",
|
||||
"files": [
|
||||
"https://github.com/kijai/ComfyUI-CogVideoXWrapper"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Original repo: [a/https://github.com/THUDM/CogVideo](https://github.com/THUDM/CogVideo)\nNOTE:Currently requires diffusers with PR: [a/huggingface/diffusers#9082](https://github.com/huggingface/diffusers/pull/9082)"
|
||||
},
|
||||
{
|
||||
"author": "neuratech-ai",
|
||||
"title": "ComfyUI-MultiGPU",
|
||||
"reference": "https://github.com/neuratech-ai/ComfyUI-MultiGPU",
|
||||
"files": [
|
||||
"https://github.com/neuratech-ai/ComfyUI-MultiGPU"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Experimental nodes for using multiple GPUs in a single ComfyUI workflow.\nThis extension adds new nodes for model loading that allow you to specify the GPU to use for each model. It monkey patches the memory management of ComfyUI in a hacky way and is neither a comprehensive solution nor a well-tested one. Use at your own risk.\nNote that this does not add parallelism. The workflow steps are still executed sequentially just on different GPUs. Any potential speedup comes from not having to constantly load and unload models from VRAM."
|
||||
},
|
||||
{
|
||||
"author": "Isi-dev",
|
||||
"title": "Isi-dev/ComfyUI-UniAnimate",
|
||||
"reference": "https://github.com/Isi-dev/ComfyUI-UniAnimate",
|
||||
"files": [
|
||||
"https://github.com/Isi-dev/ComfyUI-UniAnimate"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "This is my ComfyUi-windows implementation for the image animation project ▶ UniAnimate: Taming Unified Video Diffusion Models for Consistent Human Image Animation[w/This node cannot be installed simultaneously with ComfyUI-UniAnimate by AIFSH because it has the same name as that custom node.]"
|
||||
},
|
||||
{
|
||||
"author": "Futureversecom",
|
||||
"title": "ComfyUI-JEN",
|
||||
"reference": "https://github.com/futureversecom/ComfyUI-JEN",
|
||||
"files": [
|
||||
"https://github.com/futureversecom/ComfyUI-JEN"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Comfy UI custom nodes for JEN music generation powered by Futureverse"
|
||||
},
|
||||
{
|
||||
"author": "denislov",
|
||||
"title": "Comfyui_AutoSurvey",
|
||||
"reference": "https://github.com/denislov/Comfyui_AutoSurvey",
|
||||
"files": [
|
||||
"https://github.com/denislov/Comfyui_AutoSurvey"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Nodes:AutoSurvey, WriteOutline, WriteSection, ChatModel, QueryKnowledge, ManageDatabase, AddDoc2Knowledge"
|
||||
},
|
||||
{
|
||||
"author": "leoleelxh",
|
||||
"title": "ComfyUI-MidjourneyNode-leoleexh",
|
||||
@@ -22,36 +82,6 @@
|
||||
"install_type": "git-clone",
|
||||
"description": "This node allows ComfyUI to easily integrate with Midjourney, utilizing the ultra-high quality of Midjourney and the powerful control of SD to provide more convenient capabilities for AIGC.\nNOTE: This node relies on the midjourney proxy project and requires API deployment in advance. For detailed installation, please refer to the instructions of the project. https://github.com/novicezk/midjourney-proxy"
|
||||
},
|
||||
{
|
||||
"author": "teward",
|
||||
"title": "Comfy-Sentry",
|
||||
"reference": "https://github.com/teward/Comfy-Sentry",
|
||||
"files": [
|
||||
"https://github.com/teward/Comfy-Sentry"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "This extension is actually nodeless, but provides a ComfyUI integration to a Sentry error reporting backend. This way, you can have full code and error reporting, performance monitoring and metrics, etc. in your ComfyUI interface reported to a Sentry backend."
|
||||
},
|
||||
{
|
||||
"author": "JosefKuchar",
|
||||
"title": "ComfyUI-AdvancedTiling [WIP]",
|
||||
"reference": "https://github.com/JosefKuchar/ComfyUI-AdvancedTiling",
|
||||
"files": [
|
||||
"https://github.com/JosefKuchar/ComfyUI-AdvancedTiling"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Nodes: Advanced Tiling Settings, Advanced Tiling, Advanced Tiling VAE Decode"
|
||||
},
|
||||
{
|
||||
"author": "hy134300",
|
||||
"title": "ComfyUI-PhotoMaker-V2",
|
||||
"reference": "https://github.com/hy134300/ComfyUI-PhotoMaker-V2",
|
||||
"files": [
|
||||
"https://github.com/hy134300/ComfyUI-PhotoMaker-V2"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Nodes for PhotoMaker-V2"
|
||||
},
|
||||
{
|
||||
"author": "kijai",
|
||||
"title": "ComfyUI-FollowYourEmojiWrapper [WIP]",
|
||||
@@ -288,16 +318,6 @@
|
||||
"install_type": "git-clone",
|
||||
"description": "This repository provides developers with a way to better manage their ComfyUI model memory. It includes nodes that allow developers to either unload all models or unload one model at a time. These nodes are designed as pass-through nodes, so they can be used anywhere in the flow. The nodes can be found in the 'Unload Model' section.[w/These are massive hammers, and it could be possible to break things, please don't use them if you need finesse.]"
|
||||
},
|
||||
{
|
||||
"author": "GeekyGhost",
|
||||
"title": "ComfyUI-GeekyRemB v2",
|
||||
"reference": "https://github.com/GeekyGhost/ComfyUI-GeekyRemB",
|
||||
"files": [
|
||||
"https://github.com/GeekyGhost/ComfyUI-GeekyRemB/raw/SketchUITest/GeekyRembv2.py"
|
||||
],
|
||||
"install_type": "copy",
|
||||
"description": "GeekyRemB Node Description: GeekyRemB is a powerful and versatile image processing node for ComfyUI, designed to remove backgrounds from images with advanced customization options. This node leverages the rembg library and offers a wide range of features for fine-tuning the background removal process and enhancing the resulting images."
|
||||
},
|
||||
{
|
||||
"author": "AIFSH",
|
||||
"title": "ComfyUI-OpenDIT [WIP]",
|
||||
@@ -808,16 +828,6 @@
|
||||
"install_type": "git-clone",
|
||||
"description": "Primary Nodes for Inference.Core and Stability Matrix. With a focus on not impacting startup performance and using fully qualified Node names. [w/This custom node is likely to conflict with many other nodes.]"
|
||||
},
|
||||
{
|
||||
"author": "blepping",
|
||||
"title": "comfyui_overly_complicated_sampling",
|
||||
"reference": "https://github.com/blepping/comfyui_overly_complicated_sampling",
|
||||
"files": [
|
||||
"https://github.com/blepping/comfyui_overly_complicated_sampling"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Very unstable, experimental and mathematically unsound sampling for ComfyUI.\nCurrent status: In flux, not suitable for general use."
|
||||
},
|
||||
{
|
||||
"author": "tracerstar",
|
||||
"title": "comfyui-p5js-node",
|
||||
|
||||
@@ -277,7 +277,6 @@
|
||||
"IntConditions",
|
||||
"IntMathOperation",
|
||||
"InversionDemoAdvancedPromptNode",
|
||||
"InversionDemoFakeAdvancedPromptNode",
|
||||
"InversionDemoLazyConditional",
|
||||
"InversionDemoLazyIndexSwitch",
|
||||
"InversionDemoLazyMixImages",
|
||||
@@ -410,14 +409,6 @@
|
||||
"title_aux": "ComfyUI-Airtable [WIP]"
|
||||
}
|
||||
],
|
||||
"https://github.com/GeekyGhost/ComfyUI-GeekyRemB/raw/SketchUITest/GeekyRembv2.py": [
|
||||
[
|
||||
"GeekyRemB"
|
||||
],
|
||||
{
|
||||
"title_aux": "ComfyUI-GeekyRemB v2"
|
||||
}
|
||||
],
|
||||
"https://github.com/GentlemanHu/ComfyUI-Notifier": [
|
||||
[
|
||||
"GentlemanHu_Notifier"
|
||||
@@ -478,6 +469,15 @@
|
||||
"title_aux": "GH Tools for ComfyUI"
|
||||
}
|
||||
],
|
||||
"https://github.com/Isi-dev/ComfyUI-UniAnimate": [
|
||||
[
|
||||
"Gen_align_pose",
|
||||
"UniAnimateImage"
|
||||
],
|
||||
{
|
||||
"title_aux": "Isi-dev/ComfyUI-UniAnimate"
|
||||
}
|
||||
],
|
||||
"https://github.com/IvanZhd/comfyui-codeformer": [
|
||||
[
|
||||
"RedBeanie_CustomImageInverter"
|
||||
@@ -501,6 +501,7 @@
|
||||
"ImAppendVideoNode",
|
||||
"ImApplyWav2lip",
|
||||
"ImDumpEntity",
|
||||
"ImNodeTitleOverride",
|
||||
"LoadPackage",
|
||||
"MergeNode",
|
||||
"NewNode",
|
||||
@@ -510,6 +511,7 @@
|
||||
"SetNodeMapping",
|
||||
"SetProperties",
|
||||
"batchNodes",
|
||||
"mergeEntityAndPointer",
|
||||
"redirectToNode"
|
||||
],
|
||||
{
|
||||
@@ -532,16 +534,6 @@
|
||||
"title_aux": "comfy-consistency-vae"
|
||||
}
|
||||
],
|
||||
"https://github.com/JosefKuchar/ComfyUI-AdvancedTiling": [
|
||||
[
|
||||
"AdvancedTiling",
|
||||
"AdvancedTilingSettings",
|
||||
"AdvancedTilingVAEDecode"
|
||||
],
|
||||
{
|
||||
"title_aux": "ComfyUI-AdvancedTiling [WIP]"
|
||||
}
|
||||
],
|
||||
"https://github.com/LZpenguin/ComfyUI-Text": [
|
||||
[
|
||||
"Add_text_by_mask"
|
||||
@@ -662,14 +654,6 @@
|
||||
"title_aux": "CheckProgress [WIP]"
|
||||
}
|
||||
],
|
||||
"https://github.com/MushroomFleet/DJZ-Nodes": [
|
||||
[
|
||||
"AspectSize"
|
||||
],
|
||||
{
|
||||
"title_aux": "DJZ-Nodes"
|
||||
}
|
||||
],
|
||||
"https://github.com/NeuralNotW0rk/ComfyUI-Waveform-Extensions/raw/main/EXT_VariationUtils.py": [
|
||||
[
|
||||
"BatchToList",
|
||||
@@ -694,13 +678,20 @@
|
||||
[
|
||||
"CPPN Generator",
|
||||
"Color Match",
|
||||
"Coordinates From Mask",
|
||||
"Custom Shader",
|
||||
"Distance Map",
|
||||
"Folder Queue Manager",
|
||||
"Image Blend by Mask (Batch)",
|
||||
"Image Noise Generator",
|
||||
"Image to Optical Flow",
|
||||
"Perlin Noise Generator",
|
||||
"Preview Mask",
|
||||
"Random Image Generator",
|
||||
"Shift Mask",
|
||||
"Slit Scan",
|
||||
"Spring Mesh",
|
||||
"Temporal Blur",
|
||||
"Video Queue Manager"
|
||||
],
|
||||
{
|
||||
@@ -1009,15 +1000,6 @@
|
||||
"title_aux": "Gen Data Tester [WIP]"
|
||||
}
|
||||
],
|
||||
"https://github.com/blepping/comfyui_overly_complicated_sampling": [
|
||||
[
|
||||
"ComposableSampler",
|
||||
"ComposableStepSampler"
|
||||
],
|
||||
{
|
||||
"title_aux": "comfyui_overly_complicated_sampling"
|
||||
}
|
||||
],
|
||||
"https://github.com/bruce007lee/comfyui-cleaner": [
|
||||
[
|
||||
"cleaner"
|
||||
@@ -1113,6 +1095,8 @@
|
||||
"CLIPSetLastLayer",
|
||||
"CLIPTextEncode",
|
||||
"CLIPTextEncodeControlnet",
|
||||
"CLIPTextEncodeFlux",
|
||||
"CLIPTextEncodeHunyuanDiT",
|
||||
"CLIPTextEncodeSD3",
|
||||
"CLIPTextEncodeSDXL",
|
||||
"CLIPTextEncodeSDXLRefiner",
|
||||
@@ -1149,6 +1133,7 @@
|
||||
"ExponentialScheduler",
|
||||
"FeatherMask",
|
||||
"FlipSigmas",
|
||||
"FluxGuidance",
|
||||
"FreeU",
|
||||
"FreeU_V2",
|
||||
"GITSScheduler",
|
||||
@@ -1208,6 +1193,7 @@
|
||||
"MaskToImage",
|
||||
"ModelMergeAdd",
|
||||
"ModelMergeBlocks",
|
||||
"ModelMergeFlux1",
|
||||
"ModelMergeSD1",
|
||||
"ModelMergeSD2",
|
||||
"ModelMergeSD3_2B",
|
||||
@@ -1218,6 +1204,7 @@
|
||||
"ModelSamplingContinuousEDM",
|
||||
"ModelSamplingContinuousV",
|
||||
"ModelSamplingDiscrete",
|
||||
"ModelSamplingFlux",
|
||||
"ModelSamplingSD3",
|
||||
"ModelSamplingStableCascade",
|
||||
"Morphology",
|
||||
@@ -1245,6 +1232,7 @@
|
||||
"SamplerCustomAdvanced",
|
||||
"SamplerDPMAdaptative",
|
||||
"SamplerDPMPP_2M_SDE",
|
||||
"SamplerDPMPP_2S_Ancestral",
|
||||
"SamplerDPMPP_3M_SDE",
|
||||
"SamplerDPMPP_SDE",
|
||||
"SamplerEulerAncestral",
|
||||
@@ -1335,6 +1323,26 @@
|
||||
"title_aux": "ComfyUI-Better-Dimensions"
|
||||
}
|
||||
],
|
||||
"https://github.com/denislov/Comfyui_AutoSurvey": [
|
||||
[
|
||||
"AddDoc2Knowledge",
|
||||
"AutoSurvey",
|
||||
"ChatModel",
|
||||
"ComfyMilvus",
|
||||
"ComfyWeaviate",
|
||||
"ManageDatabase",
|
||||
"MilvusScheme",
|
||||
"MsField",
|
||||
"QueryKnowledge",
|
||||
"WcProperty",
|
||||
"WcPropertyComb",
|
||||
"WriteOutline",
|
||||
"WriteSection"
|
||||
],
|
||||
{
|
||||
"title_aux": "Comfyui_AutoSurvey"
|
||||
}
|
||||
],
|
||||
"https://github.com/dfl/comfyui-stylegan": [
|
||||
[
|
||||
"StyleGAN Generator",
|
||||
@@ -1604,22 +1612,6 @@
|
||||
"title_aux": "ComfyUI_Easy_Nodes_hui"
|
||||
}
|
||||
],
|
||||
"https://github.com/hy134300/ComfyUI-PhotoMaker-V2": [
|
||||
[
|
||||
"BaseModel_Loader_fromhub",
|
||||
"BaseModel_Loader_local",
|
||||
"LoRALoader",
|
||||
"NEW_PhotoMaker_Generation",
|
||||
"PhotoMakerAdapter_Loader_fromhub",
|
||||
"PhotoMakerAdapter_Loader_local",
|
||||
"PhotoMaker_Generation",
|
||||
"Prompt_Styler",
|
||||
"Ref_Image_Preprocessing"
|
||||
],
|
||||
{
|
||||
"title_aux": "ComfyUI-PhotoMaker-V2"
|
||||
}
|
||||
],
|
||||
"https://github.com/hy134300/comfyui-hb-node": [
|
||||
[
|
||||
"generate story",
|
||||
@@ -1805,8 +1797,12 @@
|
||||
],
|
||||
"https://github.com/justUmen/Bjornulf_custom_nodes": [
|
||||
[
|
||||
"Bjornulf_CheckBlackImage",
|
||||
"Bjornulf_ClearVRAM",
|
||||
"Bjornulf_CombineBackgroundOverlay",
|
||||
"Bjornulf_CombineTexts",
|
||||
"Bjornulf_CustomStringType",
|
||||
"Bjornulf_GrayscaleTransform",
|
||||
"Bjornulf_LoopBasicBatch",
|
||||
"Bjornulf_LoopCombosSamplersSchedulers",
|
||||
"Bjornulf_LoopFloat",
|
||||
@@ -1816,8 +1812,10 @@
|
||||
"Bjornulf_LoopTexts",
|
||||
"Bjornulf_RandomModelClipVae",
|
||||
"Bjornulf_RandomTexts",
|
||||
"Bjornulf_RemoveTransparency",
|
||||
"Bjornulf_ResizeImage",
|
||||
"Bjornulf_SaveApiImage",
|
||||
"Bjornulf_SaveBjornulfLobeChat",
|
||||
"Bjornulf_SaveImagePath",
|
||||
"Bjornulf_SaveImageToFolder",
|
||||
"Bjornulf_SaveText",
|
||||
@@ -1831,7 +1829,7 @@
|
||||
"Bjornulf_WriteImageCharacters",
|
||||
"Bjornulf_WriteImageEnvironment",
|
||||
"Bjornulf_WriteText",
|
||||
"Bjornulf_imgs2vid",
|
||||
"Bjornulf_imagesToVideo",
|
||||
"Bjornulf_ollamaLoader"
|
||||
],
|
||||
{
|
||||
@@ -1895,6 +1893,18 @@
|
||||
"title_aux": "ComfyUI-CV-VAE"
|
||||
}
|
||||
],
|
||||
"https://github.com/kijai/ComfyUI-CogVideoXWrapper": [
|
||||
[
|
||||
"CogVideoDecode",
|
||||
"CogVideoImageEncode",
|
||||
"CogVideoSampler",
|
||||
"CogVideoTextEncode",
|
||||
"DownloadAndLoadCogVideoModel"
|
||||
],
|
||||
{
|
||||
"title_aux": "ComfyUI-CogVideoXWrapper [WIP]"
|
||||
}
|
||||
],
|
||||
"https://github.com/kijai/ComfyUI-DeepSeek-VL": [
|
||||
[
|
||||
"deepseek_vl_inference",
|
||||
@@ -1926,6 +1936,9 @@
|
||||
[
|
||||
"DownloadAndLoadFYEModel",
|
||||
"FYECLIPEncode",
|
||||
"FYEClipEmbedToComfy",
|
||||
"FYELandmarkEncode",
|
||||
"FYELandmarkToComfy",
|
||||
"FYEMediaPipe",
|
||||
"FYESampler",
|
||||
"FYESamplerLong"
|
||||
@@ -2134,6 +2147,19 @@
|
||||
"title_aux": "ComfyUI GLIGEN GUI Node"
|
||||
}
|
||||
],
|
||||
"https://github.com/neuratech-ai/ComfyUI-MultiGPU": [
|
||||
[
|
||||
"CLIPLoaderMultiGPU",
|
||||
"CheckpointLoaderMultiGPU",
|
||||
"ControlNetLoaderMultiGPU",
|
||||
"DualCLIPLoaderMultiGPU",
|
||||
"UNETLoaderMultiGPU",
|
||||
"VAELoaderMultiGPU"
|
||||
],
|
||||
{
|
||||
"title_aux": "ComfyUI-MultiGPU"
|
||||
}
|
||||
],
|
||||
"https://github.com/nidefawl/ComfyUI-nidefawl": [
|
||||
[
|
||||
"BlendImagesWithBoundedMasks",
|
||||
@@ -2168,8 +2194,11 @@
|
||||
"PromptUtilitiesJoinStringList",
|
||||
"PromptUtilitiesLoadPreset",
|
||||
"PromptUtilitiesLoadPresetAdvanced",
|
||||
"PromptUtilitiesPromptWeight",
|
||||
"PromptUtilitiesRandomPreset",
|
||||
"PromptUtilitiesRandomPresetAdvanced"
|
||||
"PromptUtilitiesRandomPresetAdvanced",
|
||||
"PromptUtilitiesReplaceOrInsertTag",
|
||||
"PromptUtilitiesRoundPromptWeight"
|
||||
],
|
||||
{
|
||||
"title_aux": "ComfyUI-PromptUtilities"
|
||||
@@ -2200,6 +2229,7 @@
|
||||
"https://github.com/pamparamm/ComfyUI-ppm": [
|
||||
[
|
||||
"AttentionCouplePPM",
|
||||
"CFGLimiterGuider",
|
||||
"CFGPPSamplerSelect",
|
||||
"CLIPMicroConditioning",
|
||||
"CLIPNegPip",
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -10,6 +10,16 @@
|
||||
},
|
||||
|
||||
|
||||
{
|
||||
"author": "hy134300",
|
||||
"title": "ComfyUI-PhotoMaker-V2 [REMOVED]",
|
||||
"reference": "https://github.com/hy134300/ComfyUI-PhotoMaker-V2",
|
||||
"files": [
|
||||
"https://github.com/hy134300/ComfyUI-PhotoMaker-V2"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Nodes for PhotoMaker-V2"
|
||||
},
|
||||
{
|
||||
"author": "neverbiasu",
|
||||
"title": "ComfyUI ImageCaptioner [REMOVED]",
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,122 @@
|
||||
{
|
||||
"models": [
|
||||
{
|
||||
"name": "comfyanonymous/clip_l",
|
||||
"type": "clip",
|
||||
"base": "clip",
|
||||
"save_path": "default",
|
||||
"description": "clip_l model",
|
||||
"reference": "https://huggingface.co/comfyanonymous/flux_text_encoders/tree/main",
|
||||
"filename": "clip_l.safetensors",
|
||||
"url": "https://huggingface.co/comfyanonymous/flux_text_encoders/resolve/main/clip_l.safetensors",
|
||||
"size": "246MB"
|
||||
},
|
||||
|
||||
{
|
||||
"name": "Comfy Org/FLUX.1 [dev] Checkpoint model (fp8)",
|
||||
"type": "checkpoint",
|
||||
"base": "FLUX.1",
|
||||
"save_path": "checkpoints/FLUX1",
|
||||
"description": "FLUX.1 [dev] Checkpoint model (fp8)",
|
||||
"reference": "https://huggingface.co/Comfy-Org/flux1-dev/tree/main",
|
||||
"filename": "flux1-dev-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/flux1-dev/resolve/main/flux1-dev-fp8.safetensors",
|
||||
"size": "17.2GB"
|
||||
},
|
||||
{
|
||||
"name": "Comfy Org/FLUX.1 [schnell] Checkpoint model (fp8)",
|
||||
"type": "checkpoint",
|
||||
"base": "FLUX.1",
|
||||
"save_path": "checkpoints/FLUX1",
|
||||
"description": "FLUX.1 [schnell] Checkpoint model (fp8)",
|
||||
"reference": "https://huggingface.co/Comfy-Org/flux1-dev/tree/main",
|
||||
"filename": "flux1-schnell-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Comfy-Org/flux1-schnell/resolve/main/flux1-schnell-fp8.safetensors",
|
||||
"size": "17.2GB"
|
||||
},
|
||||
|
||||
{
|
||||
"name": "google-t5/t5-v1_1-xxl_encoderonly-fp16",
|
||||
"type": "clip",
|
||||
"base": "t5",
|
||||
"save_path": "clip/t5",
|
||||
"description": "The encoder part of https://huggingface.co/google/t5-v1_1-xxl, used with SD3 and Flux1",
|
||||
"reference": "https://huggingface.co/mcmonkey/google_t5-v1_1-xxl_encoderonly",
|
||||
"filename": "google_t5-v1_1-xxl_encoderonly-fp16.safetensors",
|
||||
"url": "https://huggingface.co/mcmonkey/google_t5-v1_1-xxl_encoderonly/resolve/main/pytorch_model.safetensors",
|
||||
"size": "10.1GB"
|
||||
},
|
||||
{
|
||||
"name": "google-t5/t5-v1_1-xxl_encoderonly-fp8_e4m3fn",
|
||||
"type": "clip",
|
||||
"base": "t5",
|
||||
"save_path": "clip/t5",
|
||||
"description": "The encoder part of https://huggingface.co/google/t5-v1_1-xxl, used with SD3 and Flux1",
|
||||
"reference": "https://huggingface.co/mcmonkey/google_t5-v1_1-xxl_encoderonly",
|
||||
"filename": "google_t5-v1_1-xxl_encoderonly-fp8_e4m3fn.safetensors",
|
||||
"url": "https://huggingface.co/mcmonkey/google_t5-v1_1-xxl_encoderonly/resolve/main/t5xxl_fp8_e4m3fn.safetensors",
|
||||
"size": "4.89GB"
|
||||
},
|
||||
|
||||
{
|
||||
"name": "FLUX.1 [schnell] Diffusion model",
|
||||
"type": "unet",
|
||||
"base": "FLUX.1",
|
||||
"save_path": "unet/FLUX1",
|
||||
"description": "FLUX.1 [Schnell] Diffusion model (a.k.a. FLUX.1 turbo model)[w/Due to the large size of the model, it is recommended to download it through a browser if possible.]",
|
||||
"reference": "https://huggingface.co/black-forest-labs/FLUX.1-schnell",
|
||||
"filename": "flux1-schnell.sft",
|
||||
"url": "https://huggingface.co/black-forest-labs/FLUX.1-schnell/resolve/main/flux1-schnell.sft",
|
||||
"size": "23.8GB"
|
||||
},
|
||||
|
||||
{
|
||||
"name": "FLUX.1 VAE model",
|
||||
"type": "vae",
|
||||
"base": "FLUX.1",
|
||||
"save_path": "vae/FLUX1",
|
||||
"description": "FLUX.1 [Schnell] VAE model",
|
||||
"reference": "https://huggingface.co/black-forest-labs/FLUX.1-schnell",
|
||||
"filename": "ae.sft",
|
||||
"url": "https://huggingface.co/black-forest-labs/FLUX.1-schnell/resolve/main/ae.safetensors",
|
||||
"size": "335MB"
|
||||
},
|
||||
|
||||
{
|
||||
"name": "kijai/FLUX.1 [schnell] Diffusion model (float8_e4m3fn)",
|
||||
"type": "unet",
|
||||
"base": "FLUX.1",
|
||||
"save_path": "unet/FLUX1",
|
||||
"description": "FLUX.1 [Schnell] Diffusion model (float8_e4m3fn)",
|
||||
"reference": "https://huggingface.co/Kijai/flux-fp8",
|
||||
"filename": "flux1-schnell-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Kijai/flux-fp8/resolve/main/flux1-schnell-fp8.safetensors",
|
||||
"size": "11.9GB"
|
||||
},
|
||||
{
|
||||
"name": "kijai/FLUX.1 [dev] Diffusion model (float8_e4m3fn)",
|
||||
"type": "unet",
|
||||
"base": "FLUX.1",
|
||||
"save_path": "unet/FLUX1",
|
||||
"description": "FLUX.1 [dev] Diffusion model (float8_e4m3fn)",
|
||||
"reference": "https://huggingface.co/Kijai/flux-fp8",
|
||||
"filename": "flux1-dev-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Kijai/flux-fp8/resolve/main/flux1-dev-fp8.safetensors",
|
||||
"size": "11.9GB"
|
||||
},
|
||||
|
||||
{
|
||||
"name": "photomaker-v2.bin",
|
||||
"type": "photomaker",
|
||||
"base": "SDXL",
|
||||
"save_path": "photomaker",
|
||||
"description": "PhotoMaker model. This model is compatible with SDXL.",
|
||||
"reference": "https://huggingface.co/TencentARC/PhotoMaker-V2",
|
||||
"filename": "photomaker-v2.bin",
|
||||
"url": "https://huggingface.co/TencentARC/PhotoMaker-V2/resolve/main/photomaker-v2.bin",
|
||||
"size": "1.8GB"
|
||||
},
|
||||
|
||||
{
|
||||
"name": "hunyuan_dit_1.2.safetensors",
|
||||
"type": "checkpoint",
|
||||
@@ -599,86 +716,6 @@
|
||||
"filename": "antelopev2.zip",
|
||||
"url": "https://huggingface.co/MonsterMMORPG/tools/resolve/main/antelopev2.zip",
|
||||
"size": "360.7MB"
|
||||
},
|
||||
{
|
||||
"name": "InstantID/ip-adapter",
|
||||
"type": "instantid",
|
||||
"base": "SDXL",
|
||||
"save_path": "instantid/SDXL",
|
||||
"description": "ip-adapter model for cubiq/InstantID",
|
||||
"reference": "https://huggingface.co/InstantX/InstantID",
|
||||
"filename": "ip-adapter.bin",
|
||||
"url": "https://huggingface.co/InstantX/InstantID/resolve/main/ip-adapter.bin"
|
||||
},
|
||||
{
|
||||
"name": "InstantID/ControlNet",
|
||||
"type": "controlnet",
|
||||
"base": "SDXL",
|
||||
"save_path": "controlnet/SDXL/instantid",
|
||||
"description": "instantid controlnet model for cubiq/InstantID",
|
||||
"reference": "https://huggingface.co/InstantX/InstantID",
|
||||
"filename": "diffusion_pytorch_model.safetensors",
|
||||
"url": "https://huggingface.co/InstantX/InstantID/resolve/main/ControlNetModel/diffusion_pytorch_model.safetensors"
|
||||
},
|
||||
{
|
||||
"name": "ip_plus_composition_sd15.safetensors",
|
||||
"type": "IP-Adapter",
|
||||
"base": "SD1.5",
|
||||
"save_path": "ipadapter",
|
||||
"description": "You can use this model in the [a/ComfyUI IPAdapter plus](https://github.com/cubiq/ComfyUI_IPAdapter_plus) extension.",
|
||||
"reference": "https://huggingface.co/ostris/ip-composition-adapter",
|
||||
"filename": "ip_plus_composition_sd15.safetensors",
|
||||
"url": "https://huggingface.co/ostris/ip-composition-adapter/resolve/main/ip_plus_composition_sd15.safetensors"
|
||||
},
|
||||
{
|
||||
"name": "ip_plus_composition_sdxl.safetensors",
|
||||
"type": "IP-Adapter",
|
||||
"base": "SDXL",
|
||||
"save_path": "ipadapter",
|
||||
"description": "You can use this model in the [a/ComfyUI IPAdapter plus](https://github.com/cubiq/ComfyUI_IPAdapter_plus) extension.",
|
||||
"reference": "https://huggingface.co/ostris/ip-composition-adapter",
|
||||
"filename": "ip_plus_composition_sdxl.safetensors",
|
||||
"url": "https://huggingface.co/ostris/ip-composition-adapter/resolve/main/ip_plus_composition_sdxl.safetensors"
|
||||
},
|
||||
{
|
||||
"name": "ip-adapter-faceid-portrait-v11_sd15.bin",
|
||||
"type": "IP-Adapter",
|
||||
"base": "SD1.5",
|
||||
"save_path": "ipadapter",
|
||||
"description": "IP-Adapter-FaceID Portrait V11 Model (SD1.5) [ipadapter]",
|
||||
"reference": "https://huggingface.co/h94/IP-Adapter-FaceID",
|
||||
"filename": "ip-adapter-faceid-portrait-v11_sd15.bin",
|
||||
"url": "https://huggingface.co/h94/IP-Adapter-FaceID/resolve/main/ip-adapter-faceid-portrait-v11_sd15.bin"
|
||||
},
|
||||
{
|
||||
"name": "ip-adapter-faceid-portrait_sdxl.bin",
|
||||
"type": "IP-Adapter",
|
||||
"base": "SDXL",
|
||||
"save_path": "ipadapter",
|
||||
"description": "IP-Adapter-FaceID Portrait Model (SDXL) [ipadapter]",
|
||||
"reference": "https://huggingface.co/h94/IP-Adapter-FaceID",
|
||||
"filename": "ip-adapter-faceid-portrait_sdxl.bin",
|
||||
"url": "https://huggingface.co/h94/IP-Adapter-FaceID/resolve/main/ip-adapter-faceid-portrait_sdxl.bin"
|
||||
},
|
||||
{
|
||||
"name": "ip-adapter-faceid-portrait_sdxl_unnorm.bin",
|
||||
"type": "IP-Adapter",
|
||||
"base": "SDXL",
|
||||
"save_path": "ipadapter",
|
||||
"description": "IP-Adapter-FaceID Portrait Model (SDXL/unnorm) [ipadapter]",
|
||||
"reference": "https://huggingface.co/h94/IP-Adapter-FaceID",
|
||||
"filename": "ip-adapter-faceid-portrait_sdxl_unnorm.bin",
|
||||
"url": "https://huggingface.co/h94/IP-Adapter-FaceID/resolve/main/ip-adapter-faceid-portrait_sdxl_unnorm.bin"
|
||||
},
|
||||
{
|
||||
"name": "ip-adapter_sd15_light_v11.bin",
|
||||
"type": "IP-Adapter",
|
||||
"base": "SD1.5",
|
||||
"save_path": "ipadapter",
|
||||
"description": "You can use this model in the [a/ComfyUI IPAdapter plus](https://github.com/cubiq/ComfyUI_IPAdapter_plus) extension.",
|
||||
"reference": "https://huggingface.co/h94/IP-Adapter",
|
||||
"filename": "ip-adapter_sd15_light_v11.bin",
|
||||
"url": "https://huggingface.co/h94/IP-Adapter/resolve/main/models/ip-adapter_sd15_light_v11.bin"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -66,10 +66,10 @@
|
||||
"\n",
|
||||
"!echo -= Install dependencies =-\n",
|
||||
"!pip3 install accelerate\n",
|
||||
"!pip3 install einops transformers>=4.25.1 safetensors>=0.3.0 aiohttp pyyaml Pillow scipy tqdm psutil\n",
|
||||
"!pip3 install einops transformers>=4.28.1 safetensors>=0.4.2 aiohttp pyyaml Pillow scipy tqdm psutil tokenizers>=0.13.3\n",
|
||||
"!pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121\n",
|
||||
"!pip3 install torchsde\n",
|
||||
"!pip3 install kornia>=0.7.1 spandrel\n",
|
||||
"!pip3 install kornia>=0.7.1 spandrel soundfile sentencepiece\n",
|
||||
"\n",
|
||||
"if OPTIONS['USE_COMFYUI_MANAGER']:\n",
|
||||
" %cd custom_nodes\n",
|
||||
|
||||
@@ -448,7 +448,7 @@ def is_installed(name):
|
||||
if name.startswith('#'):
|
||||
return True
|
||||
|
||||
pattern = r'([^<>!=]+)([<>!=]=?)(.*)'
|
||||
pattern = r'([^<>!=]+)([<>!=]=?)([^ ]*)'
|
||||
match = re.search(pattern, name)
|
||||
|
||||
if match:
|
||||
@@ -532,7 +532,12 @@ if os.path.exists(restore_snapshot_path):
|
||||
package_name = remap_pip_package(line.strip())
|
||||
if package_name and not is_installed(package_name):
|
||||
if not package_name.startswith('#'):
|
||||
install_cmd = [sys.executable, "-m", "pip", "install", package_name]
|
||||
if '--index-url' in package_name:
|
||||
s = package_name.split('--index-url')
|
||||
install_cmd = [sys.executable, "-m", "pip", "install", s[0].strip(), '--index-url', s[1].strip()]
|
||||
else:
|
||||
install_cmd = [sys.executable, "-m", "pip", "install", package_name]
|
||||
|
||||
this_exit_code += process_wrap(install_cmd, repo_path)
|
||||
|
||||
if os.path.exists(install_script_path) and f'{repo_path}/install.py' not in processed_install:
|
||||
@@ -575,7 +580,12 @@ def execute_lazy_install_script(repo_path, executable):
|
||||
for line in requirements_file:
|
||||
package_name = remap_pip_package(line.strip())
|
||||
if package_name and not is_installed(package_name):
|
||||
install_cmd = [executable, "-m", "pip", "install", package_name]
|
||||
if '--index-url' in package_name:
|
||||
s = package_name.split('--index-url')
|
||||
install_cmd = [sys.executable, "-m", "pip", "install", s[0].strip(), '--index-url', s[1].strip()]
|
||||
else:
|
||||
install_cmd = [sys.executable, "-m", "pip", "install", package_name]
|
||||
|
||||
process_wrap(install_cmd, repo_path)
|
||||
|
||||
if os.path.exists(install_script_path) and f'{repo_path}/install.py' not in processed_install:
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[project]
|
||||
name = "comfyui-manager"
|
||||
description = "ComfyUI-Manager provides features to install and manage custom nodes for ComfyUI, as well as various functionalities to assist with ComfyUI."
|
||||
version = "2.48.2"
|
||||
license = "LICENSE"
|
||||
version = "2.48.6"
|
||||
license = { file = "LICENSE.txt" }
|
||||
dependencies = ["GitPython", "PyGithub", "matrix-client==0.4.0", "transformers", "huggingface-hub>0.20", "typer", "rich", "typing-extensions"]
|
||||
|
||||
[project.urls]
|
||||
|
||||
Reference in New Issue
Block a user