Skip to content

Please add gguf‑quantized support for "Krea‑2" #464

Activity

  1. changed the title [-]Please add gguf‑quantized support for Krea‑2[/-] [+]Please add gguf‑quantized support for "Krea‑2"[/+] on Jun 24, 2026
  2. RealRebelAI commented on Jun 24, 2026

    @RealRebelAI

    My gguf nodes are a forked version of these for krea-2, if anyone knows how to merge my loaders py into the normal gguf repo then we could all already have it. I coded it in last night. Its on my repo but i dont know how to use github at all to merge it myself. This site is like a foreign language for some reason to me

  3. m8rr commented on Jun 24, 2026

    @m8rr

    #463 (comment)
    https://github.com/m8rr/ComfyUI-GGUF/tree/Dynamic-VRAM

    @RealRebelAI Your GGUF works fine in my environment, though I'm not sure if the calculations are correct. The GGUF from the link provided by @makisekurisu-jp throws a [WARNING] unet unexpected: ['last.down.weight', 'last.up.weight'], but it does work.

    And ComfyUI's official BF16 doesn't have ['last.down.weight', 'last.up.weight'], so it seems safe to ignore.

    ideogram4, boogu, krea2 / UNet and TE both function properly using GGUF.
    While Gemma-4 E2B appears to have some problems, it operates well in my specific environment, including vision recognition.

  4. makisekurisu-jp commented on Jun 24, 2026

    @makisekurisu-jp
    Author

    #463 (comment)
    https://github.com/m8rr/ComfyUI-GGUF/tree/Dynamic-VRAM

    @RealRebelAI Your GGUF works fine in my environment, though I'm not sure if the calculations are correct. The GGUF from the link provided by @makisekurisu-jp throws a [WARNING] unet unexpected: ['last.down.weight', 'last.up.weight'], but it does work.

    And ComfyUI's official BF16 doesn't have ['last.down.weight', 'last.up.weight'], so it seems safe to ignore.

    ideogram4, boogu, krea2 / UNet and TE both function properly using GGUF.
    While Gemma-4 E2B appears to have some problems, it operates well in my specific environment, including vision recognition.

    https://x.com/i/status/2069575215982473398

  5. makisekurisu-jp commented on Jun 24, 2026

    @makisekurisu-jp
    Author

    My gguf nodes are a forked version of these for krea-2, if anyone knows how to merge my loaders py into the normal gguf repo then we could all already have it. I coded it in last night. Its on my repo but i dont know how to use github at all to merge it myself. This site is like a foreign language for some reason to me

    Do you also get the following warning when running your quantized GGUF model?
    [WARNING] unet unexpected: ['last.down.weight', 'last.up.weight']
    I encountered the same warning when using a model quantized with vantagewithai.
    You can only open a PR; merging into the main branch requires access to the city96 repository. You’ll need to fork his repository and maintain your own fork.

  6. RealRebelAI commented on Jun 24, 2026

    @RealRebelAI

    My gguf nodes are a forked version of these for krea-2, if anyone knows how to merge my loaders py into the normal gguf repo then we could all already have it. I coded it in last night. Its on my repo but i dont know how to use github at all to merge it myself. This site is like a foreign language for some reason to me

    Do you also get the following warning when running your quantized GGUF model? [WARNING] unet unexpected: ['last.down.weight', 'last.up.weight'] I encountered the same warning when using a model quantized with vantagewithai. You can only open a PR; merging into the main branch requires access to the city96 repository. You’ll need to fork his repository and maintain your own fork.

    The last.down.weight issue warning is just kreas layering format forcing a layer that comfy doesnt accept so it bypasses them essentially

  7. tukangcode commented on Jun 25, 2026

    @tukangcode

    My gguf nodes are a forked version of these for krea-2, if anyone knows how to merge my loaders py into the normal gguf repo then we could all already have it. I coded it in last night. Its on my repo but i dont know how to use github at all to merge it myself. This site is like a foreign language for some reason to me

    Do you also get the following warning when running your quantized GGUF model? [WARNING] unet unexpected: ['last.down.weight', 'last.up.weight'] I encountered the same warning when using a model quantized with vantagewithai. You can only open a PR; merging into the main branch requires access to the city96 repository. You’ll need to fork his repository and maintain your own fork.

    The last.down.weight issue warning is just kreas layering format forcing a layer that comfy doesnt accept so it bypasses them essentially

    any idea why i go clip warning ? are wrong quant or model for clip ? or my comfyui need update cause already update and even disable city96 and calcius node.

    Image
    [INFO] gguf qtypes: F32 (167), F16 (1), Q5_K (63), Q2_K (201)
    [INFO] model weight dtype torch.bfloat16, manual cast: torch.float32
    [INFO] model_type FLUX
    [WARNING] unet unexpected: ['last.down.weight', 'last.up.weight']
    [INFO] Requested to load Krea2
    FETCH ComfyRegistry Data: 145/156
    FETCH ComfyRegistry Data: 150/156
    FETCH ComfyRegistry Data: 155/156
    FETCH ComfyRegistry Data [DONE]
    [INFO] [ComfyUI-Manager] default cache updated: https://api.comfy.org/nodes
    FETCH DATA from: https://raw.githubusercontent.com/ltdrdata/ComfyUI-Manager/main/custom-node-list.json [DONE]
    [INFO] [ComfyUI-Manager] All startup tasks have been completed.
    
    [INFO] loaded partially; 1976.12 MB usable, 1755.61 MB loaded, 3284.59 MB offloaded, 220.50 MB buffer reserved, lowvram patches: 0
      0%|                                                                | 0/4 [00:00<?, ?it/s,   Model Initializing ...  ]
    [ERROR] !!! Exception during processing !!! Krea2 expects conditioning with 12x2560=30720 features (a 12-layer Qwen3-VL stack) but got 2560. Load the text encoder with CLIPLoader type 'krea2'.
    [ERROR] Traceback (most recent call last):
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\execution.py", line 542, in execute
        output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)
                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\execution.py", line 341, in get_output_data
        return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\execution.py", line 315, in _async_map_node_over_list
        await process_inputs(input_dict, i)
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\execution.py", line 303, in process_inputs
        result = f(**inputs)
                 ^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\nodes.py", line 1584, in sample
        return common_ksampler(model, seed, steps, cfg, sampler_name, scheduler, positive, negative, latent_image, denoise=denoise)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\nodes.py", line 1548, in common_ksampler
        samples = comfy.sample.sample(model, noise, steps, cfg, sampler_name, scheduler, positive, negative, latent_image,
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\sample.py", line 74, in sample
        samples = sampler.sample(noise, positive, negative, cfg=cfg, latent_image=latent_image, start_step=start_step, last_step=last_step, force_full_denoise=force_full_denoise, denoise_mask=noise_mask, sigmas=sigmas, callback=callback, disable_pbar=disable_pbar, seed=seed)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 1444, in sample
        return sample(self.model, noise, positive, negative, cfg, self.device, sampler, sigmas, self.model_options, latent_image=latent_image, denoise_mask=denoise_mask, callback=callback, disable_pbar=disable_pbar, seed=seed)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 1334, in sample
        return cfg_guider.sample(noise, latent_image, sampler, sigmas, denoise_mask, callback, disable_pbar, seed)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 1316, in sample
        output = executor.execute(noise, latent_image, sampler, sigmas, denoise_mask, callback, disable_pbar, seed, latent_shapes=latent_shapes)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\patcher_extension.py", line 113, in execute
        return self.original(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 1254, in outer_sample
        output = self.inner_sample(noise, latent_image, device, sampler, sigmas, denoise_mask, callback, disable_pbar, seed, latent_shapes=latent_shapes)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 1229, in inner_sample
        samples = executor.execute(self, sigmas, extra_args, callback, noise, latent_image, denoise_mask, disable_pbar)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\patcher_extension.py", line 113, in execute
        return self.original(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 999, in sample
        samples = self.sampler_function(model_k, noise, sigmas, extra_args=extra_args, callback=k_callback, disable=disable_pbar, **self.extra_options)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\python_embeded\Lib\site-packages\torch\utils\_contextlib.py", line 124, in decorate_context
        return func(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\k_diffusion\sampling.py", line 205, in sample_euler
        denoised = model(x, sigma_hat * s_in, **extra_args)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 639, in __call__
        out = self.inner_model(x, sigma, model_options=model_options, seed=seed)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 1202, in __call__
        return self.outer_predict_noise(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 1209, in outer_predict_noise
        ).execute(x, timestep, model_options, seed)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\patcher_extension.py", line 113, in execute
        return self.original(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 1212, in predict_noise
        return sampling_function(self.inner_model, x, timestep, self.conds.get("negative", None), self.conds.get("positive", None), self.cfg, model_options=model_options, seed=seed)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 619, in sampling_function
        out = calc_cond_batch(model, conds, x, timestep, model_options)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 210, in calc_cond_batch
        return _calc_cond_batch_outer(model, conds, x_in, timestep, model_options)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 218, in _calc_cond_batch_outer
        return executor.execute(model, conds, x_in, timestep, model_options)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\patcher_extension.py", line 113, in execute
        return self.original(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 334, in _calc_cond_batch
        output = model.apply_model(input_x, timestep_, **c).chunk(batch_chunks)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\model_base.py", line 191, in apply_model
        return comfy.patcher_extension.WrapperExecutor.new_class_executor(
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\patcher_extension.py", line 113, in execute
        return self.original(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\model_base.py", line 235, in _apply_model
        model_output = self.diffusion_model(xc, t, context=context, control=control, transformer_options=transformer_options, **extra_conds)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\python_embeded\Lib\site-packages\torch\nn\modules\module.py", line 1778, in _wrapped_call_impl
        return self._call_impl(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\python_embeded\Lib\site-packages\torch\nn\modules\module.py", line 1789, in _call_impl
        return forward_call(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\ldm\krea2\model.py", line 225, in forward
        return comfy.patcher_extension.WrapperExecutor.new_class_executor(
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\patcher_extension.py", line 113, in execute
        return self.original(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\ldm\krea2\model.py", line 244, in _forward
        context = self._unpack_context(context)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\ldm\krea2\model.py", line 285, in _unpack_context
        raise ValueError(
    ValueError: Krea2 expects conditioning with 12x2560=30720 features (a 12-layer Qwen3-VL stack) but got 2560. Load the text encoder with CLIPLoader type 'krea2'.
    

    [INFO] Prompt executed in 131.78 seconds

  8. makisekurisu-jp commented on Jun 25, 2026

    @makisekurisu-jp
    Author

    My gguf nodes are a forked version of these for krea-2, if anyone knows how to merge my loaders py into the normal gguf repo then we could all already have it. I coded it in last night. Its on my repo but i dont know how to use github at all to merge it myself. This site is like a foreign language for some reason to me

    Do you also get the following warning when running your quantized GGUF model? [WARNING] unet unexpected: ['last.down.weight', 'last.up.weight'] I encountered the same warning when using a model quantized with vantagewithai. You can only open a PR; merging into the main branch requires access to the city96 repository. You’ll need to fork his repository and maintain your own fork.

    The last.down.weight issue warning is just kreas layering format forcing a layer that comfy doesnt accept so it bypasses them essentially

    any idea why i go clip warning ? are wrong quant or model for clip ? or my comfyui need update cause already update and even disable city96 and calcius node.

    Image ``` [INFO] gguf qtypes: F32 (167), F16 (1), Q5_K (63), Q2_K (201) [INFO] model weight dtype torch.bfloat16, manual cast: torch.float32 [INFO] model_type FLUX [WARNING] unet unexpected: ['last.down.weight', 'last.up.weight'] [INFO] Requested to load Krea2 FETCH ComfyRegistry Data: 145/156 FETCH ComfyRegistry Data: 150/156 FETCH ComfyRegistry Data: 155/156 FETCH ComfyRegistry Data [DONE] [INFO] [ComfyUI-Manager] default cache updated: https://api.comfy.org/nodes FETCH DATA from: https://raw.githubusercontent.com/ltdrdata/ComfyUI-Manager/main/custom-node-list.json [DONE] [INFO] [ComfyUI-Manager] All startup tasks have been completed.

    [INFO] loaded partially; 1976.12 MB usable, 1755.61 MB loaded, 3284.59 MB offloaded, 220.50 MB buffer reserved, lowvram patches: 0
    0%| | 0/4 [00:00<?, ?it/s, Model Initializing ... ]
    [ERROR] !!! Exception during processing !!! Krea2 expects conditioning with 12x2560=30720 features (a 12-layer Qwen3-VL stack) but got 2560. Load the text encoder with CLIPLoader type 'krea2'.
    [ERROR] Traceback (most recent call last):
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\execution.py", line 542, in execute
    output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\execution.py", line 341, in get_output_data
    return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\execution.py", line 315, in _async_map_node_over_list
    await process_inputs(input_dict, i)
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\execution.py", line 303, in process_inputs
    result = f(**inputs)
    ^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\nodes.py", line 1584, in sample
    return common_ksampler(model, seed, steps, cfg, sampler_name, scheduler, positive, negative, latent_image, denoise=denoise)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\nodes.py", line 1548, in common_ksampler
    samples = comfy.sample.sample(model, noise, steps, cfg, sampler_name, scheduler, positive, negative, latent_image,
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\sample.py", line 74, in sample
    samples = sampler.sample(noise, positive, negative, cfg=cfg, latent_image=latent_image, start_step=start_step, last_step=last_step, force_full_denoise=force_full_denoise, denoise_mask=noise_mask, sigmas=sigmas, callback=callback, disable_pbar=disable_pbar, seed=seed)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 1444, in sample
    return sample(self.model, noise, positive, negative, cfg, self.device, sampler, sigmas, self.model_options, latent_image=latent_image, denoise_mask=denoise_mask, callback=callback, disable_pbar=disable_pbar, seed=seed)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 1334, in sample
    return cfg_guider.sample(noise, latent_image, sampler, sigmas, denoise_mask, callback, disable_pbar, seed)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 1316, in sample
    output = executor.execute(noise, latent_image, sampler, sigmas, denoise_mask, callback, disable_pbar, seed, latent_shapes=latent_shapes)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\patcher_extension.py", line 113, in execute
    return self.original(*args, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 1254, in outer_sample
    output = self.inner_sample(noise, latent_image, device, sampler, sigmas, denoise_mask, callback, disable_pbar, seed, latent_shapes=latent_shapes)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 1229, in inner_sample
    samples = executor.execute(self, sigmas, extra_args, callback, noise, latent_image, denoise_mask, disable_pbar)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\patcher_extension.py", line 113, in execute
    return self.original(*args, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 999, in sample
    samples = self.sampler_function(model_k, noise, sigmas, extra_args=extra_args, callback=k_callback, disable=disable_pbar, **self.extra_options)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\python_embeded\Lib\site-packages\torch\utils_contextlib.py", line 124, in decorate_context
    return func(*args, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\k_diffusion\sampling.py", line 205, in sample_euler
    denoised = model(x, sigma_hat * s_in, **extra_args)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 639, in call
    out = self.inner_model(x, sigma, model_options=model_options, seed=seed)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 1202, in call
    return self.outer_predict_noise(*args, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 1209, in outer_predict_noise
    ).execute(x, timestep, model_options, seed)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\patcher_extension.py", line 113, in execute
    return self.original(*args, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 1212, in predict_noise
    return sampling_function(self.inner_model, x, timestep, self.conds.get("negative", None), self.conds.get("positive", None), self.cfg, model_options=model_options, seed=seed)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 619, in sampling_function
    out = calc_cond_batch(model, conds, x, timestep, model_options)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 210, in calc_cond_batch
    return _calc_cond_batch_outer(model, conds, x_in, timestep, model_options)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 218, in _calc_cond_batch_outer
    return executor.execute(model, conds, x_in, timestep, model_options)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\patcher_extension.py", line 113, in execute
    return self.original(*args, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 334, in calc_cond_batch
    output = model.apply_model(input_x, timestep
    , **c).chunk(batch_chunks)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\model_base.py", line 191, in apply_model
    return comfy.patcher_extension.WrapperExecutor.new_class_executor(
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\patcher_extension.py", line 113, in execute
    return self.original(*args, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\model_base.py", line 235, in _apply_model
    model_output = self.diffusion_model(xc, t, context=context, control=control, transformer_options=transformer_options, **extra_conds)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\python_embeded\Lib\site-packages\torch\nn\modules\module.py", line 1778, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\python_embeded\Lib\site-packages\torch\nn\modules\module.py", line 1789, in _call_impl
    return forward_call(*args, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\ldm\krea2\model.py", line 225, in forward
    return comfy.patcher_extension.WrapperExecutor.new_class_executor(
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\patcher_extension.py", line 113, in execute
    return self.original(*args, **kwargs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\ldm\krea2\model.py", line 244, in _forward
    context = self._unpack_context(context)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\comfui\ComfyUI_windows_portable\ComfyUI\comfy\ldm\krea2\model.py", line 285, in _unpack_context
    raise ValueError(
    ValueError: Krea2 expects conditioning with 12x2560=30720 features (a 12-layer Qwen3-VL stack) but got 2560. Load the text encoder with CLIPLoader type 'krea2'.

    
    [INFO] Prompt executed in 131.78 seconds
    

    Use that guy’s branch above. @m8rr

    git clone -b Dynamic-VRAM https://github.com/m8rr/ComfyUI-GGUF
    
  9. makisekurisu-jp commented on Jun 25, 2026

    @makisekurisu-jp
    Author

    #463 (comment) https://github.com/m8rr/ComfyUI-GGUF/tree/Dynamic-VRAM

    @RealRebelAI Your GGUF works fine in my environment, though I'm not sure if the calculations are correct. The GGUF from the link provided by @makisekurisu-jp throws a [WARNING] unet unexpected: ['last.down.weight', 'last.up.weight'], but it does work.

    And ComfyUI's official BF16 doesn't have ['last.down.weight', 'last.up.weight'], so it seems safe to ignore.

    ideogram4, boogu, krea2 / UNet and TE both function properly using GGUF. While Gemma-4 E2B appears to have some problems, it operates well in my specific environment, including vision recognition.

    When I switch to using the GGUF model provided by @RealRebelAI, I don’t get the warning:
    [WARNING] unet unexpected: ['last.down.weight', 'last.up.weight']
    https://huggingface.co/realrebelai/KREA-2_GGUFs

    [INFO] got prompt
    [INFO] Model Krea2TEModel_ prepared for dynamic VRAM loading. 5619MB Staged. 0 patches attached. Force pre-loaded 243 weights: 1158 KB.
    [INFO] gguf qtypes: Q8_0 (263), F32 (166), F16 (1)
    [INFO] model weight dtype torch.float16, manual cast: None
    [INFO] model_type FLUX
    [INFO] Requested to load Krea2
    [INFO] Model Krea2 prepared for dynamic VRAM loading. 12989MB Staged. 0 patches attached. Force pre-loaded 160 weights: 2824 KB.
    [INFO] 0 models unloaded.
    [INFO] Model WanVAE prepared for dynamic VRAM loading. 241MB Staged. 0 patches attached. Force pre-loaded 60 weights: 61 KB.
    [INFO] Prompt executed in 94.13 seconds
    
  10. GlamoramaAttack commented on Jun 25, 2026

    @GlamoramaAttack

    Use that guy’s branch above. @m8rr
    git clone -b Dynamic-VRAM https://github.com/m8rr/ComfyUI-GGUF

    That fork was last updated 5 months ago. How is that supposed to work with Krea2? And why is there a "Dynamic-VRAM" in the clone command?

  11. makisekurisu-jp commented on Jun 25, 2026

    @makisekurisu-jp
    Author

    Use that guy’s branch above. @m8rr
    git clone -b Dynamic-VRAM https://github.com/m8rr/ComfyUI-GGUF

    That fork was last updated 5 months ago. How is that supposed to work with Krea2? And why is there a "Dynamic-VRAM" in the clone command?

    That command is asking you to clone https://github.com/m8rr/ComfyUI-GGUF/tree/Dynamic-VRAM

    Image
  12. m8rr commented on Jun 25, 2026

    @m8rr

    In my case, ComfyUI's default settings cause the Text Encoder to reset during heavy tasks like LTX, so I use '--cache-ram 0'. Also, I'm using an NVMe drive, and while adding the '--fast-disk' option mysteriously eats up more RAM for some reason, it does make it faster. Just a heads up!

    .\python_embeded\python.exe -s ComfyUI\main.py --windows-standalone-build --fast fp16_accumulation --use-sage-attention --cache-ram 0 --fast-disk
    
    Image
    [INFO] Total VRAM 12282 MB, total RAM 32085 MB
    [INFO] pytorch version: 2.12.1+cu130
    [INFO] Device: cuda:0 NVIDIA GeForce RTX 4070 SUPER : cudaMallocAsync
    
    [INFO] Model Krea2 prepared for dynamic VRAM loading. 6877MB Staged. 0 patches attached. Force pre-loaded 160 weights: 2824 KB.
    100%|████████████████████████████████████████████████████████████████████████████████████| 8/8 [00:10<00:00,  1.31s/it]
    [INFO] Requested to load WanVAE
    [INFO] 0 models unloaded.
    [INFO] Model WanVAE prepared for dynamic VRAM loading. 241MB Staged. 0 patches attached. Force pre-loaded 60 weights: 61 KB.
    [INFO] Prompt executed in 25.49 seconds
    [INFO] Model Krea2 prepared for dynamic VRAM loading. 6877MB Staged. 0 patches attached. Force pre-loaded 160 weights: 2824 KB.
    100%|████████████████████████████████████████████████████████████████████████████████████| 8/8 [00:12<00:00,  1.53s/it]
    [INFO] 0 models unloaded.
    [INFO] Model WanVAE prepared for dynamic VRAM loading. 241MB Staged. 0 patches attached. Force pre-loaded 60 weights: 61 KB.
    [INFO] Prompt executed in 12.72 seconds
    [INFO] Model Krea2 prepared for dynamic VRAM loading. 6877MB Staged. 0 patches attached. Force pre-loaded 160 weights: 2824 KB.
    100%|████████████████████████████████████████████████████████████████████████████████████| 8/8 [00:12<00:00,  1.54s/it]
    [INFO] 0 models unloaded.
    [INFO] Model WanVAE prepared for dynamic VRAM loading. 241MB Staged. 0 patches attached. Force pre-loaded 60 weights: 61 KB.
    [INFO] Prompt executed in 12.82 seconds
    
  13. GlamoramaAttack commented on Jun 25, 2026

    @GlamoramaAttack

    Thanks for the infos, @makisekurisu-jp and @m8rr !

  14. tukangcode commented on Jun 25, 2026

    @tukangcode

    Use that guy’s branch above. @m8rr
    git clone -b Dynamic-VRAM https://github.com/m8rr/ComfyUI-GGUF

    That fork was last updated 5 months ago. How is that supposed to work with Krea2? And why is there a "Dynamic-VRAM" in the clone command?

    That command is asking you to clone https://github.com/m8rr/ComfyUI-GGUF/tree/Dynamic-VRAM

    Image

    Work but got error torchdynamo which solutions is i disabled it detail i share at Reddit stable diffusion
    https://www.reddit.com/r/StableDiffusion/comments/1uf66bv/krea_2_turbo_quant_2_bit_on_750_ti_4gb_and_city96/

  15. m8rr commented on Jun 25, 2026

    @m8rr

    @tukangcode
    It seems like the Torch compile exception handling isn't working as expected. It requires installing triton-windows. Check out this: https://github.com/triton-lang/triton-windows

    You should be able to bypass it either by using your method or by setting "set TORCH_COMPILE_DISABLE=1" in run.bat

    m8rr@1c113ea
    Fixed, I think... so hopefully it works now without having to bypass. Not that it matters for performance, though.

  16. GlamoramaAttack commented on Jun 27, 2026

    @GlamoramaAttack

    Thanks again, I've learned a new command and your GGUF fork, @m8rr, is a big help for me because I don't like the same clip in gguf and safetensors format wasting harddrive space (prefer gguf for ComfyUI and LM Studio).

  17. allanmeng commented on Sep 2, 2026

    @allanmeng
    Root cause found — it's not a missing Krea2 feature, it's a one-line arch gate in `loader.py`.
    
    `qwen3vl` is in `TXT_ARCH_LIST`, but the mmproj branch reads `if arch == "qwen2vl":`, so the
    Qwen3-VL vision tower is never loaded for `qwen3vl` encoders. Without the vision keys,
    `comfy.sd.detect_te_model()` falls back to `QWEN3_4B`, the KREA2 branch
    (`clip_type == KREA2 and te_model == QWEN3VL_4B`) never fires, and you get
    `expects conditioning with 12x2560=30720 features but got 2560`.
    
    Fix (loader.py only): add a Qwen3-VL vision map, remap the GGUF DeepStack layer ids
    (4B: [5,11,17] / 8B-32B: [8,16,24]) to the sequential 0..N-1 that ComfyUI expects, and
    change the gate to `if arch in ("qwen2vl", "qwen3vl")`.
    
    Verified offline against `qwen3vl_4b_fp8_scaled.safetensors` (315/315 keys, cos ≈ 1.000)
    and on hardware (Intel Arc B580, Krea2 sampling 2.85 s/it). PR incoming.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions