Update sd1_clip.py (#3684)

Made token instance check more flexible so it also works with integers from numpy arrays or long tensors
This commit is contained in:
Mario Klingemann 2024-06-19 22:42:41 +02:00 committed by GitHub
parent e11052afcf
commit eee815ec99
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -9,6 +9,7 @@ from . import model_management
import comfy.clip_model
import json
import logging
import numbers
def gen_empty_tokens(special_tokens, length):
start_token = special_tokens.get("start", None)
@ -130,10 +131,10 @@ class SDClipModel(torch.nn.Module, ClipTokenWeightEncoder):
for x in tokens:
tokens_temp = []
for y in x:
if isinstance(y, int):
if isinstance(y, numbers.Integral):
if y == token_dict_size: #EOS token
y = -1
tokens_temp += [y]
tokens_temp += [int(y)]
else:
if y.shape[0] == current_embeds.weight.shape[1]:
embedding_weights += [y]