|
import comfy.sample |
|
import traceback |
|
|
|
original_sample = comfy.sample.sample |
|
|
|
|
|
def informative_sample(*args, **kwargs): |
|
try: |
|
return original_sample(*args, **kwargs) |
|
except RuntimeError as e: |
|
is_model_mix_issue = False |
|
try: |
|
if 'mat1 and mat2 shapes cannot be multiplied' in e.args[0]: |
|
if 'torch.nn.functional.linear' in traceback.format_exc().strip().split('\n')[-3]: |
|
is_model_mix_issue = True |
|
except: |
|
pass |
|
|
|
if is_model_mix_issue: |
|
raise RuntimeError("\n\n#### It seems that models and clips are mixed and interconnected between SDXL Base, SDXL Refiner, SD1.x, and SD2.x. Please verify. ####\n\n") |
|
else: |
|
raise e |
|
|
|
|
|
comfy.sample.sample = informative_sample |
|
|