From 7d7b2fcf002ba0c723f9d92eea9d0a0b1b87fa99 Mon Sep 17 00:00:00 2001 From: Vladimir Mandic Date: Tue, 22 Oct 2024 13:29:03 -0400 Subject: [PATCH] add sd3.5 Signed-off-by: Vladimir Mandic --- CHANGELOG.md | 7 +++++++ html/reference.json | 18 ++++++++++++------ .../stabilityai--stable-diffusion-3_5.jpg | Bin 0 -> 67623 bytes modules/model_sd3.py | 4 +--- modules/modelloader.py | 4 +++- modules/prompt_parser_diffusers.py | 6 +++++- 6 files changed, 28 insertions(+), 11 deletions(-) create mode 100644 models/Reference/stabilityai--stable-diffusion-3_5.jpg diff --git a/CHANGELOG.md b/CHANGELOG.md index 6dc018e31..c71b6000e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,6 +19,7 @@ - New fine-tuned [CLiP-ViT-L]((https://huggingface.co/zer0int/CLIP-GmP-ViT-L-14)) 1st stage **text-encoders** used by SD15, SDXL, Flux.1, etc. brings additional details to your images - New models: + [Stable Diffusion 3.5 Large](https://huggingface.co/stabilityai/stable-diffusion-3.5-large) [OmniGen](https://arxiv.org/pdf/2409.11340) [CogView 3 Plus](https://huggingface.co/THUDM/CogView3-Plus-3B) [Meissonic](https://github.com/viiika/Meissonic) @@ -178,6 +179,12 @@ And there are also other goodies like multiple *XYZ grid* improvements, addition - Params used: prompt, steps, guidance scale for prompt guidance, refine guidance scale for image guidance Recommended: guidance=3.0, refine-guidance=1.6 +- [Stable Diffusion 3.5 Large](https://huggingface.co/stabilityai/stable-diffusion-3.5-large) + - New/improved variant of Stable Diffusion 3 + - Select from *networks -> models -> reference* + - Available in standard and turbo variations + - *Note*: Access to to both variations of SD3.5 model is gated, you must accept the conditions and use HF login + - [CogView 3 Plus](https://huggingface.co/THUDM/CogView3-Plus-3B) - Select from *networks -> models -> reference* - resolution width and height can be from 512px to 2048px and must be divisible by 32 diff --git a/html/reference.json b/html/reference.json index ff29623ff..8d26433e7 100644 --- a/html/reference.json +++ b/html/reference.json @@ -112,21 +112,27 @@ "extras": "sampler: Default, cfg_scale: 4.0, image_cfg_scale: 1.0" }, "StabilityAI Stable Diffusion 3 Medium": { - "path": "huggingface/stabilityai/stable-diffusion-3-medium-diffusers", + "path": "stabilityai/stable-diffusion-3-medium-diffusers", "skip": true, "variant": "fp16", - "te3": null, "desc": "Stable Diffusion 3 Medium is a Multimodal Diffusion Transformer (MMDiT) text-to-image model that features greatly improved performance in image quality, typography, complex prompt understanding, and resource-efficiency", "preview": "stabilityai--stable-diffusion-3.jpg", "extras": "sampler: Default, cfg_scale: 7.0" }, - "StabilityAI Stable Diffusion 3 Large": { - "path": "huggingface/stabilityai/stable-diffusion-3.5-large", + "StabilityAI Stable Diffusion 3.5 Large": { + "path": "stabilityai/stable-diffusion-3.5-large", "skip": true, "variant": "fp16", - "te3": null, "desc": "Stable Diffusion 3 Medium is a Multimodal Diffusion Transformer (MMDiT) text-to-image model that features greatly improved performance in image quality, typography, complex prompt understanding, and resource-efficiency", - "preview": "stabilityai--stable-diffusion-3.jpg", + "preview": "stabilityai--stable-diffusion-3_5.jpg", + "extras": "sampler: Default, cfg_scale: 7.0" + }, + "StabilityAI Stable Diffusion 3.5 Turbo": { + "path": "stabilityai/stable-diffusion-3.5-large-turbo", + "skip": true, + "variant": "fp16", + "desc": "Stable Diffusion 3 Medium is a Multimodal Diffusion Transformer (MMDiT) text-to-image model that features greatly improved performance in image quality, typography, complex prompt understanding, and resource-efficiency", + "preview": "stabilityai--stable-diffusion-3_5.jpg", "extras": "sampler: Default, cfg_scale: 7.0" }, diff --git a/models/Reference/stabilityai--stable-diffusion-3_5.jpg b/models/Reference/stabilityai--stable-diffusion-3_5.jpg new file mode 100644 index 0000000000000000000000000000000000000000..cfc6be452cfcbe76f5cf56989a3478249de81b7f GIT binary patch literal 67623 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 MwrU<03@(5F+3%H{X8-^I literal 0 HcmV?d00001 diff --git a/modules/model_sd3.py b/modules/model_sd3.py index e842d15fc..abc013853 100644 --- a/modules/model_sd3.py +++ b/modules/model_sd3.py @@ -1,5 +1,4 @@ import os -import torch import diffusers import transformers @@ -7,7 +6,6 @@ import transformers def load_sd3(checkpoint_info, cache_dir=None, config=None): from modules import devices, modelloader, sd_models repo_id = sd_models.path_to_repo(checkpoint_info.name) - # dtype = torch.float16 dtype = devices.dtype kwargs = {} if checkpoint_info.path is not None and checkpoint_info.path.endswith('.safetensors') and os.path.exists(checkpoint_info.path): @@ -48,6 +46,7 @@ def load_sd3(checkpoint_info, cache_dir=None, config=None): else: modelloader.hf_login() loader = diffusers.StableDiffusion3Pipeline.from_pretrained + kwargs['variant'] = 'fp16' pipe = loader( repo_id, torch_dtype=dtype, @@ -55,6 +54,5 @@ def load_sd3(checkpoint_info, cache_dir=None, config=None): config=config, **kwargs, ) - # pipe.transformer = pipe.transformer.to(devices.dtype) # diffusers loader leaves it as-is devices.torch_gc() return pipe diff --git a/modules/modelloader.py b/modules/modelloader.py index 50eb0974b..f9b7a4497 100644 --- a/modules/modelloader.py +++ b/modules/modelloader.py @@ -196,6 +196,8 @@ def download_diffusers_model(hub_id: str, cache_dir: str = None, download_config return None from diffusers import DiffusionPipeline shared.state.begin('HuggingFace') + if hub_id.startswith('huggingface/'): + hub_id = hub_id.replace('huggingface/', '') if download_config is None: download_config = { "force_download": False, @@ -335,7 +337,7 @@ def get_reference_opts(name: str, quiet=False): # shared.log.error(f'Reference: model="{name}" not found') return {} if not quiet: - shared.log.debug(f'Reference: model="{name}" {model_opts.get("extras", None)}') + shared.log.debug(f'Reference: model="{name}" {model_opts}') return model_opts diff --git a/modules/prompt_parser_diffusers.py b/modules/prompt_parser_diffusers.py index 40a24465d..a7c5c296c 100644 --- a/modules/prompt_parser_diffusers.py +++ b/modules/prompt_parser_diffusers.py @@ -127,7 +127,11 @@ def get_tokens(msg, prompt): if shared.sd_loaded and hasattr(shared.sd_model, 'tokenizer') and shared.sd_model.tokenizer is not None: if token_dict is None or token_type != shared.sd_model_type: token_type = shared.sd_model_type - fn = os.path.join(shared.sd_model.tokenizer.name_or_path, 'tokenizer', 'vocab.json') + fn = shared.sd_model.tokenizer.name_or_path + if fn.endswith('tokenizer'): + fn = os.path.join(shared.sd_model.tokenizer.name_or_path, 'vocab.json') + else: + fn = os.path.join(shared.sd_model.tokenizer.name_or_path, 'tokenizer', 'vocab.json') token_dict = shared.readfile(fn, silent=True) for k, v in shared.sd_model.tokenizer.added_tokens_decoder.items(): token_dict[str(v)] = k