LucianoCirino / efficiency-nodes-comfyui

A collection of ComfyUI custom nodes. ⚠️ WARNING: This repo is no longer maintained.
https://civitai.com/models/32342
GNU General Public License v3.0
585 stars 136 forks source link

Node 2.0 ksampler(efficient) NaN errors #213

Open gacela80 opened 9 months ago

gacela80 commented 9 months ago

Old workflows can't load. NaN appears on node configs IMG-20231022-WA0007

dfghsderftgerdf commented 9 months ago

Change the values, also change the values for vae_decode, denoise, scheduler, sampler name, seed, cfg, and steps. I'm getting a different error after this is I select randomize when I use a separate seed node (primitive). I have to restart the entire workflow make sure its selected to fixed and it runs again. It loads with the values in the wrong boxes for some reason.

(It only happens when I change the seed) this is the error I'm receiving: Error occurred when executing KSampler (Efficient):

Input type (torch.cuda.HalfTensor) and weight type (torch.HalfTensor) should be the same

File "D:\ComfyUI_windows_portable\ComfyUI\execution.py", line 153, in recursive_execute output_data, output_ui = get_output_data(obj, input_data_all) File "D:\ComfyUI_windows_portable\ComfyUI\execution.py", line 83, in get_output_data return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True) File "D:\ComfyUI_windows_portable\ComfyUI\execution.py", line 76, in map_node_over_list results.append(getattr(obj, func)(slice_dict(input_data_all, i))) File "D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\efficiency-nodes-comfyui\efficiency_nodes.py", line 700, in sample samples, images, gifs, preview = process_latent_image(model, seed, steps, cfg, sampler_name, scheduler, File "D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\efficiency-nodes-comfyui\efficiency_nodes.py", line 533, in process_latent_image samples = KSampler().sample(model, seed, steps, cfg, sampler_name, scheduler, positive, negative, File "D:\ComfyUI_windows_portable\ComfyUI\nodes.py", line 1237, in sample return common_ksampler(model, seed, steps, cfg, sampler_name, scheduler, positive, negative, latent_image, denoise=denoise) File "D:\ComfyUI_windows_portable\ComfyUI\nodes.py", line 1207, in common_ksampler samples = comfy.sample.sample(model, noise, steps, cfg, sampler_name, scheduler, positive, negative, latent_image, File "D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui-prompt-control\prompt_control\hijack.py", line 35, in pc_sample r = cb(orig_sampler, *args, *kwargs) File "D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui-prompt-control\prompt_control\node_lora.py", line 104, in sampler_cb s = orig_sampler(args, kwargs) File "D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-Impact-Pack\modules\impact\sample_error_enhancer.py", line 22, in informative_sample raise e File "D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-Impact-Pack\modules\impact\sample_error_enhancer.py", line 9, in informative_sample return original_sample(*args, kwargs) File "D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-AnimateDiff-Evolved\animatediff\sampling.py", line 110, in animatediff_sample return orig_comfy_sample(model, *args, *kwargs) File "D:\ComfyUI_windows_portable\ComfyUI\comfy\sample.py", line 97, in sample samples = sampler.sample(noise, positive_copy, negative_copy, 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 "D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui-prompt-control\prompt_control\hijack.py", line 79, in sample return super().sample( File "D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_smZNodes__init__.py", line 131, in KSampler_sample return _KSampler_sample(args, kwargs) File "D:\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 781, 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 "D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_smZNodes__init.py", line 139, in sample return _sample(args, kwargs) File "D:\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 686, in sample samples = sampler.sample(model_wrap, sigmas, extra_args, callback, noise, latent_image, denoise_mask, disable_pbar) File "D:\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 638, in sample samples = getattr(k_diffusionsampling, "sample{}".format(sampler_name))(model_k, noise, sigmas, extra_args=extra_args, callback=k_callback, disable=disable_pbar, extra_options) File "D:\ComfyUI_windows_portable\python_embeded\lib\site-packages\torch\utils_contextlib.py", line 115, in decorate_context return func(args, kwargs) File "D:\ComfyUI_windows_portable\ComfyUI\comfy\k_diffusion\sampling.py", line 580, in sample_dpmpp_2m denoised = model(x, sigmas[i] * s_in, *extra_args) File "D:\ComfyUI_windows_portable\python_embeded\lib\site-packages\torch\nn\modules\module.py", line 1501, in _call_impl return forward_call(args, kwargs) File "D:\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 326, in forward out = self.inner_model(x, sigma, cond=cond, uncond=uncond, cond_scale=cond_scale, model_options=model_options, seed=seed) File "D:\ComfyUI_windows_portable\python_embeded\lib\site-packages\torch\nn\modules\module.py", line 1501, in _call_impl return forward_call(*args, kwargs) File "D:\ComfyUI_windows_portable\ComfyUI\comfy\k_diffusion\external.py", line 129, in forward eps = self.get_eps(input * c_in, self.sigma_to_t(sigma), *kwargs) File "D:\ComfyUI_windows_portable\ComfyUI\comfy\k_diffusion\external.py", line 155, in get_eps return self.inner_model.apply_model(args, kwargs) File "D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_smZNodes\smZNodes.py", line 809, in apply_model out = super().apply_model(args, kwargs) File "D:\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 314, in apply_model out = sampling_function(self.inner_model.apply_model, x, timestep, uncond, cond, cond_scale, model_options=model_options, seed=seed) File "D:\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 292, in sampling_function cond, uncond = calc_cond_uncond_batch(model_function, cond, uncond, x, timestep, max_total_area, model_options) File "D:\ComfyUI_windows_portable\ComfyUI\comfy\samplers.py", line 268, in calc_cond_uncond_batch output = model_function(inputx, timestep, c).chunk(batch_chunks) File "D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_smZNodes\modules\sd_hijack_utils.py", line 17, in setattr(resolved_obj, func_path[-1], lambda args, *kwargs: self(args, **kwargs)) File "D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_smZNodes\modules\sd_hijack_utils.py", line 28, in call return self.orig_func(*args, kwargs) File "D:\ComfyUI_windows_portable\ComfyUI\comfy\model_base.py", line 64, in apply_model return self.diffusion_model(xc, t, context=context, y=c_adm, control=control, transformer_options=transformer_options).float() File "D:\ComfyUI_windows_portable\python_embeded\lib\site-packages\torch\nn\modules\module.py", line 1501, in _call_impl return forward_call(*args, *kwargs) File "D:\ComfyUI_windows_portable\ComfyUI\comfy\ldm\modules\diffusionmodules\openaimodel.py", line 625, in forward h = forward_timestep_embed(module, h, emb, context, transformer_options) File "D:\ComfyUI_windows_portable\ComfyUI\comfy\ldm\modules\diffusionmodules\openaimodel.py", line 54, in forward_timestep_embed x = layer(x, emb) File "D:\ComfyUI_windows_portable\python_embeded\lib\site-packages\torch\nn\modules\module.py", line 1501, in _call_impl return forward_call(args, kwargs) File "D:\ComfyUI_windows_portable\ComfyUI\comfy\ldm\modules\diffusionmodules\openaimodel.py", line 219, in forward return checkpoint( File "D:\ComfyUI_windows_portable\ComfyUI\comfy\ldm\modules\diffusionmodules\util.py", line 123, in checkpoint return func(inputs) File "D:\ComfyUI_windows_portable\ComfyUI\comfy\ldm\modules\diffusionmodules\openaimodel.py", line 232, in _forward h = self.in_layers(x) File "D:\ComfyUI_windows_portable\python_embeded\lib\site-packages\torch\nn\modules\module.py", line 1501, in _call_impl return forward_call(args, *kwargs) File "D:\ComfyUI_windows_portable\python_embeded\lib\site-packages\torch\nn\modules\container.py", line 217, in forward input = module(input) File "D:\ComfyUI_windows_portable\python_embeded\lib\site-packages\torch\nn\modules\module.py", line 1501, in _call_impl return forward_call(args, **kwargs) File "D:\ComfyUI_windows_portable\python_embeded\lib\site-packages\torch\nn\modules\conv.py", line 463, in forward return self._conv_forward(input, self.weight, self.bias) File "D:\ComfyUI_windows_portable\python_embeded\lib\site-packages\torch\nn\modules\conv.py", line 459, in _conv_forward return F.conv2d(input, weight, bias, self.stride,

Close

le-khang commented 9 months ago

I got errors too. I can't even load old workflows which has Ksampler (Efficient). It becomes one big mess like this. (ComfyUI & all nodes are updated) And when I load new Ksample Efficient in a new workflow it's pretty slow (10x slower than normal Ksampler)

2023-10-23 18_02_10-ComfyUI

gacela80 commented 9 months ago

Yes changing the values again fixes the workflow but the whole idea of the workflow is to have same values as before. As a workaround I installed image info node so I can read the old values of the workflow image and then put them in ksampler again.