@@ -313,17 +313,14 @@ 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
316+ def bundled_embed (embed , prefix , suffix ): #bundled embedding in lora format
317317 i = 0
318318 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 )
319+ for k in embed :
320+ if k .startswith (prefix ) and k .endswith (suffix ):
321+ out_list .append (embed [k ])
322+ if len (out_list ) == 0 :
323+ return None
327324
328325 return torch .cat (out_list , dim = 0 )
329326
@@ -392,13 +389,13 @@ def load_embed(embedding_name, embedding_directory, embedding_size, embed_key=No
392389 embed_out = torch .cat (out_list , dim = 0 )
393390 elif embed_key is not None and embed_key in embed :
394391 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 ))
399392 else :
400- values = embed .values ()
401- embed_out = next (iter (values ))
393+ embed_out = bundled_embed (embed , 'bundle_emb.' , '.string_to_param.*' )
394+ if embed_out is None :
395+ embed_out = bundled_embed (embed , 'bundle_emb.' , '.{}' .format (embed_key ))
396+ if embed_out is None :
397+ values = embed .values ()
398+ embed_out = next (iter (values ))
402399 return embed_out
403400
404401class SDTokenizer :
0 commit comments