Skip to content

Commit 1c08bf3

Browse files
Support format for embeddings bundled in loras.
1 parent 2a02546 commit 1c08bf3

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

comfy/sd1_clip.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -313,6 +313,20 @@ def expand_directory_list(directories):
313313
dirs.add(root)
314314
return list(dirs)
315315

316+
def bundled_embed(embed, key): #bundled embedding in lora format
317+
i = 0
318+
out_list = []
319+
while True:
320+
i += 1
321+
k = key.format(i)
322+
w = embed.get(k, None)
323+
if w is None:
324+
break
325+
else:
326+
out_list.append(w)
327+
328+
return torch.cat(out_list, dim=0)
329+
316330
def load_embed(embedding_name, embedding_directory, embedding_size, embed_key=None):
317331
if isinstance(embedding_directory, str):
318332
embedding_directory = [embedding_directory]
@@ -378,6 +392,10 @@ def load_embed(embedding_name, embedding_directory, embedding_size, embed_key=No
378392
embed_out = torch.cat(out_list, dim=0)
379393
elif embed_key is not None and embed_key in embed:
380394
embed_out = embed[embed_key]
395+
elif 'bundle_emb.place1.string_to_param.*' in embed:
396+
embed_out = bundled_embed(embed, 'bundle_emb.place{}.string_to_param.*')
397+
elif 'bundle_emb.place1.{}'.format(embed_key) in embed:
398+
embed_out = bundled_embed(embed, 'bundle_emb.place{}.{}'.format('{}', embed_key))
381399
else:
382400
values = embed.values()
383401
embed_out = next(iter(values))

0 commit comments

Comments
 (0)