fix crashing in saving lora with clipskip

This commit is contained in:
Kohya S
2023-08-08 21:03:16 +09:00
parent 7ea38f90d7
commit 6f80fe17fc
2 changed files with 18 additions and 14 deletions

View File

@@ -194,8 +194,8 @@ def build_metadata(
# comma separated to tuple # comma separated to tuple
if isinstance(reso, str): if isinstance(reso, str):
reso = tuple(map(int, reso.split(","))) reso = tuple(map(int, reso.split(",")))
if len(reso) == 1: if len(reso) == 1:
reso = (reso[0], reso[0]) reso = (reso[0], reso[0])
else: else:
# resolution is defined in dataset, so use default # resolution is defined in dataset, so use default
if sdxl: if sdxl:
@@ -215,7 +215,11 @@ def build_metadata(
metadata["modelspec.prediction_type"] = PRED_TYPE_EPSILON metadata["modelspec.prediction_type"] = PRED_TYPE_EPSILON
if timesteps is not None: if timesteps is not None:
metadata["modelspec.timestep_range"] = timesteps if isinstance(timesteps, str) or isinstance(timesteps, int):
timesteps = (timesteps, timesteps)
if len(timesteps) == 1:
timesteps = (timesteps[0], timesteps[0])
metadata["modelspec.timestep_range"] = f"{timesteps[0]},{timesteps[1]}"
else: else:
del metadata["modelspec.timestep_range"] del metadata["modelspec.timestep_range"]

View File

@@ -2521,7 +2521,7 @@ def get_sai_model_spec(
sdxl: bool, sdxl: bool,
lora: bool, lora: bool,
textual_inversion: bool, textual_inversion: bool,
is_stable_diffusion_ckpt: Optional[bool] = None, # None for TI and LoRA is_stable_diffusion_ckpt: Optional[bool] = None, # None for TI and LoRA
): ):
timestamp = time.time() timestamp = time.time()
@@ -2546,15 +2546,15 @@ def get_sai_model_spec(
lora, lora,
textual_inversion, textual_inversion,
timestamp, timestamp,
title, title=title,
reso, reso=reso,
is_stable_diffusion_ckpt, is_stable_diffusion_ckpt=is_stable_diffusion_ckpt,
args.metadata_author, author=args.metadata_author,
args.metadata_description, description=args.metadata_description,
args.metadata_license, license=args.metadata_license,
args.metadata_tags, tags=args.metadata_tags,
timesteps, timesteps=timesteps,
args.clip_skip, # None or int clip_skip=args.clip_skip, # None or int
) )
return metadata return metadata